“There's some hypothetical money to claim from somebody, somewhere” is not a good funding model. At best, you'll get a dozen additional issues sorted in a large project.
I wouldn't be confident that funding is the solution here. This is about adding a feature to a project that seems to be completely disinterested in that feature, some recent answers from project developers in the gitlab issue are even hostile to it. Likely to be not something money can fix, this goes directly into the deep rooted problems GNOME has with usability.
The complaint is legit. But making a page about your pet issue to create emotional response and cause rants about gnome on social media? That's annoying.
Here's a better structure for the post "This is an issue that really impacts me and I care a lot about. See existing bug / discussion links. I can't solve it myself, but it's important enough that I'm willing to put up bounty for that work." I don't think anyone would complain about it.
If people are going to make crappy half-baked software that doesn't work, they need to be upfront about it so people stop expecting it to do its job. If they're not going to do this, people are right to expect a basic level of quality and to complain when they don't get it.
It also doesn't help that theres an utter legion of Linux users who deny that the ecosystem has any deficiencies at all compared to windows and macOS. It's so misleading.
No it's not users, it's open source developers are guilty themselves. There is no need to have dozens of Linux distros, multiple packages, few desktop environments (with apps like email clients, music players, etc. created for each environment). Windows doesn't have multiple desktop environments to choose, Microsoft isn't developing multiple email clients and so on. The amount of wasted time (creating multiple solutions for one problem) in Linux world is staggering.
You're not even comparing apples to oranges here but apples to nuts. And as a linux user I can confirm that situation is indeed nuts, but the apple that MS is offering you is poisonous but you don't even seem to know it.
Death by a thousand small inefficiencies, quirks and bugs...
It's such a shame, because fixing most of these small bugs is far less work than building new features. Nobody wants to put the work in though... Nobody has the overarching vision of a consistent UX that just works out of the box without oddities, quirks and workarounds.
> Death by a thousand small inefficiencies, quirks and bugs...
I agree, this is the problem. GUI OS developers like to work on big features and eye candy but forget to fix the basics. I have yet to find a Window system that:
1. Works without glitches in HiDPI setups. Especially mouse pointer glitches.
2. Comes out of the box with fonts that don't feel like thorns in the eyes, including the browser.
Part of the reason no one wants to put in the work is because all it takes is a technical dictator to say "I don't like this approach, let's rethink this", and scuttle your weeks of work. Even if you got a sign-off on the approach earlier. This has happened enough times to me in open source projects that I only submit code to projects that I know have reasonable maintainers that I've interacted with in the past.
Developers frequently hate it when "product people" get a say in the direction of the product, but the alternative is commonly to have developers prioritize perceived code purity over actual user interests. And emphasis on "perceived", because usually the codebase is a hot mess but maintainers want it to be their hot mess, not someone else's.
Oh but people did put in the work[0]. The problem is that gnome maintainers are hostile towards anyone from outside their little bubble wanting to get in some patches.
Tools and features have ergonomics and affordances that suggest a certain way of using them, and desktop filling just seems to encourage people to make a massive mess. Even when I was a Windows user, desktop icons were the first thing to go. Not having quick access to a dumping ground meant that I had to go out of my way to make a mess.
As for a lack of system tray icons, the practical upshot is that my system bar isn't littered with multiple special snowflake applications, each with their own unique icon art style and mismatching proportions.
> As for a lack of system tray icons, the practical upshot is that my system bar isn't littered with multiple special snowflake applications, each with their own unique icon art style and mismatching proportions.
Plasma Desktop's System Tray widget that lets you hide icons you don't want to see. You can disable the widget, or configure it to show no icons at all.
The problem with that is, that applications will assume it is present and enabled. If it is not, they will inflict a pain on the user until it is enabled again. For example Skype.
With default being off, it is applications that have to be careful. They can use it, when they detect it is present, but cannot assume it anymore.
You can make the System Tray show no icons unless it is invoked to deal with applications that behave poorly.
System trays exist on most platforms, and apps, especially cross-platform apps, will sometimes assume that they exist. I prefer to use a system that can handle those apps.
It was a crutch when windows 95 introduced it, and it is still a crutch today.
I prefer when applications do not assume that it is available at all; if they do, they are broken. Applications, that force themselves on the user upon startup, then sit in the systray and are resisting the user that is trying to close them are outright black UI pattern.
LastPass is especially horrible at this. I have it configured _not_ to start with windows because I don't want it running in the background. Whenever I need to open it, I launch it, copy the password to the clipboard and paste it into whatever program, and click the X or hit alt-f4 to close it. Unfortunately, it does not close. It minimizes itself to the system tray, and gives me a helpful notification to let me know that my attempt to close it has failed. In order to close it, I must right click the tray icon, at which point the icon moves to hide itself in the hidden tray icons due to a bug in either LastPass or more likely in Windows itself. So now I have to click the overflow menu on the tray and right-click the icon again to close it. Finally LastPass is closed.
Now, due to another bug in Windows, the overflow menu has remained open and must be manually closed. The third bug here is when I alt-tab out of LastPass, it doesn't take me back to the most recent application; instead it dumps me on the desktop or some other program at random (why is the desktop even there in the alt-tab menu?)
This is exactly what I'm talking about. Applications abuse the systray to force themselves on the user and that is a bad thing, that should not be supported or apologized for.
I'm not against apps running in background, just that monolithic implementation with systray is the wrong approach. Android has shown a good model: background service that cannot talk to UI, but can send notifications or communicate with separate UI app. With this model, user has control over what is running in background or what started on login time by system (not app-specific!)-provided tools, like systemd user units under Linux or LaunchAgents under macOS. When the user wants something off, it will be turned off in one place, with no ors or buts or other black patterns that prevent user turning the application off.
If you're using Ubuntu then they include an extension to bring them back. In older versions of Gnome 3 there used to be a pop-out panel in the bottom left for legacy system tray icons.
This brings up a great point about GNOME. GNOME appears to try to emulate macOS at times, but tends to try to oversimplify and paradoxically be quite user-unfriendly.
GNOME has an obsession with a "distraction-free" interface that really takes keyboard shortcuts to navigate efficiently. For example, despite the popularity of the dash-to-dock extension, the GNOME developers stubbornly refuse to make the dock built-in. So with the default setup, mouse users (like many in my family) need two large cursor movements (flick to the left corner, then slide down to the dock) every time they need to switch between applications[1].
In fact, at least one core developer has even floated the possibility of removing the dock and its list of currently running apps altogether.
[1] No, the window previews aren't really useful because their positions are non-deterministic and it's hard to rapidly distinguish mostly white, unlabeled windows anyway.
Interestingly, Thunar has had a similar pet peeve: it could not remember per-directory view settings (e.g. sorting order). This was finally fixed a couple months ago, 13 years after the original bug was filed (#3521).
And without reading the bug, the issue with adding thumbnail support to that one is probably because thumbnails need to be cached to be fast, and it would be odd for a filepicker to be creating its own cache files (since it can't make any assumptions about the system it runs on).
It's not that. Firstly there is a standard for where to cache thumbnails at least on Linux, and secondly the file picker already generates (or at least displays) thumbnails. It's shown in the article. It's just that GTK has no suitable widget for showing them properly.
Thunar is great, however it does no good here. Your various programs like GIMP will always use the Gnome/GTK file picker because that's what they've been programmed to do. Or, if not based on GTK they will use whatever other file picker their toolkit provided.
Thunar is to Dolphin what a slingshot is to an M16. I never understood how people settle for such barebones file managers (i.e., less featureful than Windows Explorer).
> Your various programs like GIMP will always use the Gnome/GTK file picker because that's what they've been programmed to do. Or, if not based on GTK they will use whatever other file picker their toolkit provided.
Well, not really. Anymore.
Recently (give or take few years), toolkits and applications started to use desktop portal - mainly as a preparation for sandboxing (i.e. putting the app inside flatpak & co). The application, optionally inside sandbox, doesn't use the framework's common dialog - because that would not give it access to files outside sandbox - but talks to the desktop provided one via dbus.
That desktop provided one does not have to be implemented by the framework that the application uses. It is implemented by the DE that the user chooses.
Omg, this is insane, I now realize I automatically memorize the first 3 and last 3 parts of filenames I need in the picker... For screenshots I read the date very carefully and fear the day I upload a wrong one. I was going to the toilet with a plunger, not even realizing it.
Btw, if you work on MacOS (which has been a while for me now), you get very used to hitting space everywhere to get previews. What a feature!
No, not at all. The article is about this precise problem: the file picker in Gnome does not show a preview of the selected file.
It’s truly absurd.
Edit: Folks, instead of downvoting, how about pointing out that I apparently have an additional bug going on in my desktop setup? This is exactly the problem with Gnome.
I believe the article is about showing all the files as thumbnails at once, so you can select the file more quickly. The article shows once you've selected a file it shows a preview of it to the right.
Hm, I definitely don’t have _any_ previews in the GTK filepicker. I specifically had to open the Files application just this week so I could identify which screenshot I wanted to upload in Firefox.
I guess I have a different bug happening _in addition_ to what the article is talking about. Lovely.
No, the issue is that an application needs to implement the preview widget and add it to the GTK file picker, hence this work needs to be duplicated by every application and of course most applications don't do that. But if the application adds a preview widget it should work regardless of which view mode is active.
Edit: Also the new GTK API for file pickers to work better with sandboxing and platform integration, lacks the ability to add preview widgets altogether.
I have zero thumbnails/previews in some of the GTK filepicker instances, but not others. Signal Desktop shows previews in a pane to the right. Thunderbird shows no previews at all.
> First of all, how do developers so casually ignore this issue? Second of all, how do users so casually ignore this issue?
Because it’s not important enough to them to force a fix. Hard to believe, in this day and age, but some developers have other priorities, especially when working with free software.
I question if this is actually a bug. It seems to be working as intended, just not the way the author wants. Seems like the quickest solution would be for the author to either take on the job themself, or absent the time or expertise, pay someone else to do it.
In this time and age, do we really need "desktops"? If you only need a full-screen terminal and a full-screen browser (as is the case for many people), the whole desktop thing is unnecessary clutter.
A desktop for most people is a crutch (plunger) for their disorganized computer (clogged toilet). I think the suggestion that desktops aren't necessary is a good one.
Several years ago, I started turning desktop icons off (both GNOME and Windows make this easy) and it really helped my organization, as I was then forced to competently organize files into Downloads, Documents, Pictures, Videos directories instead of vomiting everything onto the desktop. Simply _knowing_ where files are located is faster than scanning a cluttered desktop.
As a bonus I don't ever have to worry about the positions of my desktop icons changing.
You will find lots of such examples of a feature which you personally find very important and wonder why such a simple thing is not supported yet. I guess everyone has such examples. And you will also find such examples for MacOSX or Windows.
Anyway, I guess there are actually not too much people caring about this feature. And the intersection of those who do and those who have enough free time and knowledge to implement this is just empty.
Btw, I don't quite understand the comment about KDE. It sounds like the the author claims that KDE lacks other relevant features. But comparing Gnome vs KDE, it is quite clear that KDE has much more features. This is never a complaint I heard about KDE.
Yes, and Gnome is in part responsible for a lot of "desktop" issues with linux. Distros must switch to KDE by default to help eliminate part of this stigma. KDE is so amazingly good that there is no excuse to keep using Gnome.
In the early-2000s like many other people I was attracted to the Crystal[1] theme/icon pack, but it did not take long for it to start looking tacky to me. I feel like KDE never really abandoned this kind of look-and-feel until Plasma was released, which is very clean and pleasant. It has discarded cartoon-ish icons and has sharper lines and colours which are nicer to look at. I am a big fan!
Did you try it recently? That was also the stigma of KDE 4.x. 5 is snappy and bloated is probably the wrong word to featureful. I just can't stand gnome exactly due to the opposite: bare bones, missing features, lack of integration and mainly lack of standardized ux.
that might be subjectively correct to a lot of people, but I find that they are usually set to sane defaults and a lot is disabled by default. Also, I would like to emphasis that the choice of disto kinda matters here as they sometimes change defaults.
I think this may have been true in the past, but KDE 5 is nowhere near as bloated as KDE once was. (And they've also made huge strides in consistency and a sane UI experience.)
I've tested comparing Gnome/KDE on old hardware (eg, 2 GB of RAM and CPUs built for power conservation), and subjectively I found KDE to be a lot snappier (Gnome Shell always choked for me when hitting Activities) and, after a few hours of uptime, found it used less memory than Gnome. On the same box, it even gave Xfce a run for its money, which was surprising.
Although, when it comes to peddling Linux to other people, I'm hesistant to install KDE for anyone because it's a bit too configurable. I'm always afraid of getting asked for help because of someone accidentally messed up their UI and losing their taskbar or something like that. KDE's came a long way in recent years, but that "you can configure everything" core will always probably be there. And on the flip-side, if I install Gnome, people often find it outlandish and barebones...
If you use it with every basic extension, like Kubuntu's default setup, then it's really bloated (Akonadi and MySQL is a dependency for KMail), but thankfully it's highly modular and enough fast for my taste.
I’ve not used Kubuntu in years but there was a time when it was consistently running 50% slower than every other KDE orientated distro (and some distros that were DE agnostic too).
I think Kubuntu did more harm than good for people’s perception of KDE.
That was my opinion as well until about 4 month ago when I actually seriously tried an up to date KDE for the first time in years. Turns out I was completely wrong.
> KDE is so amazingly good that there is no excuse to keep using Gnome.
I have nothing against KDE, but come on. Many of us really do prefer GNOME despite its perceived deficiencies. This is just a matter of personal preference.
I'll never understand this. It's like people who swear by xfce. Both are borderline unusable to me, but gnome certainly isn't in that category, despite its bugs.
Didn't mean to pick on xfce, I haven't used it in a couple years to be fair. But when I did, it just didn't fit my workflow that well. For example, I'm used to pressing command+space and getting system-wide search for all files and apps. This is basically the default behavior on gnome, I just needed to remap the shortcut. I also often move desktops and the "activities" view makes that really simple.
That page looks kinda out dated, and "contains some ideas how to improve the Plasma notification system". So a lot of that is mocks and not real screenshots.
"This page assumes the status quo as of Plasma 5.7". Plasma is now on version 5.20 so the page you linked has some pretty old examples. The KDE folks are working pretty diligently to clean stuff like this up as they find it. Nate Graham's weekly blog documents this and other updates to the project.
Small half-joke: Only two words into the front page post I already hit a UX issue! (and a UI inconsistency)
> This week (KWin’s compositing code was almost totally rewritten...)
I then instinctively went on to the top of the article to check on the date, to get an idea of when was "this week" for the author... but there is no date. Oh, well :-)
Opening the post itself (instead of reading from the main page) does indeed change the UI and it now happens to show the date.
Loved the irony...
This all shows that even for people dedicated to it, getting UI/UX right is hard.
KDE, to me, looks like someone designed it to be a touch interface.
Everything is so LARGE and padding between elements is YUGE. The tech is cool and everything seems to work fine, but something about the UI just grates me.
Also, KDE is the most customizable DE of them all, and it has the most powerful features of them all (by far). Given that, all these "but it looks kinda bad!" comments sound insane. It's like choosing a push mower over a motorized because you like the finish on the handle.
>KDE is so amazingly good that there is no excuse to keep using Gnome.
IMO, one aspect where Gnome excels is its tight integration of alternative input methods. I remember it being controversial that Gnome blessed ibus over alternative engines, but as a result, setting up CJK input is simple and foolproof. Although I prefer KDE in every other way, I have never managed to get ibus working correctly in that environment.
CJK input magically working easily and reliably in Gnome is the pretty much the only reason I use it over KDE. And setting it up doesn't require following a wiki, using the commandline and/or having to edit obscure config files or messing around with weird GUI settings apps.
I have nothing against KDE by any means (I love it, and also really appreciate their initatives like KDEnlive, etc.), but I don't think I've ever gotten Japanese/Chinese input to work in it before. Maybe once, but then I gave up on finding a sane way to easily cycle between the different input types (eg, WinKey+Space).
I think that's very much personal preference. I tried KDE a few months ago and I couldn't stick with it; it is slower than Gnome in a lot of ways, it's (to my eyes) much more cluttered, and has lags at annoying places. For example, I tend to hit the windows key and start typing to launch things, but under KDE there's enough lag before the menu opens that it doesn't catch my first few keypresses.
This. I get periodically frustrated with Gnome and give KDE a go and always end up going back to Gnome within a couple of weeks. I want to like it, I want it to work but Gnome (on my setup) is more responsive and that is more important than all of the other deficiencies of Gnome.
I'm on a 3 year old laptop, and I tried several times to get a keystroke to be dropped after I hit the windows key and I couldn't get it to happen.
I use windows-key and start typing to launch things all the time, and after reading your comment at first I thought I might have developed a habit to pause, but nope. I wonder what the difference is.
My biggest KDE gripe is that popups from the system-tray disappear if you move the cursor outside of them. Maybe pro gamers can manage to keep the cursor in every time, but for me I often take 2 or 3 tries to click on something.
> My biggest KDE gripe is that popups from the system-tray disappear if you move the cursor outside of them.
This looks like a bug or you changed the default setting, just to be sure in System Setting -> Window Management -> Window Behavior -> is the Window Activation Policy set to click to focus?
Ohhhhh. Of course I changed it to focus follows mouse because that's the One True Way(tm) of managing window focus. So I'm guessing that when the popup loses focus, it disappears. Thanks for solving that mystery. I'll ponder whether it's worth it to make the disappearing have a lag, conditional on the window activation policy.
Stay tuned - it seems KDE's home menu will get a major overhaul.
"This week Plasma also saw a new Kickoff menu that is a complete rewrite, which is also coming with Plasma 5.21. There have also been many bug fixes, performance improvements, and other ongoing UI refinements."
I was happy KDE user for very long time - first 3.x, then 4 (even with all those glitches and bugs at the very beginning). Then I had 7-8 years break off Linux and last year decided to install it on my new desktop machine.
Went with Plasma first - did not go well. I simply cannot get comfortable with it and general look and feel is not working for me (I prefer defaults and I avoid much tweaking and any 3rd party customization). I settled on Cinnamon, but it was close tie with GNOME which was actually quite refreshing experience for me.
So, to each his own, but I just do not see KDE as "the sanest" default.
I've never understood why so many distros make gnome the default DE. There are much better and friendly ones, some of them forks and some written from scratch.
I love Linux desktop but miss these creature comforts too. For me, my biggest input issue is the lack of customisation around trackpad deadzones, i.e. the 15% or so deadzone on the left and right of the trackpad. My trackpad is exactly in the center of my laptop but my palm is usually offset slightly to the left. This means my first interaction with the trackpad often happens in this deadzone area on the left-hand side of the trackpad, so no input gets registered until I lift my finger and "enter" it more towards the center.
There are a huge variety of laptops with different size trackpads, different positions, varying levels of palm rejection etc but there's zero customisability around this seemingly simple behaviour.
My Windows dualboot has no such issue and macOS of course (using a MacBook) works fantastically without this limitations.
Thanks for the links, particularly the second one. It looks like something I may have experimented with before but I'll try again. It could be that my touchpad does not support ABS_MT_TOUCH_MAJOR (Dell XPS 2-in-1 2019).
I've never noticed such issue, quick search shows that one has to start on edge and movement in vertical direction [1]. Vanilla edges are 8% of the width on each side [2]. There was a proposal to add configuration option [3], rejected — they've tried this route before, it was impossible to test.
Fortunately source is there and it is easy to patch (try to set 0%). That's quite common, for example there are several patched libinput on AUR [5].
Does your hardware has firmware palm detection mechanism? Current bug [6] (Palm exclusion zones are not worth it on some hardware).
Thanks for your detailed reply. Unfortunately the Microsoft Precision Touchpad on my Dell XPS 2-in-1 2019 (Wacom HID 48EE Finger) does not support ABS_MT_TOUCH_MAJOR; it's worth mentioning however that Windows works perfectly and palm rejection seems to work on a hardware/firmware level (no output when running "libinput debug-events" and moving a palm) making libinput restrictions unnecessary and most definitely unwanted.
The touchpad is about 7 fingers in width and the palm exclusion zones are a little more than one finger on each side; this is roughly 30% of the trackpad, or 15% each side, certainly bigger than 8% and even that would be too much.
Additionally, although the documentation does state that rejections should only happen for a vertical like movement, it also happens for a completely horizontal one.
Sounds extremely strange. You should fill an issue.
My Dell Latitude E7440 follows description and I believe same is true for most of the users. I have to start movement at least diagonally, once it catches further direction does not matter.
It produces no output when running `libinput debug-events`. I've recompiled my version with 0% just to check.
/* palm edges are 8% of the width on each side */
- mm.x = min(8, width * 0.00);
+ mm.x = min(8, width * 0.08);
edges = evdev_device_mm_to_units(device, &mm);
tp->palm.left_edge = edges.x;
- mm.x = width - min(8, width * 0.00);
+ mm.x = width - min(8, width * 0.08);
edges = evdev_device_mm_to_units(device, &mm);
tp->palm.right_edge = edges.x;
Disabled. I like how it is easy Arch allows such experiments:
$ yay -G libinput
$ cd libinput
$ makepkg -so
==> Verifying source file signatures with gpg...
libinput-1.16.4.tar.xz ... FAILED (unknown public key E23B7E70B467F0BF)
==> ERROR: One or more PGP signatures could not be verified!
$ gpg --recv-key E23B7E70B467F0BF
$ makepkg -so
$ vim src/libinput-1.16.4/src/evdev-mt-touchpad.c
$ makepkg -fei
Thanks for updating your answer with your diff. Arch really looks great in how easy it was to try that. I'm running Ubuntu and have experience compiling custom kernels so this should be slightly easier to try, thanks once again for such a great reply.
Ultimately, I would prefer that this kind of feature is configurable in userland. Wayland's documentation page mentions that "Data from touchpads showed that almost all palm events during tying on a Lenovo T440 happened in the left-most and right-most 5% of the touchpad. The T440 series has one of the largest touchpads", and this may have been true several years ago, but it's quite common now to have larger and wider form-factor touchpads.
I answered generically because my comment was about a libinput "issue" which affects all distributions and desktop environments. (Queue 2021 is the year of linux desktop).
Personally, I see this change as a regression from the highly configurable synaptics driver.
As you've asked, distribution wise I typically run an Ubuntu LTS with Gnome 3 but rolling releases such as Manjaro and lightweight DE like XFCE are also very nice.
> it is quite clear that KDE has much more features.
My guess is that the author prefers Gnome because yes, it has
fewer features, but those feel more polished. KDE is powerful
but some less frequently used features felt more like functional
prototypes that were thrown somewhere into the nth level of the
system settings.
Then again the last time I tried it Gnome had a lot of issues as
well, so maybe I'm completely wrong nowadays.
There is a lot going on each week in KDE trying to improve the situation. Nate Graham is making a summary of the parts, he monitors: https://pointieststick.com/ There is definitely still quite a bit to improve but compared to 3 years ago, Plasma and KDE software has improved by a lot.
They pretty much had this nailed down in KDE 3.5, we're now 12 years later, how much longer will it take before current KDE will show any signs of being "finished"?
Love these guys, they give a crap about usability. BTW next release soon - after a bit more polish. Polish take time and work, but do you really care about the software if you don't spend some time unclogging the toilet?
While you're here and know a thing or two about libinput: it's completely unusable for me, and the only reason I'm able to work at all is that the old synaptics package (on which libinput is based as a clean rewrite as I understand) still works. The reason is that libinput doesn't support sensitivity; I still remember the physical pain of hard-pressing the touchpad when my current notebook was new, and in particular the moment when I looked at the notebook and just stopped doing anything at all on it in conditioned anticipation of a frustrating experience. Also, kinetic scroll doesn't seem to work, amplifying the issue.
I noticed Ubuntu have switched to KDE (or, alternatively, LXDE) as DE for their "Studio" variant. I'm guessing that's mostly because the minimal window decorations for resizing etc makes gnome hard to use, and Studio is for large notebooks or desktops anyway. I think the exercise of patience that was resizing windows on gnome2 has slightly improved, but I'm still speechless as to the loss of the global menu to be replaced by ... a centered clock accompanied by a minimal dot that I found out to display notifications after a while, and nothing else.
I mean I'm glad that F/OSS for desktops still exists at all, but gnome3 is really just a big regression for no reason at all, and I'm starting to get a bit concerned where gnome is heading. It's not that we have a wealth of new desktop apps anyway. Maybe Ubuntu is testing the waters to switch to KDE as well.
Disclainer: KDE dev so take my opinion with a pinch of salt :p
The decision by the Ubuntu Studio variants was made by the Ubuntu Studio developers and not by Canonical. The developers are also maintaining Fedora Jam with KDE installed by default too. Unfortunately all the big commercial distros are using GNOME as default DE because RedHat is providing the commercial support for GNOME already and it's easier for them to just make the same choice. So I don't think Ubuntu will switch to KDE anytime soo, even if GNOME developers don't like Ubuntu and make their opinion very public.
Why is there a metric ton of whitespace between the image and the label? Why doesn't anyone care about pleasant design in the Linux world? It's arguably the reason one would pick Elementary OS, yet this is the result.
Hey at least it's possible. System Preferences-level config has a cognitive cost, it's ok by me to move 1% or fewer level stuff to plugins. My example is that I want the scroll direction reversed when I have my trackball plugged in, but not on the trackpad, and there's a helper app called Scroll Reverser which does the trick.
Alas, my white whale is focus-follows-mouse, and I just... can't have it. Not worth abandoning the Mac over, not for me, but.. arrgh.
How does "focus follows mouse" work? If I'm understanding; your desktop is a collection of various sizes windows, maybe overlapping and stacking. If your mouse goes off the side of the one you're focusing, it will auto focus the one you're now hovering over. Won't this lead to accidents where you'll have a larger window suddenly gain focus, with no way to see the old one and re-focus it? Seems easy to make a mistake.
This maybe would be solved by a window manager that enforces never allowing windows to stack depthwise? Which OSX doesn't have of course. Just size-and-position-hotkey workarounds
Nope, what you're describing is a mistake in focus-follows-mouse, one which has been made more than once.
In real, XWin-style focus-follows-mouse, the window you mouse over gets the focus, but, isn't pulled to the front. If you click, it gets the front and the focus.
I use Moom, a semi-tile snap-style window wrangler, and a widescreen with three panels. What I want to do is just slide the cursor over and start typing, but I have to remember to click, and often enough I just don't.
I remember setting some reasonable “raise timeout” and it worked well for me. For one use case, I had a workflow with two full-height overlapping windows (vim, xterm) and little mouse shifts toggled them up/focused.
Alt-tab didn’t work because its mru usually gets spoiled by other (browser) windows. If only there was a setting that fixed alt-tab mru into a stack. Alt-tab-tab to switch to app which started second may be much better than mru for some workflows, because you can always predict what it does with certainty of 1.
I actually have it set to not raise even on click; I often want to click just one thing in a window that is behind other windows. Moving a window brings it to front and I bind windows-click-drag to move a window. That lets me raise any window I like.
same. i don't raise on click. this is incredibly useful when a smaller window is
in the foreground--and perhaps a window underneath is maximized--and i just need to
select/copy something from the background real quick. the main task i am
working on is in the foreground, and i don't want its window to immediately vanish from my
sight because it's mentally and visually disruptive (in fact, i usually don't want to
blast every other window out of sight when the maximized window raises either). i will
easily raise the background window when i need to (in a variety of ways, depending
upon whether i am currently using keyboard or mouse); meanwhile, i can lazily
focus it and interact with it while all my windows stay put. it's very calming.
I tried a logitech mouse with that feature, mx anywhere 2s, but you lose the mousewheel middle-click as the wheel-mode switch is a physical switch and cannot be remapped.
Ended up taking it back for a refund and getting a g703 instead.
I don't think I have a wheel-mode option on my G703. I have a small button above the wheel which changes the pointer speed, but nothing I can see that puts the wheel into an accelerated more.
Honestly if the "2s Anywhere" had had the setup you described I would have kept it. Logitech tried to explain that middle slick was still there, on the button further back towards the palm rest, but it felt so unnatural and inconvenient. The 502 looks like a nice piece of kit.
You can contribute all you want but it's not going to be enough to stop Pottering or RedHat from hijacking the project and breaking everything. I used to contribute but these days what's the point?
I was quoting the parent comment for misspelling "pottering" as "poettering" since I'd not encountered either term.
I'm not sure using someone's surname is such a great idea for this purpose. But I now at least understand why. Also their anger at the added complexity being done to Linux and surrounding structures including but not limited to systemd.
But these structures are still in flux. Even if it means a mess along the way.
That said, you can't do that with windows or macosx.
I'm not as sure with Macs (and the surrounding culture isn't really eager on such things anyway), but there's a long history of people modding Windows in various ways, that goes back to the DOS days. Of course your customisation is highly unlikely to make it back to MS, but things like WindowBlinds were extremely popular.
> There's a quote that I think of in situations like this:
> "Be the change you want to see in the world" - ghandi
Gandhi (spelled thus) never said that. What he did say (in an article about first-aid treatments for snakebites, weirdly enough), was this:
> We but mirror the world. All the tendencies present in the outer world are to be found in the world of our body. If we could change ourselves, the tendencies in the world would also change. As a man changes his own nature, so does the attitude of the world change towards him. This is the divine mystery supreme. A wonderful thing it is and the source of our happiness. We need not wait to see what others do.
This is the absolute CORE of the problem with open-source software. Someone becomes the "maintainer" of a project, often through no skill of their own (they just showed up at the right time), which effectively makes them BDFL with infinite veto power. Hard-forks of popular projects are politically unpopular (for good reason), so that isn't an option. Instead, the whole world of software that relies on a package is broken or fixed at the whim of one dude.
> This is the absolute CORE of the problem with open-source software. Someone becomes the "maintainer" of a project, often through no skill of their own
That’s a bit unnuanced, isn’t it?
Nobody randomly becomes the maintainer of a big/popular project without having a history of contributing. They were the ones willing to pick up the task of doing free labour for everyone after the last guy didn’t want the job anymore.
As maintainer of a project, their job is to try to respond to bugs, maintain it, improve it and keep it working. All for free.
If somebody submits a low quality or low effort patch which goes against the projects conventions or general strategies or patterns which will over time increase the maintainer’s burden, he is under no obligation to accept that patch.
On the contrary, whoever submits the patch is the one who wants to benefit from all that time invested into the project so far, for his own good. I think it’s absolutely fair to expect/demand that they are also willing to put up some effort when they send in patches and receive feedback.
> And you will also find such examples for MacOSX or Windows.
If anyone wonders, here are three from Mac last I used it:
- fn took the place of ctrl on the laptop (but not the full keyboard). Unlike on Dell and Lenovo who also has this problem it could not be remapped neither at boot nor in the OS.
- CMD - tab forced me to think ahead of time if I want to change to the last application or the last window of the same application. I.e. switching between two Safari instances takes a different key combination than switching between Safari and IntelliJ.
- modifier keys worked differently between applications, e.g. selecting to the end of a word was either ctrl-shift, alt-shift or CMD-shift depending on application.
> CMD - tab forced me to think ahead of time if I want to change to the last application or the last window of the same application. I.e. switching between two Safari instances takes a different key combination than switching between Safari and IntelliJ.
That’s a feature, not a bug. I personally hate having to tab through a million browser windows to find the application I need, or having to tab through unrelated applications when looking for a browser window, which is what I have to put up with when using Windows.
It is a feature which replace another feature (stack based switching). It broke my flow multiple times a day for three years until I got a Windows machine again. I guess we are just differently wired, the idea of stopping to consider which shortcurt to use was neither natural nor possible for me at that age (around 30).
KDE does this perfectly however. It defaults to Windows/classic Gnome 2 behaviour but can easily be configured however one wants it.
“Standard” is just your habit built on another operating system. macOS has a fundamentally different application and window model, which is also why there’s a consistent application menu bar across all applications and windows, not what each app decides to invent or not invent for itself within the window.
Things that annoy me on mac:
- there's no volume mixer (each app having an individual volume slider)
- no window snapping (before I bought BetterTouchTool, which includes window snapping, I had windows everywhere and it was just a mess)
- column view in Finder is nice, it would be really useful to pick a new "root" folder for the viewer, or to move one directory up from the "root"
Things that annoy me on windows:
- No tabs in explorer. Imagine having a web browser that didn't have tabs, that's how bad this is.
- No preview in explorer. Mac has this awesome feature where you press space and it gives a quick overview of most files (not only images but also pdfs, .docx, ...).
- No column view. Column view makes it much easier to navigate across directories, and back and forth between subdirectories of a root directory.
I use both and really miss the spacebar Quicklook on Windows, I found this 3rd party app that adds it https://github.com/QL-Win/QuickLook and works better than I expected.
First, I fully agree: this is not a bug, it's a missing feature. Second, I may be a minority here, but I actually don't mind this feature missing at all. I however do (or did) mind Windows putting its "thumbs.db" files all over the place, so that's the first thing I deactivate when installing it (along with enabling "show hidden files" and "show extension for known file types").
- "Welcome to the new GNOME car. It's totally free!".
- "Looks great. But there are no mirrors. Isn't that dangerous?"
- "Yeah, but that's not a bug, it's a missing feature. Besides, we don't like mirrors because in all cars they need to be cleaned all the time."
- "Really? Apparently the KDE cars also have mirrors but different technology, and they don't need to be cleaned at all. Also, what's the difference between a bug or missing feature if a lot of people complain about it?"
- "Oh yeah. But honestly we really don't like that people have to clean their mirrors, so we prefer not to have them."
Looks like we disagree on what's a bug and what's a feature in a file picker. But the mirrors on a car are mandated by law, so the equivalent for that would be a missing Cancel button (which forces you to always open a file). If I had to pick a car part equivalent to the file thumbnails, it would probably be seat heating or a built-in navigation system - it's nice to have (for some, others never use it), but you can use the car without problems if it's broken or not installed.
I'm not saying that it's not a nice feature to have, but it's also definitely non-trivial - it's not only thumbnails for images, if you do that people will also demand thumbnails for videos (including, of course, all ancient formats), PDF files, Word/Excel/PowerPoint documents, HTML pages etc. etc. etc.
> Anyway, I guess there are actually not too much people caring about this feature
I do care about this feature just like the author and though I don't have any evidence supporting my thinking, I think nobody enjoys trawling through bunch of weirdly named files (which is typical of how downloaded image files get named by default) looking for that specific picture/icon. After the Gnome 3 debacle where they basically refused to listen to the users and even removed not-so-obscure features like tabbed windows in nautilus (which I noticed is back now), I just didn't have the confidence that raising a feature request would amount to much.
I think I had fast and reliable thumbnails at those specs, but GNOME3 would lag too much (GNOME 1.4 did because Nautilus was borked, but at least 1.4 didn't patronize me as "dumb user, we the gnome/rhel devs know better what you need")
GNOME is in general terrible for everything with image related work (last tested on Ubuntu 20.04). In the past I thought finder on macOS is terrible (it's still the worst piece of macOS and I don't like it) but GNOME files aka Nautilus tops it for sure (also because of space wasting issues).
XFCE and KDE both do a better job than GNOME in this regard. And also Windows Explorer was and is much much better in this area.
My biggest complaint: Normal Copy and Paste does not work. My mother is used to Copy and Paste and it would work in Linux but not in macOS finder because of: think different
Also why are folders sometimes cluttered all over the place and shorts cuts so weird?
Well I fixed it all with Forklift but I also grew up with Norton Commander ;)
I think they possibly mis-spoke and mean cut-and-paste, which does appear to be intentionally permanently disabled in Finder via the menu or shortcut. But you can drag so it's not a huge issue to me. Copy-and-paste works a-ok.
That's not cut-and-paste. That's copy and some weird modified paste that, as far as I'm aware, doesn't exist anywhere else. Why completely break the existing convention?
Do you not think that it's terrible UX, to have cmd+x followed by cmd+v for cut and paste in some places and cmd+c followed by option+cmd+v for cut and paste in others?
If you mean cut text and so on, it doesn't match because they're not the same thing. When editing a text document, if you cut some part, it actually goes away. If you saved the document at that point, that selection would be gone.
On files, if you cut a file on Windows for example, nothing happens. Until you paste, no operation is done. So it's not the same thing, and I think the way Finder handles it makes more sense.
Because cutting-and-pasting is a destructive action that can lead to data loss.
Under the conventional implementation of cut-and-paste, it's easy for a user to inadvertently cut-and-paste a file, when they meant to copy-and-paste said file, either through a misclick or, by hitting the wrong keyboard combination. This is because:
1. The menu option for cut is right above the menu option for copy
2. The keyboard shortcut for cut (command-c) is just one key away from the keyboard shortcut for copy (command-c) on a QWERTY keyboard
Cutting and pasting deletes the file from its original directory, however under a traditional cut-and-paste operation, the system does not ask for confirmation. Consequently, if a user mistakenly cuts a file or directory without immediately noticing their mistake, their files could be rendered unrecoverable (and keep in mind that there's no particular reason why they would notice... the UI provides no special indication when a file or directory is deleted via cut-and-paste). This is arguably a very bad user experience.
The equivalent action to cutting-and-pasting on OS X is copying, pasting and then deleting the original file. By adding in this extra step, the UI has forced users to acknowledge that their action is potentially destructive and unrecoverable.
Also notice that the command-x shortcut in Finder copies a file. It does not cut the file. Again, this protects the user from inadvertent data loss if they use the wrong keyboard shortcut.
It's a rather unusual move Apple has made here by breaking convention, but I think they've made a wise wager that users would rather be annoyed by a small extra step, then be faced with the loss of important data.
Thinking about this design choice, I now wonder how many times I've had files mysteriously go missing on Windows and other operating systems simply because I used CTRL+X when I meant to use CTRL+C
If I accidentally cut-and-paste from a text document, the absolute worst case scenario is that I lose the contents of the text in that document. It's a bad situation, but the damage is limited and contained.
If I accidentally cut-and-paste a file or directory, the damage could be immense. Years worth of important documents, records, photos, etc... could be gone, because the user's finger slipped and pressed CTRL+X, rather than CTRL+C.
Whether or not the operating system should be protecting users in this manner is fully debatable and a matter of opinion, but Apple's approach here is definitely safer (at the cost of being a bit more annoying)
I take your point. I can't be certain why, because it's been so long since I used Windows, but I never found this to be a problem in practice — maybe I was just lucky. I guess you could make the same argument about cut in any context, except:
a) you could argue that cutting text isn't as destructive as deleting a file, although they could be one and the same if you happen to have an entire file's text selected
b) mechanisms for undo'ing text operations tend to be more sophisticated than undo'ing filesystem operations; I might argue that's a separate problem to be resolved
I'd be perfectly happy if this were an option, buried in some obscure preference panel somewhere, labelled "yes, I really want to shoot myself in the foot" but, as it stands, I don't even get that.
>I can't be certain why, because it's been so long since I used Windows, but I never found this to be a problem in practice
I would have said the same thing. But then again, I'm sure there's been times where files have gone "missing" on my computer. Did I misplace them? Accidentally deleted them? Accidentally cut-and-paste? Who knows.
>I'd be perfectly happy if this were an option, buried in some obscure preference panel somewhere, labelled "yes, I really want to shoot myself in the foot" but, as it stands, I don't even get that.
Yeah, no argument from me there. I'd appreciate an option buried in the OS X CLI at a bare minimum.
>Thinking about this design choice, I now wonder how many times I've had files mysteriously go missing on Windows and other operating systems simply because I used CTRL+X when I meant to use CTRL+C
Zero. If one CTRL+Xs accidentally, Windows and most Linux Desktop pickers change the highlight colour before the copy. At worst you can CTRL+Z it after or copy it back. It's not a 'destructive' operation since you always have one copy of the file.
It's a typical case of Apple deciding users are stupid and therefore should be limited, combined with the typical 'just everything Apple does' syndrome.
What about copy and paste doesn't work...? I use that feature daily.
And for the clutter, you can configure Finder to be more militant in how it displays/orders things.
The only gripe I have with Finder is needing to set up a million QLPreview things to do better spacebar peeking. Otherwise, it's fine - it "just works" and isn't fancy.
I could give you so many, but I'll kick off with just three that spring to mind. i] Keyboard navigation is terrible. ii] Tags cannot be applied to symlinks. iii] If you're looking at a tree view, with any number of folders displaying, the only one you can create a new folder inside is the very top-level folder.
Symlinks on the desktop or in Finder to files on network mounts don't receive preview thumbnails. But if you drag that same directory to the dock, those symlinks do receive thumbnails (but only when viewed through the dock.)
I mean it's definitely not for power-users but I think it's a pretty nice basic file manager. I've never really wanted for something more powerful than Nautilus but less powerful than a terminal.
it'd be nice if there were some quickly-accessible bounty portal (maybe even from the DE itself) where proposals could be upvoted and crowd-funded. 500 people see it and offer $10 and that's a $5000 bounty, payable on merge or returned in 90 days. people could even run side-hussles of proposing features in the hopes that they're funded.
There's more serious reasons this file picker is broken.
Here's a trivial to reproduce and obvious issue that's been there for several years now:
1. Open a directory that loads slowly (e.g. one with thousands of files on a smb3 mount)
2. While the list is loading, select a file (but do not open it)
3. Wait for the whole list to load
Once the list finishes loading, the file on the very top of the list gets automatically selected (discarding your selection).
Thus, if you select a file and click open, in the time between you select and click open, the selection can auto-change and you'll end up opening something else than what you've selected.
Given that we've seen multiple examples in both TFA and other comments in the discussion here pointing to simple bugs that have A) been open for 10+ years and/or B) locked and closed as WONTFIX, I don't know if that "plus side" is valid here.
Let's do another... Open any directory with 3+ items. As first item is highlighted, quickly hit <down arrow>, <enter>, <down arrow>. The 3rd item opens...
There is a lag when hitting <enter> and the last <down arrow> is processed out of order :/
This is bad but it's not unusual. There are similar issues in Firefox and Windows. Nobody gets UI asynchrony right. There are race conditions in everything. It's particularly noticeable with a slow computer.
I promise you people have gotten this right. I have a 198? Mac Plus on my desk that I can boot up and do this on and it will work properly. I’m having trouble even imagining the insane event-processing architecture that results in keystrokes being processed out of order.
Edit: Alright, alright, forget the old computer. My new ones get it right too. All of which is a red herring, because the point is this behavior is ridiculous and never should’ve shipped.
>I’m having trouble even imagining the insane event-processing architecture that results in keystrokes being processed out of order.
It's relatively simple: the picker executes file-opening asynchronously, and only checks which file was selected at some indeterminate point after enter is pressed. In the meantime, the down arrow input in the main GUI changes the selection. The keypresses are always in order.
Whether or not that's the correct decision, it's not an inconceivable design. That example is probably one of the only times it would matter, since you would need async code that cares about some part of the file picker state.
As a rule of thumb: if you ever ask "why not", and the alternative you're proposing is more complicated - that is normally why not. Lots of UI/UX bugs can simply be attributed to the programmer taking the most simple possible design.
In this case, the async logic is not advanced. In fact, I'm willing to bet that this is what happened: at first, the file-opening was synchronous in the GUI. People complained that opening certain files locked up the file picker, so a developer sticks the file-opening code in a background thread. This produces the above bug, without complicating the input design - in fact, preventing the bug requires making additional changes to the code in some way.
To sound like Linus Torvalds, "that's braindead stupid!"
I have never looked at the code in question, but it almost sounds like the developers went out of their way to create these ridiculous bugs, because the simplest solution definitely would not have something like that happen: The handler for Enter gets the current selection (which will definitely be the correct one) and opens it.
The actual opening can be slow, so that can be done asynchronously. But to interpret "Enter opens the current selection" as anything other than the current selection at the time the Enter key event was received is definitely in the realm of rookie mistake if not worse.
If getting the current selection of a UI control somehow needs to be done asynchronously, then something is seriously wrong.
As a long-time Win32 programmer, the manifestations of these bugs are definitely hard to conceive.
This is an issue with X11 which I don't know exactly where it comes from and what causes it. Yes, it has to do with the async nature of it all and I agree it's stupid and it's a miracle the desktop even works. Over time, I've been wondering if Windows dodges this simply by having syscalls that interface with window procedures while Xorg deals horribly with it by being pure userland. Another issue is, there's no mapping of pid <-> X11 window. It's simply impossible with the current design of client-server.
What makes you think this is the case? X11 has an ordered event queue and there is no reason an application can't process the keystrokes in the correct order.
> Another issue is, there's no mapping of pid <-> X11 window. It's simply impossible with the current design of client-server.
What do you need this for? There is _NET_WM_PID [0] which can be set by clients.
_NET_WM_PID is optional, some clients do not set it and even then afaik the server doesn't do any sanity check and the client can set it to anything, making it inherently insecure. This is not good design.
> What makes you think this is the case?
Many other ways in which async behavior happens on X11, on any machine I've tried, with the mouse cursor lagging to register a click event, for example.
> 'What makes you think this is the case? X11 has an ordered event queue and there is no reason an application can't process the keystrokes in the correct order.'
Frankly, it is completely fucking unacceptable for software to miss keystrokes or read them out of order. This is basic programming 101. Any code which exhibits such a problem has a shit design and needs to be rebuilt from scratch.
This sort of thing is exactly what drove me away from the mainstream Linux distros, to create my own from scratch. If and when I ever happen to boot up something like Linux Mint and use it, (shudder,) the sluggishness of gnome3/cinnamon/whatever and all the other bloatware running on the system is readily apparent. My system is always FAST and snappy. Input lag or missed keystrokes? Not on your life.
Reading through the HN comments on articles having to do with speed, snappiness, responsivness of a UI, and excessive bloat of software, it occurred to me one day that these kids (here's the root of the problem) don't actually have a clue that things could be any different than they are. And that's why we're stuck here.
They have literally grown up with slow, bloated shitware for their entire lives, so they actually think all the bloat and slowness is normal and necessary.
Notice how the GP blames X11? They grasp for excuses rather than exercising deep thought, while demonstrating low standards, complacency, and laziness. This is what happens when the common masses take over anything. Shallow thinking and low standards prevail.
These kids have a false conception that doing away with the bloat would mean losing a bunch of features. But in reality we could indeed have fast, responsive, light weight systems, with all of the same features and even more, if only programmers cared enough, or were talented enough to write good software.
I'm not a Wayland user and do not plan to be. Instead, it is a criticism of the current abandonment of the Xorg project, which I toy with the code from time to time. I also do not use any DE and use X in the leanest way I can, and I still notice such input lag, whether it's playing games or some gui application seeming to register input at a different x,y position than it was clicked. This does not mean I'm a xorg hater, quite the opposite. Studying the codebase, it seems pretty well written and documented and it proved me the "X is unmaintainable" mantra is a lie. I can elaborate more on other issues of the async & client-server nature of X. I'm not spouting nonsense.
I believe the entire point of Wayland was to pull away talent from Xorg development, to keep people in a quagmire for a decade plus working on that junk instead of fixing up Xorg to be what it should be.
Just like how the entire purpose of a certain very Gimped graphics editor was probably to occupy and exploit people who could have worked on some better project. It seems to have worked for a long time; only now after many years do we finally have Krita, but it's KDE only.
It's obvious microcomputer UNIX has been under assault for a long time by those who don't want the dream of a free, open desktop to be realized.
I do agree that there's a spread of FUD regarding X11 and its code but I believe we can win this fight if we're interested in fixing X's shortcomings and making the leap to "x12" or whatever you wanna call it. Don't know anyone else who delves into the codebase though.
There is a standard window property that anyone can set and that any halfway sane UI framework sets. I ran into maybe one that didn't and even then it was five lines of copy/paste code to add it.
> Whether or not that's the correct decision, it's not an inconceivable design.
I'm having trouble with the part of the design where we recognize that a file is selected (such that pressing <enter> causes a file to open), see the <enter> keypress, and then fire an event saying "open any file, whichever one you feel like" as opposed to "open this file right here, the one we can see is selected".
If, as you maintain, the keystrokes are processed in order, then at the time <enter> is processed, we specifically take notice of which file is selected. (Because, as I said above, we only know that <enter> should open a file at all because we see that a file is selected.) We fire the file-opening event after that. This isn't a mistake we can make by accident; we'd have to be making it on purpose.
I can see where the assumption that the keystrokes are being reordered comes from; it's much less insane than what you're proposing.
Because the event says "open the currently selected file", not "open this file because it is the selected one". If the event is processed asynchronously w.r.t. other events which can modify the selection, you can get buggy behaviour.
I don't find such a design that surprising. If you like simplicity, you would be tempted to go for it, because it doesn't involve duplicating data (namely, the selected filepath) between the main GUI state and the event handler for opening the selected file. If you're writing in a memory-managing language like C, it's even more tempting - by not copying data, you don't risk forgetting to free it later.
I'm sure there are far more qualified hn users than I to elaborate, but basically you wouldn't have a dependency on an mutable object. Rather, the object would have to be directly passed to a function.
Having said that, I meant it more generally in the sense of their respective architecture design paradigms than details of a particular implementation.
>Whether or not that's the correct decision, it's not an inconceivable design.
It's easy to imagine. Someone kept a variable for the current selection and instead of copying it during the enter event they just read it when the delayed action happens. It often takes time for a second window to open or a page to load. If that new window references the current selection you are going to run into bugs.
It's a design that has caused many video game exploits. You can do impossible things like disassemble a Fat man barrel and put it on a pistol in Fallout. You will get a rocket launcher that has the fire rate of a pistol except it shoots nukes and only uses bullets as ammo.
Keyboard maybe. That same old Mac probably processes mouse events out of order: when it was being slow you could click on something then move the mouse somewhere else, and it would click the new place instead.
That Mac cannot multithread the UI interactions. It doesn't have to be a keystroke processing issue. It can be "hey window parent, I've got your result in my properties, pick it up" which doesn't get processed before the next event changes the related property.
However, the Mac was about the only system getting this right by rigorously prioritizing UI events on the system level.
(Which is also, why applications like Photoshop on Windows weren't a viable option for professional users for some time, until hardware became faster. How do you draw or paint, if the events representing your gestures are not synchronized, as they are subject to system load?)
Only if each key has its own function to process that keystroke, and some keystrokes had to do more processing and thus take more time about it. Selecting an item in a list view is a fast, simple process; what happens after that isn't up to the list view anymore.
LibreOffice had (has?) a similar strange race condition when typing. When the computer was acting slow and LibreOffice Writer was lagging, the Finnish layout's characters äöå would jump to the front of the typing queue somehow. So if I typed "menkäämme", I might get "äämenkmme" when LibreOffice finally renders the typed text. I don't know if it still occurs but it was really annoying and I always wondered how on earth it could happen.
That's likely the fault of the GVFS and other virtual-fs-on-top-of-kernel-VFS layers. Gtk seems to be slower than others (such as KIO/KDE), but all of them are pretty slow. E.g. the KDE file picker takes about a second or so to finish listing the contents of my home directory (though it is usable while it is doing so, unlike the Gtk dialog), where the Gtk takes quite a bit longer (perhaps on the order of 3-5 seconds). Meanwhile ls is essentially instant, as you'd expect for just a few thousand files or so.
KIO is pretty fast I think. Dolphin is insanely fast at least - if you list a large directory almost everything that can't be loaded instantly is loaded asynchronously and streamed in to the UI after the UI becomes responsive. I think the KDE file picker is using other code altogether, I'm not sure why it's so much slower. GIO is horribly slow and makes everything that uses it next to useless, eg [1]
Interesting explanation at the end of the bug report:
The slowness is only caused by the GIO's G_FILE_ATTRIBUTE_STANDARD_CONTENT_TYPE and g_file_info_get_content_type. Wherever they are used, there will be a slowdown because the contents of files, that lack extensions, should be read for finding their mimetypes. Almost all the time is taken by that; the other operations are done pretty fast — particularly, the Qt GUI takes no time in comparison.
Yes, actually reading that it makes it sound like the file manager itself is just badly architechted - of course you shouldn't load mimetypes synchronously before listing a folder in the UI, that seems obvious.
So maybe I'm not right about GIO as such. But Nautilus is also excruciatingly slow despite being more fully asynchronous.
Assuming an asynchronous UI programming model, I can only conceive this happening because they skipped having a proper Model and instead the View is accessed directly (in the Mode-View-Controller way of thinking).
However the most disturbing thing is that events might get to be processed our of order. Even if you stored current state in a proper Model, there is nothing you can do if your event queue ends up being "<down>, <down>, <enter>".
I guess that's why Qt prefers to do all UI event processing exclusively in a single thread. The event queue will always be serviced in order.
Many years ago I was a hit by a bug in the Gnome file chooser (on ubuntu) that selected a random sibling file in the same directory. Caused me to accidentally upload something I definetely didn't want to publish.
In fact I have never since directly uploaded anything from my own personal file directories, instead I make a copy of it under /tmp for the upload process.
Not sure if this is the same bug you are talking about
Even worse is when you know the exact file name that you want to open, and the interface fights against you writing it! For example I want to open /tmp/a.png, but there's thousands of files on /tmp and the cursor disappears while "loading" them, and and some characters of the file name are lost, or typed on different parts of the interface.
Recursive search instead of type-ahead search within one directory in the file picker is criminally terrible. I don't think there is any implementation of a file picker that behaves like this (other than Gtk's).
I'm sure there's people here who are long-time contributors and/or supporters. Just ignore me, I'm not your target audience. ... I'm really not sure who your target audience is, though.
Holy crap. It reads like a parody written by someone who read this thread and article. I was thinking it couldn't be as bad as people we're saying, but it's worse!
I actually have a copy of the book, and it is indeed a good book. The problem is that it somehow empowers GNOME developers to keep creating/maintaining/rewriting broken software, all in the name of "usability".
> Free software development is not a democracy, and does not get driven by polls. Features and bugs are introduced by those who show up, within a community that works towards a shared goal.
And it is exactly to let themselves yell that, they work hard to alienate few normal devs left in the project.
I understood now that Gnome 3.0 was from the start Redhat's fully intentional attempt to appropriate the project, and is not dissimilar to Microsoft's embrace, extend, extinguish.
1. Get command of some more abandoned parts of the project.
2. Push a series of guaranteedly unpopular sharp direction changes which will lead to loss of devs.
3. As devs leave, you get more reinforcement to your casus belli, saying that "nobody maintains this pile of garbage, so now I am taking it over too"
This sure seems accurate to me, from what I've personally observed, but I don't understand what motive they might have. What's the point of controlling popular software by making everybody hate it?
Does GNOME really bring in much paid support momey? In the past I have worked at a company that did have RHEL5 workstations with GNOME by default, but everybody I knew treated that as a joke and sshed into the workstations from their (Windows) Thinkpads or Macbooks. The desktop software on those workstations was unwanted and unused.
> What's the point of controlling popular software by making everybody hate it?
I think, in their view, all comes after taking hold of the project. But here, they got that, and now what? Now, all lofty plans have to meet the cold reality.
It's like a mutunineers on a ship throwing officers overboard, just to realise hours later that they are in the middle of an ocean, and they have no idea how to sail a ship without skilled crew.
I saw that happening in public companies: a single asshole activist with puny few percents of the company keeps throwing big radical decisions onto every shareholder meeting, until he gets everybody so discombobulated, or the company so disfunctional that others either leave the company to him for taking, or he gets a legal casus belli to sue the company to try to wreck it further, and then seize it.
For such people, it doesn't matter if the company in question dies, as long as they come out with gain. Some are plainly idiots with too much legal education, and some are genuine degenerates doing it with full knowledge of consequences.
A lot of people like it. Just because there are old timers that cannot move past gnome 2 it do not mean that Gnome 3 is bad. It faster and more polished that KDE. Workspace management and screen real estate is supierior to anything I used.
I believe the 'graying of GNOME' discussed here a few weeks ago is evidence that fewer and fewer people like GNOME each year. New developers would naturally be drawn from the ranks of enthusiastic users. (Why would a developer volunteer their labor for software they don't use and care about?) The graying of GNOME shows that the pool of enthusiastic users has been shrinking since GNOME 3. That's about when GNOME tipped over the edge and started losing developers faster than it gained new ones. The missing new developers would be new developers, not old timers. If it were only old timers who feel alienated, I wouldn't expect GNOME to have trouble recruiting new developers.
Gnome 3 is default for most popular distros (Ubuntu, Fedora, RHEL, Debian etc) If anything gnome is getting more popular thanks to Ubuntu switching.
There fewer people contributing because programming in C is no longer fun or hip. It is not Gnome problem but the whole Linux ecosystem. Gnome is slowly adopting rust but the core framework is still C. There is plenty of active forks of Gnome2 people can contribute there.
Please do not spread these unfounded conspiracy theories. If you are a developer and you don't agree with direction changes, you don't have to work on them, you can work in the direction of your choosing. AFAIK there are numerous forks of GNOME over the years that are still going.
> If you are a developer and you don't agree with direction changes, you don't have to work on them
I would tell the same to Poettering, Clasen, and co.
There is really nobody who obligates them to work on their "innovations" in GNOME with religious zeal if the rest of the project showed no interest, speaking lightly.
If nobody wants to work on their stuff, they can't claim "victimhood" as if that happens as a result of somebody's ill intents.
I have to reference Torvalds vs. SystemD here as an example how Sievers, Poettering, and co. instantly drew up a picture of kernel community being some kind of a bullying ring when the only thing they did to them was to ignore their (bad quality) patches.
I would advise holding off judgement on specific individuals unless you have worked with them closely and you have a deep understanding of why certain decisions were made.
Again, if you are a developer and you disagree with someone's choices, you are free to take it in your own direction. You do not have to work on anybody else's stuff if you don't want.
> if you are a developer and you disagree with someone's choices, you are free to take it in your own direction.
That would be best said to persons named above.
They were free to fork GNOME into their touchscreen based imaginary future, and experiment with it even more freely as a minority group, rather than trying to hijack the project, and getting stalled half-way because of popular pushback.
>trying to hijack the project, and getting stalled half-way because of popular pushback
Again, please do not spread these unfounded conspiracy theories. I can explain more what I mean by this, but it seems unlikely you are willing to hear what I have to say. I can tell you if you're trying to convince me to be hostile towards any specific developers for any specific project, I will have to decline to get involved with that. You don't have to resort to character assassination, if you have some ideas on a good technical direction for a project, just make the argument and write the code: people will listen if your arguments are sound and your code works.
I personally don't know the full history; you might consider looking for some old blog posts or politely contacting a GNOME developer for an explanation of the history. From what I understand, the run up to mobile was a major source of funding for GNOME 2 from several mobile companies, and that's where all the developers came from, but most of those companies were not able to keep up and failed to iOS/Android. So the funding dried up and Red Hat was one of the few companies that happened to survive because of their other business. That's what I've heard but you should talk to more people who were actually involved in the project back then if you want a more complete answer. (Please assume good faith and don't be hostile, we're all friends here, these are just developers trying to pay the bills like the rest of us)
There was a story recently, On the Graying of Gnome, comment by boudewijnrempt [1]:
> The reason is simple: Nokia. Nokia (and to a much lesser extent, Intel) built up a lot for Maemo and Meego. Just for KOffice/Calligra, at least twenty people were paid to work on the documents application. For all of Maemo/Meego, the total number of people Nokia funded was enormous.
> And then Elop, and the burning platform, and Windows, and well, that was 2012.
> By 2014, my company was dead, amongst others, and, yeah, the peak had peaked, and the big chance for free software had gone.
> I would advise holding off judgement on specific individuals unless you have worked with them closely and you have a deep understanding of why certain decisions were made.
Is this advice meant to be applied against all people, or just other developers? I certainly wouldn't apply this standard to RIAA lawyers suing kids. I judge them to be worms even though I never worked with them. And don't even get me started on politicians, I've never worked with one but I certainly feel entitled to have harsh opinions about some of them.
If the advice is limited in scope to professional peers, then I have to disagree with it; having double standards for people like yourself isn't great advice.
I just want to say that what you said here and in your other comments in this thread resonated with me in how you approached dissecting issues like ones that have been discussed here. I wish there were more people like you and it's a characteristic I hope I can be more like as well.
I respect that you are willing to admit you don't know the full history and implore others to understand why for example, certain decisions were made. It seems as if many people love to theorize about what these are, making correlations which are usually driven more by their feelings than reality.
I feel like character assassination was a phrase that I feel aptly describes how I've seen a lot of people treat people like Lennart Poettering. I feel as if some people are unable to separate person from their opinions. Not considering that person like they are more likely to do so if they were in person.
I sometimes feel like this attitude is more strongly felt by some people in a community where there is freedom to take a project in another direction if they desired (I know that not everyone has this option).
I do think however that the article of this thread expresses their opinion on an issue in a way that it explains how it effects them without resorting to emotional attacks towards the project and it's something I really liked about reading it.
I think people believe Linux is community driven project, while in reality it is strongly corporate backed. Just look at kernel contributions [1]. I think same applies to most of the infrastructure, someone works on FreeType, Cairo, Pango, etc.
In such case disjoint between users and developers is even further. I am professional developer, yet I have zero contributions to my framework and just a few contributions to libraries. After 10 years my contributions to Linux community limited to bug reports, few patches and manuals.
In reality there is not enough community support to maintain existing systems. "Freedom to take a project in another direction if they desired" by individual is overrated, that's TempleOS.
EDITED: Some bragging about making a difference
There are a lot of projects with less corporate influence. No systemd on BSD, but hardware support is not as good. Generic distributions is something that works for most of the users. There are a lot of niche distributions and projects (Void Linux runit!). Current state is just a reflection of users priorities.
Sorry if it was not clear, by take it in another direction I generally mean find funding, get hired by someone else to work on it, or start another company to work on it if there is enough of a business opportunity there. It's very hard to make significant changes to a large codebase without a team of people.
> Is this advice meant to be applied against all people, or just other developers? I certainly wouldn't apply this standard to RIAA lawyers suing kids. I judge them to be worms even though I never worked with them. And don't even get me started on politicians
These developers do not wield power over anyone and they are not filing lawsuits. They are developing code, either as their job, or as volunteers. And in either case, contributing their work as open source.
It might help to take a little perspective before publicly passing judgement on _individuals_ and what you imagine their intentions to be rather than merely judging the merit of their contributions. Those are completely different things.
What I'm talking about really has nothing to do with power. Maybe the examples I chose suggested that power dynamics are relevant to my point, but I think they aren't, so here is another example without one: Should an architect refrain from judging Frank Lloyd Wright just because they never worked together? I think certainly not. That seems completely backwards to me. Anybody is entitled to have an opinion on Frank Lloyd Wright, another architect particularly so.
Are you talking about judging his contributions and significance to architecture or his worth as a person?
I get that the two things have some overlap and aren't cleanly divisible. What we do is a major part of who we are.
But I mean, it's one thing to say "I think it [his architecture] is awful", or even "I think his architecture had a negative impact on people/society/cherished values/whatever" but quite another to say "I think he sought the ruination of everything good and decent because he was a demented and feeble mind." Because, yes, I do think the last one would only be appropriate if you actually knew something about the guy...
Edit: And yeah, of course, I'm not trying to censor anyone's opinions. Of course you can _have_ the opinion, you can even express it. I just think that it's not what engaging in productive/civil discourse looks like and, depending on the venue, people may call that out or whatever.
I am not talking about judging his 'worth as a person'; rather his 'worth as a developer.' Maybe in his private life he's a wonderful person, who knows? Who cares? It is his professional activities that concern people.
You are of course welcome to have an opinion, and to choose whatever product you want based on that opinion. But if the extent of your opinion is "this person is a jerk and their work is terrible and not to my taste" that is unlikely to convince that person to change course, especially if they don't know you and if the decision is already made.
Linux Puttering is not only a talentless programmer, he's a horrible, evil, wicked person, who in a just world should be beaten to death with a claw hammer, or thrown out of the nearest airlock.
This little bastard knows EXACTLY what he is doing to Linux.
You are of course free to make some smart fuck remark in response to this, or "report" the post to the local Gestapo, or whatever other fuck-ass action strikes your fancy.
We've banned this account. Please don't create accounts to break HN's guidelines with, no matter how strongly you feel about something or someone. We're trying for something else here because it's the only way to keep the site interesting.
From some of your other comments I gather that you've been around this material for a long time and you know a lot about it. Why not share some of what you know, so others can learn? and make your substantive points thoughtfully? Then you'll be making this place more interesting, and your points will have some persuasive power. Just venting only adds energy and credibility to the views you disagree with.
I get that there's a low probability this argument will work with you but I think it's worth trying to persuade people that it's in their own interest to follow the rules, which are designed to try to keep a community that's interesting for everybody:
> 'Please don't create accounts to break HN's guidelines with, no matter how strongly you feel about something or someone.'
What?
Is that really how you think? That I created this account "just to break HN's 'guidelines' with"? Like that's my sole mission in life: just to piss you off.
Did you ever stop to consider that I am simply sharing my open, brutally honest opinion, based on a rational consideration of a large pile of facts?
By the way, the word 'guideline' implies that it's optional. So what are they actually--rules or guidelines? Do you just redefine language to be whatever you want it to be?
> 'We're trying for something else here because it's the only way to keep the site interesting.'
What does this mean, exactly? I was happy with the status quo of an open, honest exchange of information on an open internet. I don't recognize this Soviet Union style gulag you've converted it into.
You want to try "something else"? How about this for a shocking new innovation: a forum where people can express their opinions without being immediately descended upon and harassed by "no soup for you" Nazi mods.
Is that the crowd you want to nurture and encourage here: populated by idiots and cowards with brittle personalities who can't tolerate differing viewpoints?
> 'From some of your other comments I gather that you've been around this material for a long time and you know a lot about it.'
Well, HOLY SHIT! What an amazing admission.
So we've progressed from the original "this guy is a useless twit, why just LOOK at the shit he posts, we must BAN BAN BAN! don't worry about how he thinks or feels, JUST KILL IT WITH FIRE!", to what is now a much more conciliatory ban message. Instead of the door being slammed in my face, now it is closed with a huff.
Given the observed progression, at this rate within the next 5-10 years at most you'll be begging me to stay, in slowly dawning recognition that the things I know and understand might be of some use to you. Progress.
The catch is, you'll be balls deep in your long-anticipated World War against Russia and China by then. But already at this moment there is no hope that you could ever convince me to stay and help or encourage you with that. Too little, too late. You burned that bridge long ago.
There's countless others like me who have taken our prodigous skills and talents and abandoned this corrupt and wicked society. We have retreated to the hills and stockpiled plenty of popcorn to enjoy the fireworks of your demise. "Gone Galt," they call it.
You couldn't pay us enough to do anything for you people anymore. This is what you have done to yourselves, through countless means and methods, not the least of which is your open embrace of censorship of formerly free and open internet forums.
Did you ever consider that shadowbanning people is an extremely antisocial and evil thing to do to someone? Of course you didn't.
I don't entertain any idea of trying to help you, or others like you, by posting in places like this. I only do it to preserve the idea of resistance in others who are subject to your tyranny.
> 'I get that there's a low probability this argument will work with you but I think it's worth trying to persuade people that it's in their own interest to follow the rules'
Did you ever consider that all of these bullshit rules and regulations people like you enact and prostrate yourself in worship of, aren't in the best interest of society*, and never were?
Did you ever consider that it's YOU who is the problem here?
LOLOFCOURSENOT! YOU ARE WAY TOO SELFISH TO DO ANYTHING LIKE THAT.
Furthermore, the "this person is a jerk" part is clearly not part of some dispassionate evaluation of his professional accomplishments and is just a verbal attack couched in the language of professional criticism.
I suspect that, in many instances, people who do that are not trying to convince anybody of anything. If they expected to be greeted everywhere with agreement then they would not go around saying things which they know perfectly well are not likely to result in a vigorous and healthy debate if they were said to strangers in the street :)
This advice definitely applies to open source developers whose work is out completely in the open.
You can literally take millions of lines of code that they may have written wholesale, and change a single word in it that you don’t like.
In open source, they have nowhere to hide. If you disagree with a certain decision they have made, you are welcome to take the effort they have put in to implement the hundreds and thousands of other decisions they have made that you do agree with, with a simple “git clone”.
The problem is that GNOME is not just a DE. By virtue of being a project that's used by RedHat and Ubuntu, it's the closest thing to the standard DE that desktop Linux has at the moment.
Worse yet, its developers consciously make design decisions that make it hard to write applications that play well with GNOME without taking a dependency on it - their take on it seems to be that GNOME is a platform, and their main interest is supporting "GNOME apps", even to the detriment of all the rest.
Between these two things, deficiencies in GNOME affect a lot of people who didn't necessarily choose to be affected.
I'm not sure what you expect can be done about that. Every desktop is going to have its own set of features and APIs that other desktops don't. That's what they mean by "platform." Should e.g. KDE developers spend less time working on their own features and start contributing more to GNOME, to make GNOME apps work better in KDE, and vice versa? Maybe, but they would have to take the initiative to do it.
Having unique features is fine, of course. It's when GNOME goes out of its way to make it impossible for DE-agnostic apps to "do the right thing" for ideological reasons, when every other DE supports some kind of lowest common denominator. Here's one famous historical example:
I don't see how that is an example of ideological reasons, or how that contradicts what I said. It seems like exactly what I was saying -- GNOME, Ubuntu and XFCE all have their own separate APIs for things. I've seen that issue posted here and on reddit so many times and I never understood why anyone considers it any more significant than all the other times a random open source project removed a deprecated API or did an incompatible version bump. Yes, I get it, it's frustrating when upstream is a moving target, but that's exactly what he's saying. You can choose to follow the moving target or you can target a platform that moves slower.
And because I have to keep saying this, that is a non-issue now anyway. XFCE supports the new app indicator protocol, and since Ubuntu dropped unity their support for it is available as a standard GNOME extension: https://extensions.gnome.org/extension/615/appindicator-supp...
Others strive to have APIs that are either compatible across DEs, or there is a way for a DE-agnostic app to feautre-detect and use it when it's available. GNOME is the only project that simply doesn't care about DE-agnostic apps, and ends up making their life more difficult than anybody else. The app indicator issue is brought up time and again, because the comments on it from the GNOME developers make their attitude crystal clear. That this particular issue has been resolved since then is not important - there have been more since, and there will inevitably be more in the future, since, again - they do not care.
If you sincerely believe that it's okay to have a single DE be a self-contained app platform with no interop, that's up to you - but do understand that this is a very debatable premise, and people who don't agree with it have very good reasons to be annoyed with GNOME.
Screw Red Hat, the amound of crapware and bad attitudes coming from them is astounding. And of course, since they have big bucks, it gets shoved down everyones' throats.
I use Linux, macOS, and Windows on a regular basis. I use mostly default settings, only a couple changes. Over time my settings move closer and closer to defaults. I tell people to upgrade their OS (with a couple exceptions). I was on-board with GNOME 3 when it came out (I was an Arch user at the time, but I’m in remission now).
The GTK file chooser dialog is easily the most garbage piece of fucking shit. Honestly, sometimes, if I want to post something online I just copy the file to my Mac first just to avoid dealing with the fucking piece of shit GTK file chooser. If I need to sort through a bunch of files, easier to run Samba and sort through them on my Mac, because Nautilus was scooped out of the same fucking pile of shit than the GTK file chooser was scooped from.
As far as I can tell, the last time that browsing files on macOS really changed was 2007, when 10.5 came out and had Quick Look. Since then, browsing files on Linux has somehow gotten worse. Do you know what it’s like on macOS? Every once in a while, Apple quietly adds support for previewing a couple more formats.
MATE's based on GTK, so it inherits all the GTK "features", last but not least, the v3 file chooser, which lost along the way the create new folder key binding, and the quick search by prefix (which now has to be inconveniently performed on the address bar).
Additionally, programs may rely on different GTK versions, which also makes things confusing. For example, Visual Studio Code and Firefox use GTK3.
I have found a (cumbersome) solution to this using Xfce. Its Thunar file manager does implement type-ahead, so whenever I need to open a file that is saved in some deeply-nested folder, I open Thunar (using a custom shortcut, Ctrl+Alt+E) and quickly navigate to the file using type-ahead and press Ctr+L to copy its full path to the clipboard, then I switch to my app and paste the address.
For complex paths, I found that this is the quickest way to open the file I want.
The lack of typeahead in GtkFileChooser is my biggest annoyance that I've ever come across. Ever since I started using computers nearly 25 years ago I used typeahead to navigate through directories and I can't imagine doing it otherwise. The idea of removing typeahead is anti-human to me, I couldn't adapt even though I really tried to.
Which makes me think the biggest problem with the file selector as described is not that it's flawed, but that it's hard to replace.
One of the thing I loved about the Amiga was that because of how the API was structured, it was easy to replace things like this, as you could patch every API endpoint. As a result, it took very little time before more advanced replacements for the standard file requester appeared. You "just" had to patch (via OS-provided functions) a couple of library calls.
That one really really really pissed me off because it’s a task I expect to do tens of times a day. Also it has some serious focus loss issues in that space where you’ll have to tab or click something again.
I must have installed a Linux distribution 100 times with the intent of using it as a desktop and lasted less than a day every time. I’ve been doing it since 1998. Literally something that horrible punches me in the face every time.
And if it goes like it did for me, that smile will turn upside down in a month and you'll format your Linux partition and move to WSL2 on Windows even if you haven't used it in 20 years. That's it, I'm done.
At least now I only have to put up with a slightly dated and crufty interface but I can use my PC to full potential - gaming AND work AND working bluetooth. Crazy huh?
In my case, I also managed to notice that my computer is much faster than it ever was on Linux, which is nice. If I had an old Core 2 Duo Linux would make it fly, but alas, I can afford a modern PC.
Yeah I've got a hefty PC here too running Windows. WSL2 is wonderful until you get your first Hyper-V bugcheck, filesystem corruption or weird ass network issue to debug. It's really not very good. I used it from day one and WSL1 before that which was even more horrible (NT impedance mismatch was obvious)
The compromise for me before migrating to Mac was using Windows on the desktop with Ubuntu VMs in Virtualbox. I had whole clusters running on my desktop.
Windows 10 is fairly decent on most hardware I have found. If they finished off all the little quality issues, had a decently integrated mobile ecosystem and stopped all the telemetry bullshit I'd be there now. I had some hope back in 2015ish when I was full time windows desktop dev with WP handset etc. Alas the world moved on so I dug the old Unix hat out.
Mac is great, I would use it full time if Jobs and Apple hadn't decided gaming is for kids. It's my hobby, especially now that I'm locked home, and being unable to play the latest PC game is an unacceptable compromise for me. No, a console is not what I'm looking for.
So in that case, Windows is the best compromise. And while I'm still in the proprietary world, I'm outside the walled garden.
In any case, I haven't hit any WSL2 bug or corruption in these 6 months (nor blue screen), so fingers crossed.
If I use KDE I'm still subjected to GTK and Freedesktop for stuff I use which is where all the bugs live. But then I have more inconsistencies between Qt and GTK so in fixing it that way I now have two problems.
Linux itself is fine. It's the layers of shit smeared on top that are not.
Or when you have the full path name already and want to paste it in to GtkFileChooser. It turns out this is possible, but you'd never know it from the UI.
There's been some changes and refinements since Windows 3.1. The current default file chooser dialogue shipped with Windows allows you to put in a full path into both the top file path or in the Filename dialog.
In this, a full path can be pasted in to both the top bar where it says "This PC > WINDOWS (C:)" and also into the blank "File name: | |" box.
I'm pretty sure I remember this dialogue being available since NT days. It seems fairly discoverable to me, clicking in the empty space of the current working directory path changes it to show the text path of the directory. The "File name" box offers autocomplete if you did something like "C:" as a file name, or started typing a folder name of the current working directory.
So many times I would go to a folder, start typing the name of a file/sub folder that I knew was there and it was like “nope! Let’s instead search whatever default directory instead. Apparently this behaviour is by design and alternatives won’t be considered. (This was when I was using Ubuntu 18/19?) at some point they changed a bunch of default things in the UI interface (including getting rid of what I considered was the far superior previous lock screen manager).
> You could type /tmp/a. and it would autocomplete it to /tmp/a.png
>
> It is a good idea, but I type too fast. So I would write /tmp/a.png and then the autocompletion triggered and replace it with /tmp/a.pngpng
This is so sad.
Autocompletion of filenames should work perfectly no matter the conditions. If "ls" can list tens of thousands of files in a fraction of a second, there's no reason that autocomplete has some delay. I can see why this happens, maybe you have a thousand images in /tmp and the file picker is opening them all to compute their thumbnails (which in my opinion is useless, but whatever). Then it uses quite a few kernel threads and it clogs the system, making the completion to fail. But it sounds like this problem should was already solved many years ago, and that modern "improvements" of the file picker made it fail.
This is why if you're smart, you hide that behind a short timer to pick up the pause. Tuning it just right can be a pain, but hooking natural behavior as an indicator of needing assistance increases the UI bandwidth in terms of signaling. It's the little details.
This exact issue is actually what prompted me to switch to Kubuntu/KDE. It's still not perfect out of the box, but it's matched my expectations way better than recent versions of GNOME have.
Picking directories has been pretty broken forever as well. Say you start in ~/Downloads/foo and want to store the file in ~/Downloads, then navigating up will have "foo" selected, with usually no blank space to un-select (so you'd need to do ctrl+click or something to that tune); clicking "Save" (or whatever) will then descend into that directory instead of saving, so just using the mouse, or not using any shortcuts, you really can't do this.
This, other UX and even performance (!) issues that have been mentioned in siblings as well as TFA makes the Gtk file pickers easily one of the TOP10 reasons to avoid Gtk and Gnome for anything.
The interaction design of these dialogs is simply shit. Windows (and also KDE, which has been using a copy of the Windows dialog for about 20 years) show how to do it correctly.
Wow I never thought about Ctrl+Click to deselect in that situation. I've probably wasted at least an hour of my life by giving up and re-opening the window in a different way. Thanks!
(I actually asked someone more knowledgable about this once and was told that it's my fault for using the file picker incorrectly and I simply need to stop doing that.)
I'm a regular user of the CUA guideline's copy/paste shortcuts. Those shortcuts work in pretty much every MS OS from the early 1990s until recently. Linux has been a mess, but KDE has been pretty decent at enforcing global shortcuts.
The past 5 years though have been a nightmare, MS has really messed their UI up, and various applications/toolkits or whatever the problem no longer properly support the CUA guidelines which in the past were the one assured way of doing an operation cross applications and various OSs (windows+linux/kde).
Maybe its time to start going to a few developer conferences and giving talks about how useful system wide shortcuts that work across multiple OSs really are.
I recall this being a problem, but I just tried it in Gnome+Chrome and it worked correctly and the picker 'looks native' at least. Then I tried it in GIMP (which has a different picker) and it works like you describe.
Some other Gnome apps also work correctly so I think it's fixed in Gnome but not whatever GIMP is using.
> Picking directories has been pretty broken forever as well. Say you start in ~/Downloads/foo and want to store the file in ~/Downloads, then navigating up will have "foo" selected, with usually no blank space to un-select (so you'd need to do ctrl+click or something to that tune); clicking "Save" (or whatever) will then descend into that directory instead of saving, so just using the mouse, or not using any shortcuts, you really can't do this.
That's a degradation from 2.10, or 2.16, from time even before the 3.0.
Thank you for the accurate description. and it's also broken in xfce. I personally deal with this annoying situation by ascending to the grandparent and then descending to the parent again.
Window's UI is not really an upgrade though. All the fake roots (why the heck is the Desktop the root) and the forced broken navigation therein, the removal of up so you have to navigate everything like webpages, treating some folders like databases and others with duplicate names like standard folders, hiding extensions, and the 'My Computer' naming madness.
There's "Up one folder" button and keyboard shortcut in Windows. Button is placed next to weblike Back and Forward buttons. It works according to path displayed next to it and you can even click the elements of the path to go up as many levels up as you want with single click.
That's true but annoylingly it doesn't always take you up one folder. For example If you click it from Desktop, it takes you to the whole PC instead of to your home folder.
Windows (the operating system) does the same thing. If you open your “Documents” folder from your “Quick Links” in the sidebar, going “up” takes you to your Quick Links “folder”.
It’s even worse in MacOS. No matter how much I try to use Mac, I am always so disoriented by the filesystem and the “Finder” (filesystem browsing interface).
Actually, I think the intended usage in this situation is to click on the filename field, then press Save (or Enter/Return). Which is still terrible discoverability, but at least it's theoretically possible?
GUIs should effectively be finite state machines and people expect them to operate that way. People understand latency and get used to it; it happened on mainframes and other terminal applications and people memorize the state machine and can tab and type through an interface at high throughput anyway.
One of the most frustrating experiences is related to the OP; reflow in browsers as new elements load making it impossible to click on the right thing until the whole page finishes loading. Popups are also nearly as bad but maybe less avoidable.
Some folks use this fact to place ads in such way that when you want to click something by the time your finger taps the screen there is an ad underneath. So annoying.
This is the worst, a french website Leboncoin (craigslist basically) does this, makes me want to murder the people behind it
When you click next page nothing happens long enough to make you think your click hasn't been registered, then right as you click again the page loads with ads right where the button was
I remember the time (10 years ago?) where you could go to google webpage and start typing your search immediately. Then one day I got my typing deleted once the page finished loading. I thought Google would quickly fix this, but soon realized that this kind of annoying asynchronous behavior was becoming a new normal for a lot of GUIs. I have a rule in my GUIs to only show up something when it’s consistent and usable: the GUI should never lie or mislead.
This has started happening to me constantly in Amazon! I start searching for something, make a typo, go back, then somehow it snaps back to the typo before I hit enter and I get bad results. Super annoying, I don’t remember it being a thing before a year or so ago.
The ebay search button has been like this for ages. To the extent, that sometimes, you correct your search query, hit enter to search and it resets back to the previous search query and re-searches that!
Google search bar also breaks the standard OS behaviour on a Mac, eg. when I am i the search bar and hit <cmd-left> it should jump cursor to the beginning of the line, which it doesn't.
You can thank things like auto-suggest for this as well.
I remember the first time I encountered the epiphany that "woah, typing too fast can break my textbox/inputs" and coming to the realization that in order to accommodate the faster users you often have to be very careful thinking out your UI flow.
Hence why I hate UI's. Sometimes feels like they are nothing more than a fight between me and another developer.
is this possibly a case of "leaky abstraction"? e.g a "data oriented" ui where data flows in 1 direction, so updates to said data blows away any intermediate state?
The reflow issues as incredible in the Twitter mobile web, at least for me on Firefox for Android. When you go back from seeing a tweet's replies to the main timeline, it might take up to 5 seconds (or even more) to load some UI elements and reach a steady state. It even scrolls to a different point than where you were before!
Yes. Twitter on mobile web seems to have some state of the art ai to reflow the page just when I'm about to press my thumb to read a subthread , like a post or such so I always end up liking the wrong one.
Twitter Mobile is hands down the worst mobile website that I know. I always use nitter.net if I want to view something on mobile. Opening the browser and manually rewriting the link is more handy that clicking on it (e.g. in reddit). That should tell you something.
On Twitter for Android, I quite often open the app after a while, and the previous state is shown. Super! I start reading a tweet, and then the popup comes at the top that there are new Tweets; at the same time, that very tweet I was reading disappears from the timeline, whilst the tweets around it remain. Why??
I’ve spent more time chasing an iPhone folder with an app I want to put into it than I care to admit.
That websites and volunteer ui projects get it wrong is understandable- the problem domain is huge. But dragging an app onto a folder is a rather constrained problem that should be easier to solve.
It's stuff like this that makes so hard to onboard new non-techie users. The proverbial mom or grandma, whose knowledge about the "filesystem" and "directory hierarchies" is already pretty weak, would probably spend 30 minutes or more with this exercise in frustration, before giving up and/or grabbing the phone to ask for help.
When you're past the stage of first impressions, it's a death by a thousand cuts.
Windows is not better in lots of these details, but at least users already know its tricks due to Microsoft's years of desktop dominance. I'd argue the effort of changing platforms should be about improving the experience, not about swapping a list of UX issues with a set of different ones, otherwise the change isn't really worth it for most users.
EDIT: oops I meant to write this comment as a reply to the sibling that talks about how difficult it is to select a parent directory in the file picker dialog (https://news.ycombinator.com/item?id=25721368)
I get this all the time with Safari windows on Macs ever since they changed the new tab view when they switched to location naming rather than big cat.
Hit cmd+new window pops up with search highlighted, start typing after a split second the window pops behind the other and all the key presses are then fed into the previous window.
KDE user here, so cannot comment on this case exactly, but in my experience the default "Windows" of Windows and Mac are also terrible.
Try to split a window pane on Windows, or right-click and create a file in Mac. In either, try to open an SFTP folder as if it is local, or integrate Git status icons into finder (all easy to do on KDE and Gnome). Good Luck.
The number of copy+paste bugs and QuickLook hanging issues on Mac is not even funny.
Just look at all the enhancers like Norton Commander and Path Finder, and you can see that even calling the OS Windows didn't make MS put too much effort into their windows.
There are also multiple file pickers (Qt/GTK) and they don't share history or recent file list. Also in GTK picker if I select an existing file on Save by accident, I can't unselect it and I have to write filename again manually myself or close the picker and try again. This is annoying, time-consuming and frustrating.
File pickers are one of the things I don't like on GNU/Linux unfortunatelly, saying that as someone who daily uses it as a primary platform.
This has somehow gotten worse in recent years. When saving, it used to be you could use the mouse to navigate to a directory, then type the desired filename, and press enter.
Now, typing the filename initiates a contextual search within the current directory.
Clicking in the filename textbox and starting to type doesn’t work either. You have to highlight the base (not the extension or “.”) of the filename. At that point, you can finally start typing the name of the file you want to save.
The same problem occurs if the file chooser happens to already be in the directory where you want to save the file.
Doing some introspection (all too rare for me!), I find that this is the reason I've started avoiding creating new files in LibreOffice, and why my Downloads and Pictures folders are flat, unstructured messes. Too many programs use the GNOME file selector.
Isn’t that “better” in some sense? You don’t have to actually categorize anything in order to find it later. Just type what you want and let tracker pull it up for you.
If I could just “accio my black jeans” I wouldn’t bother organizing my closet.
I suppose it might be better? But the folder-first sort means I've got a miscellaneous pile of extracted archives very far away from the archives themselves… it's a complete mess.
The assumes you know the name of the random image you downloaded to insert into the document. mjx3AmQXM5OrkxV7.jpg isn't super easy to remember (as a random real example chosen from my downloads directory)
I mean nothing excuses not having thumbnail previews. That’s just stilly. I just mean the default typing action to be search rather than typing the name of the file.
I think the OP was talking in the context of saving, where searching during the "save" process seems a much less frequent occurrence than giving the name to the file you are trying to save (which presumably you have to do 100% of the time).
I’m not sure if this is still the case as I haven’t used desktop Linux for about a year now, but what made this extra irritating is that the file name would be highlighted already! How on earth can selected text in an in-focus modal window not be the target of keyboard input?
For me this is really annoying as well, together with the stupid
text input fields that may display a blinking cursor even when
they're not focused. And Firefox has this weird issue that now
and then a newly opened tab doesn't focus the address bar,
forcing me to use the mouse to select it.
And I still don't get this trend in some newer software to make
tab switching via Ctrl-[Shift]-Tab feel like the lottery instead
of just going to the one on the left or right. There's a reason
we can reorder tabs by dragging them around, and a reason our
keyboards have more than just those three keys, and "fidget cube
replacement" is not it.
Sometimes I wonder if the UI designers never use their own
products or just aren't aware that building habits for chains of
workarounds should not be the normal way to interact with
computers. /rant
If you keep them separate (it's configurable), Ctrl-L focuses the address bar, Ctrl-K focuses the search bar. I don't know how these keys behave if you configure it to use a single combined address/search bar (I've always kept them separate).
When combined, Ctrl-K focuses the address bar with a `? ` prepended, which turns it into a search bar. (In the most recent version it replaces the `?` with the name of the default search engine, similar to Chrome.)
If you have to use Firefox on shared computers occasionally, it may be worthwhile changing your habit to use ctrl+pgup/dn instead of ctrl+tab; ctrl+tab defaults to switching in order of most recently used tabs these days, while ctrl+pgup/dn stays with current tab order.
ctrl-tab in Firefox can be configured to move through tab in a last-visited order, I personally love it and can't stand the lack of this feature in chrome/edge when I use them
Yes! This issue infuriates me to no end. I've made my set up quite clean, I've got my tiling window manager set up how I like it, but if I want to keep using firefox I have to keep dealing with this ridiculous bug. What on earth was the person thinking when they created this?
I've seen many other downgrades with gtk updates. The UI for Deluge, one of my favourite pieces of software, got pretty ruined by the gtk3 uptick.
Another related issue: when saving something from Firefox, the file picker opens into _a random directory_ each time. Like maybe 50% of the time, it will be the most-recently-used directory, but the rest of the time it is a random directory that I had saved something to at some point in the distant past.
It boggles the mind how these bugs can persist for years upon years, but my occasional forays into the GNOME bugtracker indicate that the developers just don't seem to care one bit about this stuff. They often seem downright hostile and defensive and dismissive of the bug reports, either closing them as WONTFIX or ignoring them until they rot.
I believe they are not random at all. I haven't dug into it, but I've seen similar behavior here, and my impression is that Firefox stores an association between some or all of the URL host component and the most-recently-save-to location.
If you saved something from http://foo.bar.com/ to /whatever in the past, future visits-and-saves to *.bar.com (or maybe just foo.bar.com) will use /whatever as the default location.
>Now we have half the software, no manual and often it still confuses users :-)
I was going through the contents of a storage unit and came across one of those old digital executive day planner things from the 80's, still bundled with the manual.
I cannot describe the sudden surge of childlike happiness. I loved reading about how to use things as a kid, and the little fold out pamphlets giving you a roadmap into efficiently using a device/software filled me with many hours of happiness and confidence as a child.
I now do my best to WTFM (Write The Frigging Manual) where I work. It's amazing how quick something can be picked up with a little bit of guidance.
Instead of fixing old problems that the entire community agrees with wild consensus, they insist on spending time creating new problems.
Perhaps we should stop whining and start fixing them. And then if the developers refuse to accept things people have been wanting for well over a decade then we can fork it and simply abandon them like any other archaic unusable thing of the past. We've all asked very politely long enough.
This is open source, we don't have to put up with this, that's the whole idea behind it. Closed source solutions from 23 years ago shouldn't still be running circles around the current stuff. We should all be embarrassed.
So someone implements all the features that a massive number of people want, people use it, but then you think there will be no interest in maintaining it?
If the fork is closer to the final result that most people want, it's a no-brainer that developers, maintainers and the community will follow. There's no incentive to stay behind.
It's worth studying the case of OpenOffice.org and MySQL. Both of these weren't satisfactory to the community for <reasons>, so the community forked them and did all the high-demand feature implementation on the fork. Now the original projects that were forked from are near-ghost towns.
I used to contribute bugfixes to Gnome2 in months before Gnome 3 was released. I observed product plan for Gnome 3 and was joking Gnome 3 will be just a red button that farts.
So many functionalities removed, slower response time, regressions and defects everywhere, broken user experience worse than what Window 10 gave us later. I moved to XFCE and then to Plasma.
Pretty sure 99% of regular people would be happy if there was a desktop with GNOME 2 feature parity but with a good Wayland compositor and probably some modern features that would come from that (multimonitor, VRR, ...).
I just can't understand how anyone could defend GNOME 3. Their own staff have to use extensions (that break every update), even Fedora (!!!) has to patch GNOME packages now.
They kept fighting that their workflow is superior and now they are going to change it all over next release. They keep butchering their toolkit, I can only use Qt applications now. Hell I'll take even Electron over GTK.
For me the Linux desktop with a WM is the perfect balance of exposing the internals and UX. It could be better but that's true to every OS, at least here I have my freedom. I'm keeping my eye on KDE, seems like they rewrote their less than ideal compositor (legacy X11 is a burden) and maybe in a year I could be using that.
I've once heard someone say that GNOME is Microsoft's favorite DE. You can guess why.
I've been running Cinnamon on a few machines for years, and it mostly works fine, which for a Linux desktop is high praise. The file picker has thumbnails (although it only has a list view, so they're ant-size).
I haven't used MATE. My understanding is that MATE started life as Gnome 2, whereas Cinnamon started life as Gnome 3 reskinned to look like Gnome 2. Both have grown considerably from their starting points.
My desktop user experience with Mint Cinnamon was as close to delightful as I've ever had on Linux. All the GUI stuff worked without me having to fiddle around in the terminal like a "hacker", the UX was generally high-quality, and the default theming was pretty and consistent.
My overall impression was that it was definitely and surprisingly usable for non-technical people like my mom, grandma, etc. who don't use their computer for anything sophisticated but also don't have the time/energy/wherewithal to debug and configure things.
I can't speak highly enough about the Mint Cinnamon experience, and I recommend that everyone involved in the "Desktop Linux" world try it (at least in a VM) so they can get a sense of what "good defaults" actually look and feel like.
> All the GUI stuff worked without me having to fiddle around in the terminal like a "hacker"
This was also my experience.
The only customisation i've done is:
1. Moving the panel, depending on what my feelings about proper panel placement are at the time.
2. Removing all the default shortcuts, because they collide with IntelliJ and/or are useless, and defining a few of my own
3. Setting up custom compose key sequences
Removing the shortcuts was done in the UI, but i really wish i could do it in a config file instead, because it's a pain to spend ten minutes clicking around. I had to hit the command line to set up compose keys, although i think this is an X problem, not a Cinnamon problem.
I don't use a DE myself but I do package software that's meant to run on "normal" Linux distros and the lack of a desktop on modern Gnome is absolutely baffling. I make industrial software so these machines are really single-use so it makes sense to put shortcuts where they won't be missed by somebody who may not be super familiar with the Linux desktop (especially since said shortcut will often be used when something goes wrong and speed is of the essence).
I remember thinking "what on earth were they thinking" the first time I realized that none of the usual way of putting things on the desktop worked on modern Gnome. Absolutely baffling. Breaking such a well established convention is pure hubris in my book.
I'd be perfectly fine if this was a niche DE that you'd have to go out of your way to install but this is bloody Gnome, the de-facto standard DE for Linux. Absolute insanity.
Up until 2020, I didn't use screen sharing all that much, so the lack of support for that wasn't a big deal with using Wayland.
Now days though... this is a problem. I feel sorry for the folks running some Linux desktop that don't know why the option to start screen sharing just doesn't exist in various apps. I can imagine another Linux user saying "but it is right there!" to them, also not understanding why they have it but the person they're talking to does not have screen sharing.
To be fair, that's rather a problem of the applications not supporting Wayland. You can share within Xworld and Waylandworld, but not between them. I assume that's a non trivial problem and inherent to Wayland's design.
You can screenshare just fine through xdg-desktop-portal. It has nothing to do with whether the DE / compositor providing the implementation of xdp uses X or Wayland or something else, and it has nothing to do with whether the application doing the screenshare has an X window or a wayland window or any window at all.
So I just checked on my install (Gnome 3.38.2, Debian testing) and all the GTKFileChooser windows I could find had the thumbnails representing the underlying images.
Interestingly I checked a few apps I have installed through Flatpak, and they generally didn't have thumbnails for the same dialogues, although sometimes did for the "recents".
Unless this has been recently added as a feature, it sounds more like he has another issue affecting his desktop rather than outright missing functionality. Or could this be a Debian applied patch? I couldn't find any details after a quick google.
If you read the article more closely than I did originally there is an example of what I see in their original article [0]. The thumbnail is part of the list view and they want to see a thumbnail without the other file details.
The screenshot from the article is very low resolution, so it's quite hard to see if you don't know what you're looking for, but it does have a unique thumbnail against each filename.
The underlying complaint is that people want this to be bigger.
Yes, they are so small that they are completely useless. What is needed is a widget like the one from Windows at the top of the article that actually shows all the thumbnails at a decent size so you can use them to actually locate the right image.
After a downvote encouraged me to re-read the article more carefully it seems the OP wants to be able to see only the thumbnail (and maybe the filename) - not a thumbnail that is part of the list view with further details.
Older builds of Gnome only seemed to use the generic icon for the file type, so it does sound like there has been progress here - if not enough to satisfy the OP.
> One might also say "Just use KDE!" Yeah, I guess I could use KDE, just like I use the downstairs toilet instead of the other ones.
Yeah but when you go to the downstairs toilet you can't bring in your favourite newspaper because the paper its printed on isn't compatible with the light bulb and you can't read it.
Firefox on KDE uses the GTK filepicker. No thumbnails.
I remember doing that last year, or even the year before.
Anyway, a distro released in 2018 and still supported until 2023 and 2028 for extender support can't be "a bit too old" for something like the file picker. I mean, people were making fun of me when I told them I was using that ubuntu distro that had no mp3 support by default but it was 15 years ago.
I just set this up today and found that one also must install the xdg-desktop-portal and xdg-desktop-portal-kde packages. I then added GTK_USE_PORTAL=1 to .profile and relogged.
OSS is not designed to solve user problems, it's designed to solve developer problems. Therefore it will always suck compared to a commercial product developed for users. Good product design solves users' problems. (And usually there's somebody who will get fired if they wait indefinitely to solve it)
As a dev I still have to interact with the file picker a huge number of times in a single day. The GTK file picker is perhaps one of the worst offenders that's irritating devs, power-users and plain regular users.
Patches get dismissed.
I don't know where the problem is. It's as if the GNOME team had a vision, but didn't actually try to see how this vision plays out using the tools they're making.
The problem is nobody's gonna get fired for not solving the problem in GNOME. Nobody is accountable, and nobody has to cooperate on and solve the user's problem. One person can be a blocker for 10 years and nobody can do anything about it.
The second thing Leadership is useful for is forcing people to do the right thing. That seems to be missing here.
Gnome uses Gtk; Gtk is the Gimp Toolkit. It was created for an image editing program. In a way funny that their file picker is missing such an feature one would expect in an image editing program these days.
(From scrolling offer the discussion I can in parts see the architectural constraints they have and can image they have other priorities ...)
According to Wikipedia[1] GtkFileChooser is from 2.4 in 2004. So that was designed more than 16 years ago. Not sure when Windows got the feature, but previews could have been thinkable then and machines powerful enough to handle it with some usable threshold.
"At one particularly frustrating moment, I offered the following: “Bill, a shower, a toilet, and a water fountain all have mechanisms to control water flow, places where the water comes out, some sort of porcelain basin to hold the water, and a drain, but we don’t combine them into one thing to reduce their learning curve. We don’t merge them into one object because each of them are in use in fundamentally different ways at different times.”
Then the pause.
Then Bill’s verdict. ["That's just rude."]
Ouch.
As I saw my career disintegrate before me, I started to question just how “beautiful” my analogy really was. To his credit, Bill was forgiving, and met with me many times after that, giving me numerous opportunities to get him on board with all manner of ideas coming from my team (with varying degrees of success on my part). Ultimately, I never did succeed in making Bill really comfortable with a more emotional approach to software design. But the real lesson of the day was learned. In the software industry, as long as the engineering-minded run the show, the notion of subtle and textured user experience design that balances the emotional and functional aspects of a software experience will always struggle to take root."
There was a paragraph in that article that made me think of something
>”But engineers (like everyone) see the world through their lens. Engineers look at code all day. And when they see two pieces of code doing roughly the same thing, they immediately think about ways they could eliminate the wasted effort by combining them into one piece of code that performs both functions”.
I shudder when thinking of all the times I have wasted time trying to generalize something only to end up with code that is harder to understand, awkward to use, more complex, more prone to bugs, or all of the aforementioned, just because there is a stupid voice in my head going “do not repeat yourself”.
With maturity comes the insight that not repeating yourself is good. But sometimes avoiding it makes things worse and costs a lot more.
In software there is the distinction between visually DRY and functionally DRY.
The latter should be collapsed, but might not be duplicate code at all. Automated code analyzers will often not even see these.
And the former must be kept duplicate. Unless you can make it functionally duplicate too. Automated code analyzers will often flag these wrong.
Don't get me wrong: I love automated analysis in a CI or my workflow. But it is not binary like a linter: pass or fail. It requires context and interpretation; I see e.g. CodeClimate as suggestions, not laws.
I think we talk about slightly different abstraction levels.
I wasn't thinking of the things a compiler will tend to optimize. It was more the times when I have tried to do too much with some higher level abstraction and suddenly you find that the abstraction isn't a good fit for everything you need to do inside it and that you may even be writing code that becomes very awkward (hard to understand, "abuses" the abstraction, or just very slow).
These things tend to hit in the "oh shit" phase when you have enthusiastically convinced yourself (and your team members) that this is the way to do it, you have written a lot of code where the abstraction still fits and then you stumble upon the cases where it doesn't fit and things get awkward.
DRY is a good principle, but duplication of code that does nearly the same thing may have significantly lower cognitive overhead, be easier to maintain and easier to evolve in some cases. (The trick is to silence that little OCD voice in your head when you come across those cases).
> I shudder when thinking of all the times I have wasted time trying to generalize something
My programming life has improved for the better when my threshold to generalise and DRY is not when I need to use some piece of code in two different places, but when I need to use it in three different places.
I am not joking, that was life changing advice for me.
If software engineers wrote novels, most of them would just add new pages to a million page choose your own adventure novel, and then laugh at all the authors who write a novel from scratch each time.
Funny you'd post that in here because MacOS sucks at this and Windows does a great job. In fact arguably the engineering mind worked great there. The file open dialog in Windows is just a repurposed Windows Explorer view which means you can access all the things you can from explorer when opening and saving including things like unzipping a zip file, renaming some existing file that's in the way (like file.txt -> file-old.txt and then saving the current file as file.txt), moving files (create a folder "old", drag file.txt info old, save the new file as file.txt where the old file.txt was.
Basically you can actually do the things you often need to do. Conversely on MacOS if you need to do any of those things your only option is to use Finder which really sucks because you then have navigate to wherever you were in the app
And of course you can set the icon size in Windows file dialogs, something you can't do in MacOS file open/save dialog
So in this case, thank god the engineering mindset won out in Windows, at least for this particular feature. Whatever UX designer on MacOS decided to neuter the file dialogs failed UX class apparently and chose based on some random airfairy idea then users actually getting work done.
- Re: file open dialog - repurposing Windows Explorer means that every time I want to open a file in an app in windows, I have to look for it, rather than just drag/drop from a window I likely already have open into the file open dialog (or from a quick-find launcher tool).
- "Basically you can actually do the things you often need to do. Conversely on MacOS if you need to do any of those things your only option is to use Finder which really sucks because you then have navigate to wherever you were in the app" - I'm having trouble understanding what you mean here.
- Don't get me started on sizes for accessibility reasons, that was partly why I had to switch elder friends to a mac after watching them suffer on windows. Things may have improved over the past few years though.
- I really want to see Microsoft or the FOSS community figure these things out, I dip my toe in once in a while but I think there's an evolution in cultural/governance/funding needed. Maybe the popularity of videoconferencing may help the FOSS world actually see how people work rather than just posting pictures of 'screenshots' and battlestations.
Have you tried? A properly written Win32 app is supposed to handle drag-and-drop of files onto its window, and treat it as "Open". Try this in Notepad, for example.
That said, I'm not sure what this has to do with repurposing Windows Explorer? It uses the same widget to browse files, but the File Open window is not actually an Explorer window.
GP is talking about drag-and-drop of a folder into the file picker view, which results in the file picker navigating to that folder. Or drag-and-drop a file into the file picker view, which results in the file picker navigating to the enclosing folder and then selecting the file being dragged.
This is even more useful when saving files than opening files.
I see. I have to say, though, as described, this sounds as a rather inconsistent behavior to me. Does the macOS file picker not provide file management functionality at all (e.g. creating folders or moving them around)? If it does, it's kinda strange that it would behave differently from the standard file manager.
> Conversely on MacOS if you need to do any of those things your only option is to use Finder which really sucks because you then have navigate to wherever you were in the app
While I don't disagree that it would be nice to be able to do more of the same things in file picker as in finder, there is the possibility to right-click -> open in Finder
Filepicker also supposrt Finders "go to" (cmd+shift+g) that let's you type paths, with autocomplete and support for ~, which is a super nice feature.
An amazing feature of the windows file picker that i hardly ever see mentioned is that you can simply paste in a url into the name field and it will automatically download it to tmp and refer to the file.
Reading this story from 2012 now, it aged... interestingly. It's basically complaining that this mentality:
> Concept reduction, consistency, skill portability, were all core to how to make a great UI. Why have 17 different ways to pop up (or drop down) a menu? Why have 17 different graphical treatments? With “one menu to rule them all,” users could learn how to use the menu once and then apply this knowledge anywhere they saw this affordance. That way, developers don’t have to reinvent the wheel, and users don’t need to relearn the wheel.
was taken too far, and argues for dialing it down a notch or two. But the industry did exactly that, and the resulting UX is worse than what we had in early 00s - and keeps getting worse every year.
If it's any comfort, had it been me, you'd have gotten a promotion on the spot. Toolmaking requires a delicate balance between realism, and sytemic abstraction. You have to simultaneously keep the view of system-as-world and end-tool-in-the-world firmly in mind simultaneously. Sadly, with programming, it can be very difficult to keep oneself from getting bewitched by overall system complexity in ways that end up having an adverse effect on the usability of the tool itself.
Great analogy, though. I posted about how macOS’ file picker behaves compared to Windows’ one; this analogy would’ve helped.
When I want to use the bog, I’ll use the bog. When I want to clean my bum, I’ll use a bidet. When I want to wish my hands, I’ll use a hand basin.
The way Windows does it feels like crapping in the bath tub, at least to me. Wrong tool for the job. “If all you have in a hammer” kind of deal.
On the other hand, I’m sure Windows users who defend the mini-Explorer think of it more like using one of those fancy Japanese toilets with a bidet and music player to hide the sound of your ablutions.
Gnome is notoriously terrible for not accepting patches outside of redhat employees. I tried adding a patch to gnome in the 00s and the number of hoops they expected me to jump through along with the tone made me never install their de again.
Aren't there plenty of little UX niggles in macOS/windows just like this that haven't been fixed for years either? I'm not sure why this is being used as a reason why "Free desktop operating systems are a joke".
I think "use KDE" is perfectly valid advice here too. The toilet analogy doesn't really hold, your satisfaction of software that works for you shouldn't be at all affected by the existence of software you don't like and don't use, that's just silly.
There are overwhelmingly many such contempties in Apple and MS systems. Not more, but different and disabling. Apple and MS don't try to present the illusion that what they build is for your benefit. People know they are Big Corporations that care less-than-nothing for you or me, or our wants or needs, and that it is only by luck when we can get them to do anything at all.
It is the imagined promise that Free Software is done for our benefit that lends us the delusion that things should be the way we want them.
In fact, Free Software things are much more likely to actually work, in the way that somebody wants, than Apple's or MS's. Just, not you. In the case of Apple and MS, there is typically no living individual who wants it to do what it does, but changing it would require initiative whose attempt at exercise would severely punished.
Frankly I find the whole blog post silly. All OSes/software have trade offs. It's just a question of what is important to you. I'm primarily an Ubuntu user but I have one Windows machine. There are things in Windows that just flabbergast me that people put up with. And Windows users can easily say the same thing about most Linux variants.
IMO it's perfectly valid criticism in its lambasting of the bug itself as well as its vintage. When I want to upload a screenshot, photo or video to an email, an IM, a web page etc., I really do not want to send the wrong one.
I can agree with that. But I could say that about things in Windows and MacOS too. It's not like Gnome is unique in this regard. In some regards Linux is more advanced than Windows or MacOS, does that mean Windows and MacOS users are "used to mediocrity" as the article says?
As for not wanting to upload the wrong one, doesn't the file picker show a preview of the selected file? Sure, not as good as thumbnails, but it should be enough to avoid the problem.
I do say things like that about Windows too, and I back anyone who writes a blogpost excoriating Microsoft for their longstanding faults. As a long-time Windows user I can definitely say I am used to mediocrity in many areas. Thankfully no longer on a daily basis :-)
Some of the GTK filepickers on my system do show previews (e.g. Signal) but others do not (Mozilla - since fixed by the incantations needed to have them use KDE's).
It absolutely is valid criticism. It was more the snarky "and therefore commercial software is better than free software" stuff that rubbed me the wrong way.
At the risk of splitting hairs, to me it reads more that the author is slating free software (or perhaps the only available free software), rather than praising commercial software. I think I read the article as a bit of a "stream of consciousness rant" and often give the spewers of such words a bit of leeway for interpretation. I've written in a state of mind of frustration and later thought "Yeah you did go a bit over the top there, but it's a reflection of your state of mind at the time".
I can speak for Windows and say absolutely, yes. With each major version Microsoft try a new method of abstracting away the file system from the user in File Explorer and it just makes it less intuitive. One example being: the new "add recent places" feature just fills the navigation pane with garbage from system/program files areas.
There are still some keyboard navigation issues with File Explorer which can sometimes make it act in unreliable ways, there is a strange bug with system tray context menus still to this day and don't even get me started on the dumpster fire that is Windows 10's entire Start Menu design and implementation.
755 comments
[ 3.8 ms ] story [ 617 ms ] threadBut we need some good funding model to pay someone to fix them. Good funding models are something the opensource world has been missing for a while...
Here's a better structure for the post "This is an issue that really impacts me and I care a lot about. See existing bug / discussion links. I can't solve it myself, but it's important enough that I'm willing to put up bounty for that work." I don't think anyone would complain about it.
The author is trying to point out a process problem in the hope that some of us here at HN can help solve it.
No need to single out a specific one.
The way I see it, maintainers like these are why users of open source software are burning out and switching to macOS.
It's such a shame, because fixing most of these small bugs is far less work than building new features. Nobody wants to put the work in though... Nobody has the overarching vision of a consistent UX that just works out of the box without oddities, quirks and workarounds.
I agree, this is the problem. GUI OS developers like to work on big features and eye candy but forget to fix the basics. I have yet to find a Window system that:
1. Works without glitches in HiDPI setups. Especially mouse pointer glitches.
2. Comes out of the box with fonts that don't feel like thorns in the eyes, including the browser.
Developers frequently hate it when "product people" get a say in the direction of the product, but the alternative is commonly to have developers prioritize perceived code purity over actual user interests. And emphasis on "perceived", because usually the codebase is a hot mess but maintainers want it to be their hot mess, not someone else's.
[0]: https://github.com/Dudemanguy/gtk
As for a lack of system tray icons, the practical upshot is that my system bar isn't littered with multiple special snowflake applications, each with their own unique icon art style and mismatching proportions.
Plasma Desktop's System Tray widget that lets you hide icons you don't want to see. You can disable the widget, or configure it to show no icons at all.
With default being off, it is applications that have to be careful. They can use it, when they detect it is present, but cannot assume it anymore.
System trays exist on most platforms, and apps, especially cross-platform apps, will sometimes assume that they exist. I prefer to use a system that can handle those apps.
I prefer when applications do not assume that it is available at all; if they do, they are broken. Applications, that force themselves on the user upon startup, then sit in the systray and are resisting the user that is trying to close them are outright black UI pattern.
Now, due to another bug in Windows, the overflow menu has remained open and must be manually closed. The third bug here is when I alt-tab out of LastPass, it doesn't take me back to the most recent application; instead it dumps me on the desktop or some other program at random (why is the desktop even there in the alt-tab menu?)
I'm not against apps running in background, just that monolithic implementation with systray is the wrong approach. Android has shown a good model: background service that cannot talk to UI, but can send notifications or communicate with separate UI app. With this model, user has control over what is running in background or what started on login time by system (not app-specific!)-provided tools, like systemd user units under Linux or LaunchAgents under macOS. When the user wants something off, it will be turned off in one place, with no ors or buts or other black patterns that prevent user turning the application off.
Looks like there are still tray icons, they just need to be implemented differently?
[1] No, the window previews aren't really useful because their positions are non-deterministic and it's hard to rapidly distinguish mostly white, unlabeled windows anyway.
Not a day too soon, it makes thunar a lot easier to recommend to others. And saves me some time when looking for things in my downloads directory!
Thunar is to Dolphin what a slingshot is to an M16. I never understood how people settle for such barebones file managers (i.e., less featureful than Windows Explorer).
Well, not really. Anymore.
Recently (give or take few years), toolkits and applications started to use desktop portal - mainly as a preparation for sandboxing (i.e. putting the app inside flatpak & co). The application, optionally inside sandbox, doesn't use the framework's common dialog - because that would not give it access to files outside sandbox - but talks to the desktop provided one via dbus.
That desktop provided one does not have to be implemented by the framework that the application uses. It is implemented by the DE that the user chooses.
Btw, if you work on MacOS (which has been a while for me now), you get very used to hitting space everywhere to get previews. What a feature!
It’s truly absurd.
Edit: Folks, instead of downvoting, how about pointing out that I apparently have an additional bug going on in my desktop setup? This is exactly the problem with Gnome.
I guess I have a different bug happening _in addition_ to what the article is talking about. Lovely.
Edit: Also the new GTK API for file pickers to work better with sandboxing and platform integration, lacks the ability to add preview widgets altogether.
Because it’s not important enough to them to force a fix. Hard to believe, in this day and age, but some developers have other priorities, especially when working with free software.
I question if this is actually a bug. It seems to be working as intended, just not the way the author wants. Seems like the quickest solution would be for the author to either take on the job themself, or absent the time or expertise, pay someone else to do it.
[1] https://github.com/Dudemanguy/gtk
So what? Neither are desktops! The question is that the total number of terminal users is certainly increasing year after year.
Perhaps, but the proportion of them is certainly decreasing (especially if we include devices like tablets and phones in "computing interfaces").
What does that even have to do with this article, which is about a file picker?
Several years ago, I started turning desktop icons off (both GNOME and Windows make this easy) and it really helped my organization, as I was then forced to competently organize files into Downloads, Documents, Pictures, Videos directories instead of vomiting everything onto the desktop. Simply _knowing_ where files are located is faster than scanning a cluttered desktop.
As a bonus I don't ever have to worry about the positions of my desktop icons changing.
File picker definitely needs thumbnails though.
For me personally, I wonder why mouse wheel/scroll acceleration is still not implemented. I implemented it a while ago for Xorg, which is outdated now, and also the maintainer was not happy with my approach. It's now a long outstanding proposal for libinput, https://gitlab.freedesktop.org/libinput/libinput/-/issues/7 / https://gitlab.freedesktop.org/xorg/xserver/-/issues/405 (original bug report from 2010: https://bugs.freedesktop.org/show_bug.cgi?id=29905).
Anyway, I guess there are actually not too much people caring about this feature. And the intersection of those who do and those who have enough free time and knowledge to implement this is just empty.
Btw, I don't quite understand the comment about KDE. It sounds like the the author claims that KDE lacks other relevant features. But comparing Gnome vs KDE, it is quite clear that KDE has much more features. This is never a complaint I heard about KDE.
https://wiki.installgentoo.com/wiki/File_Picker_meme
Don't know that I agree there.
I actually really like GNOME's workflow on laptop, especially with Pop OS's extensions.
[1] https://en.wikipedia.org/wiki/Everaldo_Coelho#Crystal
that might be subjectively correct to a lot of people, but I find that they are usually set to sane defaults and a lot is disabled by default. Also, I would like to emphasis that the choice of disto kinda matters here as they sometimes change defaults.
I've tested comparing Gnome/KDE on old hardware (eg, 2 GB of RAM and CPUs built for power conservation), and subjectively I found KDE to be a lot snappier (Gnome Shell always choked for me when hitting Activities) and, after a few hours of uptime, found it used less memory than Gnome. On the same box, it even gave Xfce a run for its money, which was surprising.
Although, when it comes to peddling Linux to other people, I'm hesistant to install KDE for anyone because it's a bit too configurable. I'm always afraid of getting asked for help because of someone accidentally messed up their UI and losing their taskbar or something like that. KDE's came a long way in recent years, but that "you can configure everything" core will always probably be there. And on the flip-side, if I install Gnome, people often find it outlandish and barebones...
I think Kubuntu did more harm than good for people’s perception of KDE.
I wish there was the option of not installing Akonadi, but apparently it's not possible any more to run sticky notes and feed reader without it.
I have nothing against KDE, but come on. Many of us really do prefer GNOME despite its perceived deficiencies. This is just a matter of personal preference.
For instance, margins and paddings seem to be all over the place [1]. At least Gnome gets that part right.
[1] https://community.kde.org/Plasma/Notifications
... it has been feeling like that for the few years I've been following it.
https://pointieststick.com/
I personally like KDE and it's Breeze Dark theme a lot.
> This week (KWin’s compositing code was almost totally rewritten...)
I then instinctively went on to the top of the article to check on the date, to get an idea of when was "this week" for the author... but there is no date. Oh, well :-)
Opening the post itself (instead of reading from the main page) does indeed change the UI and it now happens to show the date.
Loved the irony...
This all shows that even for people dedicated to it, getting UI/UX right is hard.
Everything is so LARGE and padding between elements is YUGE. The tech is cool and everything seems to work fine, but something about the UI just grates me.
Also, KDE is the most customizable DE of them all, and it has the most powerful features of them all (by far). Given that, all these "but it looks kinda bad!" comments sound insane. It's like choosing a push mower over a motorized because you like the finish on the handle.
IMO, one aspect where Gnome excels is its tight integration of alternative input methods. I remember it being controversial that Gnome blessed ibus over alternative engines, but as a result, setting up CJK input is simple and foolproof. Although I prefer KDE in every other way, I have never managed to get ibus working correctly in that environment.
I have nothing against KDE by any means (I love it, and also really appreciate their initatives like KDEnlive, etc.), but I don't think I've ever gotten Japanese/Chinese input to work in it before. Maybe once, but then I gave up on finding a sane way to easily cycle between the different input types (eg, WinKey+Space).
I use windows-key and start typing to launch things all the time, and after reading your comment at first I thought I might have developed a habit to pause, but nope. I wonder what the difference is.
My biggest KDE gripe is that popups from the system-tray disappear if you move the cursor outside of them. Maybe pro gamers can manage to keep the cursor in every time, but for me I often take 2 or 3 tries to click on something.
This looks like a bug or you changed the default setting, just to be sure in System Setting -> Window Management -> Window Behavior -> is the Window Activation Policy set to click to focus?
"This week Plasma also saw a new Kickoff menu that is a complete rewrite, which is also coming with Plasma 5.21. There have also been many bug fixes, performance improvements, and other ongoing UI refinements."
https://www.phoronix.com/scan.php?page=news_item&px=KDE-KWin...
https://www.reddit.com/r/elementaryos/comments/gs86hj/thumbn...
https://medium.com/elementaryos/a-new-native-file-chooser-19...
Went with Plasma first - did not go well. I simply cannot get comfortable with it and general look and feel is not working for me (I prefer defaults and I avoid much tweaking and any 3rd party customization). I settled on Cinnamon, but it was close tie with GNOME which was actually quite refreshing experience for me.
So, to each his own, but I just do not see KDE as "the sanest" default.
> Debunking: lInUx Is JuSt A kErNeL
Ah yes, countering a meme with another meme. Good one.
There are a huge variety of laptops with different size trackpads, different positions, varying levels of palm rejection etc but there's zero customisability around this seemingly simple behaviour.
My Windows dualboot has no such issue and macOS of course (using a MacBook) works fantastically without this limitations.
https://www.freedesktop.org/wiki/Software/libinput/
https://wayland.freedesktop.org/libinput/doc/latest/touchpad...
I'd file a bug though, and see if whatever's wrong can be fixed for every trackpad of that same make/model.
My "issue" is described as expected behaviour in this documentation: https://wayland.freedesktop.org/libinput/doc/latest/palm-det... (the "A" event).
Fortunately source is there and it is easy to patch (try to set 0%). That's quite common, for example there are several patched libinput on AUR [5].
Does your hardware has firmware palm detection mechanism? Current bug [6] (Palm exclusion zones are not worth it on some hardware).
[1] https://wayland.freedesktop.org/libinput/doc/latest/palm-det...
[2] https://gitlab.freedesktop.org/libinput/libinput/-/blob/f2ba...
[3] https://gitlab.freedesktop.org/libinput/libinput/-/issues/19...
[4] http://who-t.blogspot.com/2016/04/why-libinput-doesnt-have-l...
[5] https://aur.archlinux.org/packages/?O=0&K=libinput
[6] https://gitlab.freedesktop.org/libinput/libinput/-/issues/43...
The touchpad is about 7 fingers in width and the palm exclusion zones are a little more than one finger on each side; this is roughly 30% of the trackpad, or 15% each side, certainly bigger than 8% and even that would be too much.
Additionally, although the documentation does state that rejections should only happen for a vertical like movement, it also happens for a completely horizontal one.
My Dell Latitude E7440 follows description and I believe same is true for most of the users. I have to start movement at least diagonally, once it catches further direction does not matter.
It produces no output when running `libinput debug-events`. I've recompiled my version with 0% just to check.
Disabled. I like how it is easy Arch allows such experiments:Ultimately, I would prefer that this kind of feature is configurable in userland. Wayland's documentation page mentions that "Data from touchpads showed that almost all palm events during tying on a Lenovo T440 happened in the left-most and right-most 5% of the touchpad. The T440 series has one of the largest touchpads", and this may have been true several years ago, but it's quite common now to have larger and wider form-factor touchpads.
Which "Linux" desktop are you referring to?
Personally, I see this change as a regression from the highly configurable synaptics driver.
As you've asked, distribution wise I typically run an Ubuntu LTS with Gnome 3 but rolling releases such as Manjaro and lightweight DE like XFCE are also very nice.
My guess is that the author prefers Gnome because yes, it has fewer features, but those feel more polished. KDE is powerful but some less frequently used features felt more like functional prototypes that were thrown somewhere into the nth level of the system settings.
Then again the last time I tried it Gnome had a lot of issues as well, so maybe I'm completely wrong nowadays.
This came up recently with SolveSpace. Two developers spent an amazing amount of time getting scroll wheel zoom right. Discussion here: https://github.com/solvespace/solvespace/pull/825
Love these guys, they give a crap about usability. BTW next release soon - after a bit more polish. Polish take time and work, but do you really care about the software if you don't spend some time unclogging the toilet?
I noticed Ubuntu have switched to KDE (or, alternatively, LXDE) as DE for their "Studio" variant. I'm guessing that's mostly because the minimal window decorations for resizing etc makes gnome hard to use, and Studio is for large notebooks or desktops anyway. I think the exercise of patience that was resizing windows on gnome2 has slightly improved, but I'm still speechless as to the loss of the global menu to be replaced by ... a centered clock accompanied by a minimal dot that I found out to display notifications after a while, and nothing else.
I mean I'm glad that F/OSS for desktops still exists at all, but gnome3 is really just a big regression for no reason at all, and I'm starting to get a bit concerned where gnome is heading. It's not that we have a wealth of new desktop apps anyway. Maybe Ubuntu is testing the waters to switch to KDE as well.
The decision by the Ubuntu Studio variants was made by the Ubuntu Studio developers and not by Canonical. The developers are also maintaining Fedora Jam with KDE installed by default too. Unfortunately all the big commercial distros are using GNOME as default DE because RedHat is providing the commercial support for GNOME already and it's easier for them to just make the same choice. So I don't think Ubuntu will switch to KDE anytime soo, even if GNOME developers don't like Ubuntu and make their opinion very public.
For those interested on why artists like Plasma so much, David Revoy made a nice summary: https://www.davidrevoy.com/article783/kubuntu-linux-20-04-fo....
Alas, my white whale is focus-follows-mouse, and I just... can't have it. Not worth abandoning the Mac over, not for me, but.. arrgh.
This maybe would be solved by a window manager that enforces never allowing windows to stack depthwise? Which OSX doesn't have of course. Just size-and-position-hotkey workarounds
In real, XWin-style focus-follows-mouse, the window you mouse over gets the focus, but, isn't pulled to the front. If you click, it gets the front and the focus.
I use Moom, a semi-tile snap-style window wrangler, and a widescreen with three panels. What I want to do is just slide the cursor over and start typing, but I have to remember to click, and often enough I just don't.
The One True Wiki has a nice discussion of the subject: https://wiki.c2.com/?FocusFollowsMouse
Alt-tab didn’t work because its mru usually gets spoiled by other (browser) windows. If only there was a setting that fixed alt-tab mru into a stack. Alt-tab-tab to switch to app which started second may be much better than mru for some workflows, because you can always predict what it does with certainty of 1.
Ended up taking it back for a refund and getting a g703 instead.
Honestly if the "2s Anywhere" had had the setup you described I would have kept it. Logitech tried to explain that middle slick was still there, on the button further back towards the palm rest, but it felt so unnatural and inconvenient. The 502 looks like a nice piece of kit.
"Be the change you want to see in the world" - ghandi
That said, you can't do that with windows or macosx.
Now capitalism works, so apple and microsoft apply the money they make to hard/unsexy things like sleep-wake bug fixes and APIs and sane defaults.
But they also bake advertising into their codebase and leech data home to the mothership and prevent you from running all the programs you'd like.
So look at linux as an opportunity.
https://slated.org/the_poetterisation_of_gnu_linux
The more you know.
EDIT: nope, it's more direct: https://en.wikipedia.org/wiki/Lennart_Poettering
a connection the article didn't make clear.
I'm not sure using someone's surname is such a great idea for this purpose. But I now at least understand why. Also their anger at the added complexity being done to Linux and surrounding structures including but not limited to systemd.
But these structures are still in flux. Even if it means a mess along the way.
I'm not as sure with Macs (and the surrounding culture isn't really eager on such things anyway), but there's a long history of people modding Windows in various ways, that goes back to the DOS days. Of course your customisation is highly unlikely to make it back to MS, but things like WindowBlinds were extremely popular.
> "Be the change you want to see in the world" - ghandi
Gandhi (spelled thus) never said that. What he did say (in an article about first-aid treatments for snakebites, weirdly enough), was this:
> We but mirror the world. All the tendencies present in the outer world are to be found in the world of our body. If we could change ourselves, the tendencies in the world would also change. As a man changes his own nature, so does the attitude of the world change towards him. This is the divine mystery supreme. A wonderful thing it is and the source of our happiness. We need not wait to see what others do.
-- The Collected Works of Mahatma Gandi, vol. 13, p. 241 (http://www.gandhiashramsevagram.org/gandhi-literature/mahatm...)
Not quite as snappy, admittedly.
[0] https://en.wikipedia.org/wiki/Muphry%27s_law
This is the absolute CORE of the problem with open-source software. Someone becomes the "maintainer" of a project, often through no skill of their own (they just showed up at the right time), which effectively makes them BDFL with infinite veto power. Hard-forks of popular projects are politically unpopular (for good reason), so that isn't an option. Instead, the whole world of software that relies on a package is broken or fixed at the whim of one dude.
That’s a bit unnuanced, isn’t it?
Nobody randomly becomes the maintainer of a big/popular project without having a history of contributing. They were the ones willing to pick up the task of doing free labour for everyone after the last guy didn’t want the job anymore.
As maintainer of a project, their job is to try to respond to bugs, maintain it, improve it and keep it working. All for free.
If somebody submits a low quality or low effort patch which goes against the projects conventions or general strategies or patterns which will over time increase the maintainer’s burden, he is under no obligation to accept that patch.
On the contrary, whoever submits the patch is the one who wants to benefit from all that time invested into the project so far, for his own good. I think it’s absolutely fair to expect/demand that they are also willing to put up some effort when they send in patches and receive feedback.
Usability is not about how many features a program has. Usually more features make it harder to have good usability.
If anyone wonders, here are three from Mac last I used it:
- fn took the place of ctrl on the laptop (but not the full keyboard). Unlike on Dell and Lenovo who also has this problem it could not be remapped neither at boot nor in the OS.
- CMD - tab forced me to think ahead of time if I want to change to the last application or the last window of the same application. I.e. switching between two Safari instances takes a different key combination than switching between Safari and IntelliJ.
- modifier keys worked differently between applications, e.g. selecting to the end of a word was either ctrl-shift, alt-shift or CMD-shift depending on application.
That’s a feature, not a bug. I personally hate having to tab through a million browser windows to find the application I need, or having to tab through unrelated applications when looking for a browser window, which is what I have to put up with when using Windows.
KDE does this perfectly however. It defaults to Windows/classic Gnome 2 behaviour but can easily be configured however one wants it.
I don't appreciate the Mac/Gnome way.
[1] https://support.apple.com/en-us/HT201236
Things that annoy me on windows: - No tabs in explorer. Imagine having a web browser that didn't have tabs, that's how bad this is. - No preview in explorer. Mac has this awesome feature where you press space and it gives a quick overview of most files (not only images but also pdfs, .docx, ...). - No column view. Column view makes it much easier to navigate across directories, and back and forth between subdirectories of a root directory.
- "Looks great. But there are no mirrors. Isn't that dangerous?"
- "Yeah, but that's not a bug, it's a missing feature. Besides, we don't like mirrors because in all cars they need to be cleaned all the time."
- "Really? Apparently the KDE cars also have mirrors but different technology, and they don't need to be cleaned at all. Also, what's the difference between a bug or missing feature if a lot of people complain about it?"
- "Oh yeah. But honestly we really don't like that people have to clean their mirrors, so we prefer not to have them."
I'm not saying that it's not a nice feature to have, but it's also definitely non-trivial - it's not only thumbnails for images, if you do that people will also demand thumbnails for videos (including, of course, all ancient formats), PDF files, Word/Excel/PowerPoint documents, HTML pages etc. etc. etc.
I do care about this feature just like the author and though I don't have any evidence supporting my thinking, I think nobody enjoys trawling through bunch of weirdly named files (which is typical of how downloaded image files get named by default) looking for that specific picture/icon. After the Gnome 3 debacle where they basically refused to listen to the users and even removed not-so-obscure features like tabbed windows in nautilus (which I noticed is back now), I just didn't have the confidence that raising a feature request would amount to much.
It wasn't until the arrival of Nautilus with 1.4 that the requirements jumped and the performance tanked.
XFCE and KDE both do a better job than GNOME in this regard. And also Windows Explorer was and is much much better in this area.
Also why are folders sometimes cluttered all over the place and shorts cuts so weird?
Well I fixed it all with Forklift but I also grew up with Norton Commander ;)
They actually responded a few years later and said that this is the intended functionality.
Maddening.
It's probably annoying to learn a new paradigm, but you could make the argument that it's worth it to learn something that isn't lying to you.
Alternatively hold Option when opening the Edit menu.
This doesn't change the Edit menu for me. Does it work for you today on latest macOS?
It is the existing convention, the Mac Finder convention. And yes, it's effectively the same as cut and paste.
I think the point is this doesn't match the convention in the rest of the macOS. A convention of one is a poor convention!
On files, if you cut a file on Windows for example, nothing happens. Until you paste, no operation is done. So it's not the same thing, and I think the way Finder handles it makes more sense.
Because cutting-and-pasting is a destructive action that can lead to data loss.
Under the conventional implementation of cut-and-paste, it's easy for a user to inadvertently cut-and-paste a file, when they meant to copy-and-paste said file, either through a misclick or, by hitting the wrong keyboard combination. This is because:
1. The menu option for cut is right above the menu option for copy
2. The keyboard shortcut for cut (command-c) is just one key away from the keyboard shortcut for copy (command-c) on a QWERTY keyboard
Cutting and pasting deletes the file from its original directory, however under a traditional cut-and-paste operation, the system does not ask for confirmation. Consequently, if a user mistakenly cuts a file or directory without immediately noticing their mistake, their files could be rendered unrecoverable (and keep in mind that there's no particular reason why they would notice... the UI provides no special indication when a file or directory is deleted via cut-and-paste). This is arguably a very bad user experience.
The equivalent action to cutting-and-pasting on OS X is copying, pasting and then deleting the original file. By adding in this extra step, the UI has forced users to acknowledge that their action is potentially destructive and unrecoverable.
Also notice that the command-x shortcut in Finder copies a file. It does not cut the file. Again, this protects the user from inadvertent data loss if they use the wrong keyboard shortcut.
It's a rather unusual move Apple has made here by breaking convention, but I think they've made a wise wager that users would rather be annoyed by a small extra step, then be faced with the loss of important data.
Thinking about this design choice, I now wonder how many times I've had files mysteriously go missing on Windows and other operating systems simply because I used CTRL+X when I meant to use CTRL+C
Isn't this the same for all cut-and-paste? It's expected.
What's special about files that mean they need special protection?
Pop them in the Bin until they're pasted if you want.
It's not as unfathomable as you make out.
If I accidentally cut-and-paste a file or directory, the damage could be immense. Years worth of important documents, records, photos, etc... could be gone, because the user's finger slipped and pressed CTRL+X, rather than CTRL+C.
Whether or not the operating system should be protecting users in this manner is fully debatable and a matter of opinion, but Apple's approach here is definitely safer (at the cost of being a bit more annoying)
And you always have undo, just as with text.
a) you could argue that cutting text isn't as destructive as deleting a file, although they could be one and the same if you happen to have an entire file's text selected
b) mechanisms for undo'ing text operations tend to be more sophisticated than undo'ing filesystem operations; I might argue that's a separate problem to be resolved
I'd be perfectly happy if this were an option, buried in some obscure preference panel somewhere, labelled "yes, I really want to shoot myself in the foot" but, as it stands, I don't even get that.
I would have said the same thing. But then again, I'm sure there's been times where files have gone "missing" on my computer. Did I misplace them? Accidentally deleted them? Accidentally cut-and-paste? Who knows.
>I'd be perfectly happy if this were an option, buried in some obscure preference panel somewhere, labelled "yes, I really want to shoot myself in the foot" but, as it stands, I don't even get that.
Yeah, no argument from me there. I'd appreciate an option buried in the OS X CLI at a bare minimum.
Zero. If one CTRL+Xs accidentally, Windows and most Linux Desktop pickers change the highlight colour before the copy. At worst you can CTRL+Z it after or copy it back. It's not a 'destructive' operation since you always have one copy of the file.
It's a typical case of Apple deciding users are stupid and therefore should be limited, combined with the typical 'just everything Apple does' syndrome.
Other file managers don't really cut and paste. They have a weird modified cut that doesn't exist anywhere else.
And for the clutter, you can configure Finder to be more militant in how it displays/orders things.
The only gripe I have with Finder is needing to set up a million QLPreview things to do better spacebar peeking. Otherwise, it's fine - it "just works" and isn't fancy.
Cmd+C: Put file to Clipboard
Cmd+V: Copy file in Clipboard
Cmd+Option+V: Move file in Clipboard (aka Cut)
Tested on El Capitan through to Mojave.
How much are you willing to offer?
Here's a trivial to reproduce and obvious issue that's been there for several years now:
1. Open a directory that loads slowly (e.g. one with thousands of files on a smb3 mount)
2. While the list is loading, select a file (but do not open it)
3. Wait for the whole list to load
Once the list finishes loading, the file on the very top of the list gets automatically selected (discarding your selection).
Thus, if you select a file and click open, in the time between you select and click open, the selection can auto-change and you'll end up opening something else than what you've selected.
It is this bad.
On the plus side it should be an easy fix?
There is a lag when hitting <enter> and the last <down arrow> is processed out of order :/
Edit: Alright, alright, forget the old computer. My new ones get it right too. All of which is a red herring, because the point is this behavior is ridiculous and never should’ve shipped.
It's relatively simple: the picker executes file-opening asynchronously, and only checks which file was selected at some indeterminate point after enter is pressed. In the meantime, the down arrow input in the main GUI changes the selection. The keypresses are always in order.
Whether or not that's the correct decision, it's not an inconceivable design. That example is probably one of the only times it would matter, since you would need async code that cares about some part of the file picker state.
The only potential downside would be if people expected to be able to cancel the <enter> action. But that would be unusual, I think.
In this case, the async logic is not advanced. In fact, I'm willing to bet that this is what happened: at first, the file-opening was synchronous in the GUI. People complained that opening certain files locked up the file picker, so a developer sticks the file-opening code in a background thread. This produces the above bug, without complicating the input design - in fact, preventing the bug requires making additional changes to the code in some way.
I have never looked at the code in question, but it almost sounds like the developers went out of their way to create these ridiculous bugs, because the simplest solution definitely would not have something like that happen: The handler for Enter gets the current selection (which will definitely be the correct one) and opens it.
The actual opening can be slow, so that can be done asynchronously. But to interpret "Enter opens the current selection" as anything other than the current selection at the time the Enter key event was received is definitely in the realm of rookie mistake if not worse.
If getting the current selection of a UI control somehow needs to be done asynchronously, then something is seriously wrong.
As a long-time Win32 programmer, the manifestations of these bugs are definitely hard to conceive.
What makes you think this is the case? X11 has an ordered event queue and there is no reason an application can't process the keystrokes in the correct order.
> Another issue is, there's no mapping of pid <-> X11 window. It's simply impossible with the current design of client-server.
What do you need this for? There is _NET_WM_PID [0] which can be set by clients.
[0] https://specifications.freedesktop.org/wm-spec/wm-spec-1.3.h...
> What makes you think this is the case? Many other ways in which async behavior happens on X11, on any machine I've tried, with the mouse cursor lagging to register a click event, for example.
Frankly, it is completely fucking unacceptable for software to miss keystrokes or read them out of order. This is basic programming 101. Any code which exhibits such a problem has a shit design and needs to be rebuilt from scratch.
This sort of thing is exactly what drove me away from the mainstream Linux distros, to create my own from scratch. If and when I ever happen to boot up something like Linux Mint and use it, (shudder,) the sluggishness of gnome3/cinnamon/whatever and all the other bloatware running on the system is readily apparent. My system is always FAST and snappy. Input lag or missed keystrokes? Not on your life.
Reading through the HN comments on articles having to do with speed, snappiness, responsivness of a UI, and excessive bloat of software, it occurred to me one day that these kids (here's the root of the problem) don't actually have a clue that things could be any different than they are. And that's why we're stuck here.
They have literally grown up with slow, bloated shitware for their entire lives, so they actually think all the bloat and slowness is normal and necessary.
Notice how the GP blames X11? They grasp for excuses rather than exercising deep thought, while demonstrating low standards, complacency, and laziness. This is what happens when the common masses take over anything. Shallow thinking and low standards prevail.
These kids have a false conception that doing away with the bloat would mean losing a bunch of features. But in reality we could indeed have fast, responsive, light weight systems, with all of the same features and even more, if only programmers cared enough, or were talented enough to write good software.
Just like how the entire purpose of a certain very Gimped graphics editor was probably to occupy and exploit people who could have worked on some better project. It seems to have worked for a long time; only now after many years do we finally have Krita, but it's KDE only.
It's obvious microcomputer UNIX has been under assault for a long time by those who don't want the dream of a free, open desktop to be realized.
There is a standard window property that anyone can set and that any halfway sane UI framework sets. I ran into maybe one that didn't and even then it was five lines of copy/paste code to add it.
I'm having trouble with the part of the design where we recognize that a file is selected (such that pressing <enter> causes a file to open), see the <enter> keypress, and then fire an event saying "open any file, whichever one you feel like" as opposed to "open this file right here, the one we can see is selected".
If, as you maintain, the keystrokes are processed in order, then at the time <enter> is processed, we specifically take notice of which file is selected. (Because, as I said above, we only know that <enter> should open a file at all because we see that a file is selected.) We fire the file-opening event after that. This isn't a mistake we can make by accident; we'd have to be making it on purpose.
I can see where the assumption that the keystrokes are being reordered comes from; it's much less insane than what you're proposing.
I don't find such a design that surprising. If you like simplicity, you would be tempted to go for it, because it doesn't involve duplicating data (namely, the selected filepath) between the main GUI state and the event handler for opening the selected file. If you're writing in a memory-managing language like C, it's even more tempting - by not copying data, you don't risk forgetting to free it later.
Having said that, I meant it more generally in the sense of their respective architecture design paradigms than details of a particular implementation.
It's easy to imagine. Someone kept a variable for the current selection and instead of copying it during the enter event they just read it when the delayed action happens. It often takes time for a second window to open or a page to load. If that new window references the current selection you are going to run into bugs.
It's a design that has caused many video game exploits. You can do impossible things like disassemble a Fat man barrel and put it on a pistol in Fallout. You will get a rocket launcher that has the fire rate of a pistol except it shoots nukes and only uses bullets as ammo.
It's almost a classic TOCTOU issue.
https://en.m.wikipedia.org/wiki/Time-of-check_to_time-of-use
(Which is also, why applications like Photoshop on Windows weren't a viable option for professional users for some time, until hardware became faster. How do you draw or paint, if the events representing your gestures are not synchronized, as they are subject to system load?)
[1] https://github.com/lxqt/pcmanfm-qt/issues/462
The slowness is only caused by the GIO's G_FILE_ATTRIBUTE_STANDARD_CONTENT_TYPE and g_file_info_get_content_type. Wherever they are used, there will be a slowdown because the contents of files, that lack extensions, should be read for finding their mimetypes. Almost all the time is taken by that; the other operations are done pretty fast — particularly, the Qt GUI takes no time in comparison.
So maybe I'm not right about GIO as such. But Nautilus is also excruciatingly slow despite being more fully asynchronous.
However the most disturbing thing is that events might get to be processed our of order. Even if you stored current state in a proper Model, there is nothing you can do if your event queue ends up being "<down>, <down>, <enter>".
I guess that's why Qt prefers to do all UI event processing exclusively in a single thread. The event queue will always be serviced in order.
In fact I have never since directly uploaded anything from my own personal file directories, instead I make a copy of it under /tmp for the upload process.
Not sure if this is the same bug you are talking about
Here's the thing that convinced me, a while back: https://wiki.gnome.org/Attic/GnomeScreensaver/FrequentlyAske...
I'm sure there's people here who are long-time contributors and/or supporters. Just ignore me, I'm not your target audience. ... I'm really not sure who your target audience is, though.
We should ask Havoc Pennington about this, he must have names for all the personas that he came up with, after reading "The Inmates Are Running the Asylum": https://mail.gnome.org/archives/desktop-devel-list/2002-Dece...
I actually have a copy of the book, and it is indeed a good book. The problem is that it somehow empowers GNOME developers to keep creating/maintaining/rewriting broken software, all in the name of "usability".
And it is exactly to let themselves yell that, they work hard to alienate few normal devs left in the project.
I understood now that Gnome 3.0 was from the start Redhat's fully intentional attempt to appropriate the project, and is not dissimilar to Microsoft's embrace, extend, extinguish.
1. Get command of some more abandoned parts of the project.
2. Push a series of guaranteedly unpopular sharp direction changes which will lead to loss of devs.
3. As devs leave, you get more reinforcement to your casus belli, saying that "nobody maintains this pile of garbage, so now I am taking it over too"
4. Rinse, and repeat.
they'd be the only left able to offer (paid) support?
I think, in their view, all comes after taking hold of the project. But here, they got that, and now what? Now, all lofty plans have to meet the cold reality.
It's like a mutunineers on a ship throwing officers overboard, just to realise hours later that they are in the middle of an ocean, and they have no idea how to sail a ship without skilled crew.
I saw that happening in public companies: a single asshole activist with puny few percents of the company keeps throwing big radical decisions onto every shareholder meeting, until he gets everybody so discombobulated, or the company so disfunctional that others either leave the company to him for taking, or he gets a legal casus belli to sue the company to try to wreck it further, and then seize it.
For such people, it doesn't matter if the company in question dies, as long as they come out with gain. Some are plainly idiots with too much legal education, and some are genuine degenerates doing it with full knowledge of consequences.
There fewer people contributing because programming in C is no longer fun or hip. It is not Gnome problem but the whole Linux ecosystem. Gnome is slowly adopting rust but the core framework is still C. There is plenty of active forks of Gnome2 people can contribute there.
I would tell the same to Poettering, Clasen, and co.
There is really nobody who obligates them to work on their "innovations" in GNOME with religious zeal if the rest of the project showed no interest, speaking lightly.
If nobody wants to work on their stuff, they can't claim "victimhood" as if that happens as a result of somebody's ill intents.
I have to reference Torvalds vs. SystemD here as an example how Sievers, Poettering, and co. instantly drew up a picture of kernel community being some kind of a bullying ring when the only thing they did to them was to ignore their (bad quality) patches.
Again, if you are a developer and you disagree with someone's choices, you are free to take it in your own direction. You do not have to work on anybody else's stuff if you don't want.
That would be best said to persons named above.
They were free to fork GNOME into their touchscreen based imaginary future, and experiment with it even more freely as a minority group, rather than trying to hijack the project, and getting stalled half-way because of popular pushback.
Again, please do not spread these unfounded conspiracy theories. I can explain more what I mean by this, but it seems unlikely you are willing to hear what I have to say. I can tell you if you're trying to convince me to be hostile towards any specific developers for any specific project, I will have to decline to get involved with that. You don't have to resort to character assassination, if you have some ideas on a good technical direction for a project, just make the argument and write the code: people will listen if your arguments are sound and your code works.
GNOME 2 was a project of 100+ developers.
TOPAZ was a half-baked tablet UI tech demo from a dozen Red Hat employed devs, later dropping to 7-9 regularly active ones.
Tell me what is more to explain about this?
> The reason is simple: Nokia. Nokia (and to a much lesser extent, Intel) built up a lot for Maemo and Meego. Just for KOffice/Calligra, at least twenty people were paid to work on the documents application. For all of Maemo/Meego, the total number of people Nokia funded was enormous.
> And then Elop, and the burning platform, and Windows, and well, that was 2012.
> By 2014, my company was dead, amongst others, and, yeah, the peak had peaked, and the big chance for free software had gone.
[1] https://news.ycombinator.com/item?id=25489580
Is this advice meant to be applied against all people, or just other developers? I certainly wouldn't apply this standard to RIAA lawyers suing kids. I judge them to be worms even though I never worked with them. And don't even get me started on politicians, I've never worked with one but I certainly feel entitled to have harsh opinions about some of them.
If the advice is limited in scope to professional peers, then I have to disagree with it; having double standards for people like yourself isn't great advice.
If we are trying to be good open source citizens and avoid unnecessary fights, you can apply it just to that.
I respect that you are willing to admit you don't know the full history and implore others to understand why for example, certain decisions were made. It seems as if many people love to theorize about what these are, making correlations which are usually driven more by their feelings than reality.
I feel like character assassination was a phrase that I feel aptly describes how I've seen a lot of people treat people like Lennart Poettering. I feel as if some people are unable to separate person from their opinions. Not considering that person like they are more likely to do so if they were in person.
I sometimes feel like this attitude is more strongly felt by some people in a community where there is freedom to take a project in another direction if they desired (I know that not everyone has this option).
I do think however that the article of this thread expresses their opinion on an issue in a way that it explains how it effects them without resorting to emotional attacks towards the project and it's something I really liked about reading it.
In such case disjoint between users and developers is even further. I am professional developer, yet I have zero contributions to my framework and just a few contributions to libraries. After 10 years my contributions to Linux community limited to bug reports, few patches and manuals.
In reality there is not enough community support to maintain existing systems. "Freedom to take a project in another direction if they desired" by individual is overrated, that's TempleOS.
EDITED: Some bragging about making a difference
There are a lot of projects with less corporate influence. No systemd on BSD, but hardware support is not as good. Generic distributions is something that works for most of the users. There are a lot of niche distributions and projects (Void Linux runit!). Current state is just a reflection of users priorities.
[1] https://news.itsfoss.com/huawei-kernel-contribution/
These developers do not wield power over anyone and they are not filing lawsuits. They are developing code, either as their job, or as volunteers. And in either case, contributing their work as open source.
It might help to take a little perspective before publicly passing judgement on _individuals_ and what you imagine their intentions to be rather than merely judging the merit of their contributions. Those are completely different things.
I get that the two things have some overlap and aren't cleanly divisible. What we do is a major part of who we are.
But I mean, it's one thing to say "I think it [his architecture] is awful", or even "I think his architecture had a negative impact on people/society/cherished values/whatever" but quite another to say "I think he sought the ruination of everything good and decent because he was a demented and feeble mind." Because, yes, I do think the last one would only be appropriate if you actually knew something about the guy...
Edit: And yeah, of course, I'm not trying to censor anyone's opinions. Of course you can _have_ the opinion, you can even express it. I just think that it's not what engaging in productive/civil discourse looks like and, depending on the venue, people may call that out or whatever.
This little bastard knows EXACTLY what he is doing to Linux.
You are of course free to make some smart fuck remark in response to this, or "report" the post to the local Gestapo, or whatever other fuck-ass action strikes your fancy.
From some of your other comments I gather that you've been around this material for a long time and you know a lot about it. Why not share some of what you know, so others can learn? and make your substantive points thoughtfully? Then you'll be making this place more interesting, and your points will have some persuasive power. Just venting only adds energy and credibility to the views you disagree with.
I get that there's a low probability this argument will work with you but I think it's worth trying to persuade people that it's in their own interest to follow the rules, which are designed to try to keep a community that's interesting for everybody:
https://news.ycombinator.com/newsguidelines.html
SHOCKER!
> 'Please don't create accounts to break HN's guidelines with, no matter how strongly you feel about something or someone.'
What?
Is that really how you think? That I created this account "just to break HN's 'guidelines' with"? Like that's my sole mission in life: just to piss you off.
Did you ever stop to consider that I am simply sharing my open, brutally honest opinion, based on a rational consideration of a large pile of facts?
By the way, the word 'guideline' implies that it's optional. So what are they actually--rules or guidelines? Do you just redefine language to be whatever you want it to be?
> 'We're trying for something else here because it's the only way to keep the site interesting.'
What does this mean, exactly? I was happy with the status quo of an open, honest exchange of information on an open internet. I don't recognize this Soviet Union style gulag you've converted it into.
You want to try "something else"? How about this for a shocking new innovation: a forum where people can express their opinions without being immediately descended upon and harassed by "no soup for you" Nazi mods.
Is that the crowd you want to nurture and encourage here: populated by idiots and cowards with brittle personalities who can't tolerate differing viewpoints?
> 'From some of your other comments I gather that you've been around this material for a long time and you know a lot about it.'
Well, HOLY SHIT! What an amazing admission.
So we've progressed from the original "this guy is a useless twit, why just LOOK at the shit he posts, we must BAN BAN BAN! don't worry about how he thinks or feels, JUST KILL IT WITH FIRE!", to what is now a much more conciliatory ban message. Instead of the door being slammed in my face, now it is closed with a huff.
Given the observed progression, at this rate within the next 5-10 years at most you'll be begging me to stay, in slowly dawning recognition that the things I know and understand might be of some use to you. Progress.
The catch is, you'll be balls deep in your long-anticipated World War against Russia and China by then. But already at this moment there is no hope that you could ever convince me to stay and help or encourage you with that. Too little, too late. You burned that bridge long ago.
There's countless others like me who have taken our prodigous skills and talents and abandoned this corrupt and wicked society. We have retreated to the hills and stockpiled plenty of popcorn to enjoy the fireworks of your demise. "Gone Galt," they call it.
You couldn't pay us enough to do anything for you people anymore. This is what you have done to yourselves, through countless means and methods, not the least of which is your open embrace of censorship of formerly free and open internet forums.
Did you ever consider that shadowbanning people is an extremely antisocial and evil thing to do to someone? Of course you didn't.
I don't entertain any idea of trying to help you, or others like you, by posting in places like this. I only do it to preserve the idea of resistance in others who are subject to your tyranny.
> 'I get that there's a low probability this argument will work with you but I think it's worth trying to persuade people that it's in their own interest to follow the rules'
Did you ever consider that all of these bullshit rules and regulations people like you enact and prostrate yourself in worship of, aren't in the best interest of society*, and never were?
Did you ever consider that it's YOU who is the problem here?
LOLOFCOURSENOT! YOU ARE WAY TOO SELFISH TO DO ANYTHING LIKE THAT.
I suspect that, in many instances, people who do that are not trying to convince anybody of anything. If they expected to be greeted everywhere with agreement then they would not go around saying things which they know perfectly well are not likely to result in a vigorous and healthy debate if they were said to strangers in the street :)
You can literally take millions of lines of code that they may have written wholesale, and change a single word in it that you don’t like.
In open source, they have nowhere to hide. If you disagree with a certain decision they have made, you are welcome to take the effort they have put in to implement the hundreds and thousands of other decisions they have made that you do agree with, with a simple “git clone”.
Worse yet, its developers consciously make design decisions that make it hard to write applications that play well with GNOME without taking a dependency on it - their take on it seems to be that GNOME is a platform, and their main interest is supporting "GNOME apps", even to the detriment of all the rest.
Between these two things, deficiencies in GNOME affect a lot of people who didn't necessarily choose to be affected.
https://trac.transmissionbt.com/ticket/3685
"I guess you have to decide if you are a GNOME app, an Ubuntu app, or an XFCE app unfortunately ... It is my hope that you are a GNOME app."
And because I have to keep saying this, that is a non-issue now anyway. XFCE supports the new app indicator protocol, and since Ubuntu dropped unity their support for it is available as a standard GNOME extension: https://extensions.gnome.org/extension/615/appindicator-supp...
If you sincerely believe that it's okay to have a single DE be a self-contained app platform with no interop, that's up to you - but do understand that this is a very debatable premise, and people who don't agree with it have very good reasons to be annoyed with GNOME.
The GTK file chooser dialog is easily the most garbage piece of fucking shit. Honestly, sometimes, if I want to post something online I just copy the file to my Mac first just to avoid dealing with the fucking piece of shit GTK file chooser. If I need to sort through a bunch of files, easier to run Samba and sort through them on my Mac, because Nautilus was scooped out of the same fucking pile of shit than the GTK file chooser was scooped from.
As far as I can tell, the last time that browsing files on macOS really changed was 2007, when 10.5 came out and had Quick Look. Since then, browsing files on Linux has somehow gotten worse. Do you know what it’s like on macOS? Every once in a while, Apple quietly adds support for previewing a couple more formats.
If it is so, then I must consider switching! (At the moment I am using Xfce.)
Additionally, programs may rely on different GTK versions, which also makes things confusing. For example, Visual Studio Code and Firefox use GTK3.
edit: extended with programs explanation
I actually like background textures for my file manager, so i'm happy this stayed.
But there is also tabbed and two pane view which got axed from Nautilus too.
For complex paths, I found that this is the quickest way to open the file I want.
Nautilus is pretty, and for the most part fairly nice. But lacking typeahead just makes it unusable.
One of the thing I loved about the Amiga was that because of how the API was structured, it was easy to replace things like this, as you could patch every API endpoint. As a result, it took very little time before more advanced replacements for the standard file requester appeared. You "just" had to patch (via OS-provided functions) a couple of library calls.
I must have installed a Linux distribution 100 times with the intent of using it as a desktop and lasted less than a day every time. I’ve been doing it since 1998. Literally something that horrible punches me in the face every time.
I refer back to my comment here: https://news.ycombinator.com/item?id=25678434
I bought a Mac now. I’m too old for the fight.
Everything I do server side is on Linux but the desktop is vile and I want no part of it any more.
I said the same a decade ago. As of last week, I'm back on X11... chipping away at configs for hours and hours and hours.
But I have libnotify popups now. :D
At least now I only have to put up with a slightly dated and crufty interface but I can use my PC to full potential - gaming AND work AND working bluetooth. Crazy huh?
In my case, I also managed to notice that my computer is much faster than it ever was on Linux, which is nice. If I had an old Core 2 Duo Linux would make it fly, but alas, I can afford a modern PC.
The compromise for me before migrating to Mac was using Windows on the desktop with Ubuntu VMs in Virtualbox. I had whole clusters running on my desktop.
Windows 10 is fairly decent on most hardware I have found. If they finished off all the little quality issues, had a decently integrated mobile ecosystem and stopped all the telemetry bullshit I'd be there now. I had some hope back in 2015ish when I was full time windows desktop dev with WP handset etc. Alas the world moved on so I dug the old Unix hat out.
So in that case, Windows is the best compromise. And while I'm still in the proprietary world, I'm outside the walled garden.
In any case, I haven't hit any WSL2 bug or corruption in these 6 months (nor blue screen), so fingers crossed.
I wish you continued fortune with WSL2.
You are not allowed to complain about "Linux" when your beef is really about Gnome.
Linux itself is fine. It's the layers of shit smeared on top that are not.
Reference photo: https://en.wikipedia.org/wiki/File_dialog#/media/File:An_%22...
In this, a full path can be pasted in to both the top bar where it says "This PC > WINDOWS (C:)" and also into the blank "File name: | |" box.
I'm pretty sure I remember this dialogue being available since NT days. It seems fairly discoverable to me, clicking in the empty space of the current working directory path changes it to show the text path of the directory. The "File name" box offers autocomplete if you did something like "C:" as a file name, or started typing a folder name of the current working directory.
So many times I would go to a folder, start typing the name of a file/sub folder that I knew was there and it was like “nope! Let’s instead search whatever default directory instead. Apparently this behaviour is by design and alternatives won’t be considered. (This was when I was using Ubuntu 18/19?) at some point they changed a bunch of default things in the UI interface (including getting rid of what I considered was the far superior previous lock screen manager).
You could type /tmp/a. and it would autocomplete it to /tmp/a.png
It is a good idea, but I type too fast. So I would write /tmp/a.png and then the autocompletion triggered and replace it with /tmp/a.pngpng
This is so sad.
Autocompletion of filenames should work perfectly no matter the conditions. If "ls" can list tens of thousands of files in a fraction of a second, there's no reason that autocomplete has some delay. I can see why this happens, maybe you have a thousand images in /tmp and the file picker is opening them all to compute their thumbnails (which in my opinion is useless, but whatever). Then it uses quite a few kernel threads and it clogs the system, making the completion to fail. But it sounds like this problem should was already solved many years ago, and that modern "improvements" of the file picker made it fail.
This, other UX and even performance (!) issues that have been mentioned in siblings as well as TFA makes the Gtk file pickers easily one of the TOP10 reasons to avoid Gtk and Gnome for anything.
The interaction design of these dialogs is simply shit. Windows (and also KDE, which has been using a copy of the Windows dialog for about 20 years) show how to do it correctly.
(I actually asked someone more knowledgable about this once and was told that it's my fault for using the file picker incorrectly and I simply need to stop doing that.)
[0] https://en.m.wikipedia.org/wiki/IBM_Common_User_Access
The past 5 years though have been a nightmare, MS has really messed their UI up, and various applications/toolkits or whatever the problem no longer properly support the CUA guidelines which in the past were the one assured way of doing an operation cross applications and various OSs (windows+linux/kde).
Maybe its time to start going to a few developer conferences and giving talks about how useful system wide shortcuts that work across multiple OSs really are.
Control click seems to work.
Some other Gnome apps also work correctly so I think it's fixed in Gnome but not whatever GIMP is using.
That's a degradation from 2.10, or 2.16, from time even before the 3.0.
KDE is the best desktop experience available.
I agree that KDE still feels better though.
One of the most frustrating experiences is related to the OP; reflow in browsers as new elements load making it impossible to click on the right thing until the whole page finishes loading. Popups are also nearly as bad but maybe less avoidable.
[1] https://en.m.wikipedia.org/wiki/Dark_pattern
When you click next page nothing happens long enough to make you think your click hasn't been registered, then right as you click again the page loads with ads right where the button was
I remember the first time I encountered the epiphany that "woah, typing too fast can break my textbox/inputs" and coming to the realization that in order to accommodate the faster users you often have to be very careful thinking out your UI flow.
Hence why I hate UI's. Sometimes feels like they are nothing more than a fight between me and another developer.
That websites and volunteer ui projects get it wrong is understandable- the problem domain is huge. But dragging an app onto a folder is a rather constrained problem that should be easier to solve.
Yet...
When you're past the stage of first impressions, it's a death by a thousand cuts.
Windows is not better in lots of these details, but at least users already know its tricks due to Microsoft's years of desktop dominance. I'd argue the effort of changing platforms should be about improving the experience, not about swapping a list of UX issues with a set of different ones, otherwise the change isn't really worth it for most users.
EDIT: oops I meant to write this comment as a reply to the sibling that talks about how difficult it is to select a parent directory in the file picker dialog (https://news.ycombinator.com/item?id=25721368)
1. System boots up and starts some apps which are creating windows. This may take some time.
2. While all of that loading, I am seeing some of the apps of no use, I am quickly switching to one, capturing focus, and pressing the quit shortcut.
3. Between my reaction and actual button press, some other app loads, and focus is switched to its window.
4. My keypress goes into another focused window, which gets closed instead of original one. Tada.
Why OS focus has a priority over user focus?
Hit cmd+new window pops up with search highlighted, start typing after a split second the window pops behind the other and all the key presses are then fed into the previous window.
Try to split a window pane on Windows, or right-click and create a file in Mac. In either, try to open an SFTP folder as if it is local, or integrate Git status icons into finder (all easy to do on KDE and Gnome). Good Luck.
The number of copy+paste bugs and QuickLook hanging issues on Mac is not even funny.
Just look at all the enhancers like Norton Commander and Path Finder, and you can see that even calling the OS Windows didn't make MS put too much effort into their windows.
File pickers are one of the things I don't like on GNU/Linux unfortunatelly, saying that as someone who daily uses it as a primary platform.
MacOS and Windows file pickers work better.
Now, typing the filename initiates a contextual search within the current directory.
Clicking in the filename textbox and starting to type doesn’t work either. You have to highlight the base (not the extension or “.”) of the filename. At that point, you can finally start typing the name of the file you want to save.
The same problem occurs if the file chooser happens to already be in the directory where you want to save the file.
If I could just “accio my black jeans” I wouldn’t bother organizing my closet.
I think the OP was talking in the context of saving, where searching during the "save" process seems a much less frequent occurrence than giving the name to the file you are trying to save (which presumably you have to do 100% of the time).
And I still don't get this trend in some newer software to make tab switching via Ctrl-[Shift]-Tab feel like the lottery instead of just going to the one on the left or right. There's a reason we can reorder tabs by dragging them around, and a reason our keyboards have more than just those three keys, and "fidget cube replacement" is not it.
Sometimes I wonder if the UI designers never use their own products or just aren't aware that building habits for chains of workarounds should not be the normal way to interact with computers. /rant
I'm not sure I have this issue, but ctrl-L (or equivalently, ctrl-K) focuses the address bar. Less mouse usage.
I've seen many other downgrades with gtk updates. The UI for Deluge, one of my favourite pieces of software, got pretty ruined by the gtk3 uptick.
Another related issue: when saving something from Firefox, the file picker opens into _a random directory_ each time. Like maybe 50% of the time, it will be the most-recently-used directory, but the rest of the time it is a random directory that I had saved something to at some point in the distant past.
It boggles the mind how these bugs can persist for years upon years, but my occasional forays into the GNOME bugtracker indicate that the developers just don't seem to care one bit about this stuff. They often seem downright hostile and defensive and dismissive of the bug reports, either closing them as WONTFIX or ignoring them until they rot.
If you saved something from http://foo.bar.com/ to /whatever in the past, future visits-and-saves to *.bar.com (or maybe just foo.bar.com) will use /whatever as the default location.
To achieve this features and configuration options are removed left and right.
Now we have half the software, no manual and often it still confuses users :-)
Edit: and I don't have a good, inexpensive solution to it.
I was going through the contents of a storage unit and came across one of those old digital executive day planner things from the 80's, still bundled with the manual.
I cannot describe the sudden surge of childlike happiness. I loved reading about how to use things as a kid, and the little fold out pamphlets giving you a roadmap into efficiently using a device/software filled me with many hours of happiness and confidence as a child.
I now do my best to WTFM (Write The Frigging Manual) where I work. It's amazing how quick something can be picked up with a little bit of guidance.
Perhaps we should stop whining and start fixing them. And then if the developers refuse to accept things people have been wanting for well over a decade then we can fork it and simply abandon them like any other archaic unusable thing of the past. We've all asked very politely long enough.
This is open source, we don't have to put up with this, that's the whole idea behind it. Closed source solutions from 23 years ago shouldn't still be running circles around the current stuff. We should all be embarrassed.
Sorry, I don't buy that.
It's worth studying the case of OpenOffice.org and MySQL. Both of these weren't satisfactory to the community for <reasons>, so the community forked them and did all the high-demand feature implementation on the fork. Now the original projects that were forked from are near-ghost towns.
I used to contribute bugfixes to Gnome2 in months before Gnome 3 was released. I observed product plan for Gnome 3 and was joking Gnome 3 will be just a red button that farts.
So many functionalities removed, slower response time, regressions and defects everywhere, broken user experience worse than what Window 10 gave us later. I moved to XFCE and then to Plasma.
I just can't understand how anyone could defend GNOME 3. Their own staff have to use extensions (that break every update), even Fedora (!!!) has to patch GNOME packages now.
They kept fighting that their workflow is superior and now they are going to change it all over next release. They keep butchering their toolkit, I can only use Qt applications now. Hell I'll take even Electron over GTK.
For me the Linux desktop with a WM is the perfect balance of exposing the internals and UX. It could be better but that's true to every OS, at least here I have my freedom. I'm keeping my eye on KDE, seems like they rewrote their less than ideal compositor (legacy X11 is a burden) and maybe in a year I could be using that.
I've once heard someone say that GNOME is Microsoft's favorite DE. You can guess why.
(I say modern era; it’s more or less just recompiled. Still comes with some of the yuckiness of days gone by, like aRtsd for audio.
https://projects.linuxmint.com/cinnamon/
I've been running Cinnamon on a few machines for years, and it mostly works fine, which for a Linux desktop is high praise. The file picker has thumbnails (although it only has a list view, so they're ant-size).
I haven't used MATE. My understanding is that MATE started life as Gnome 2, whereas Cinnamon started life as Gnome 3 reskinned to look like Gnome 2. Both have grown considerably from their starting points.
My overall impression was that it was definitely and surprisingly usable for non-technical people like my mom, grandma, etc. who don't use their computer for anything sophisticated but also don't have the time/energy/wherewithal to debug and configure things.
I can't speak highly enough about the Mint Cinnamon experience, and I recommend that everyone involved in the "Desktop Linux" world try it (at least in a VM) so they can get a sense of what "good defaults" actually look and feel like.
This was also my experience.
The only customisation i've done is:
1. Moving the panel, depending on what my feelings about proper panel placement are at the time.
2. Removing all the default shortcuts, because they collide with IntelliJ and/or are useless, and defining a few of my own
3. Setting up custom compose key sequences
Removing the shortcuts was done in the UI, but i really wish i could do it in a config file instead, because it's a pain to spend ten minutes clicking around. I had to hit the command line to set up compose keys, although i think this is an X problem, not a Cinnamon problem.
You mean like the ability to put things on the desktop? There's even a desktop folder, but well....
I use gnome and I agree with you.
I remember thinking "what on earth were they thinking" the first time I realized that none of the usual way of putting things on the desktop worked on modern Gnome. Absolutely baffling. Breaking such a well established convention is pure hubris in my book.
I'd be perfectly fine if this was a niche DE that you'd have to go out of your way to install but this is bloody Gnome, the de-facto standard DE for Linux. Absolute insanity.
Up until 2020, I didn't use screen sharing all that much, so the lack of support for that wasn't a big deal with using Wayland.
Now days though... this is a problem. I feel sorry for the folks running some Linux desktop that don't know why the option to start screen sharing just doesn't exist in various apps. I can imagine another Linux user saying "but it is right there!" to them, also not understanding why they have it but the person they're talking to does not have screen sharing.
Interestingly I checked a few apps I have installed through Flatpak, and they generally didn't have thumbnails for the same dialogues, although sometimes did for the "recents".
Unless this has been recently added as a feature, it sounds more like he has another issue affecting his desktop rather than outright missing functionality. Or could this be a Debian applied patch? I couldn't find any details after a quick google.
[0] https://jayfax.neocities.org/mediocrity/gnome2.png
The underlying complaint is that people want this to be bigger.
Older builds of Gnome only seemed to use the generic icon for the file type, so it does sound like there has been progress here - if not enough to satisfy the OP.
Yeah but when you go to the downstairs toilet you can't bring in your favourite newspaper because the paper its printed on isn't compatible with the light bulb and you can't read it.
Firefox on KDE uses the GTK filepicker. No thumbnails.
Not true. Firefox on current Arch/Plasma works fine with the KDE filepicker.
now that I think about it I remembered a little trick https://askubuntu.com/questions/1100261/how-do-i-make-firefo... Have to try it again.
Anyway, a distro released in 2018 and still supported until 2023 and 2028 for extender support can't be "a bit too old" for something like the file picker. I mean, people were making fun of me when I told them I was using that ubuntu distro that had no mp3 support by default but it was 15 years ago.
Not if you set the GTK_USE_PORTAL environment variable.
The above will make Firefox use the KDE filepicker.https://m.youtube.com/watch?v=BGHnVF_WWls
Patches get dismissed.
I don't know where the problem is. It's as if the GNOME team had a vision, but didn't actually try to see how this vision plays out using the tools they're making.
The problem is nobody's gonna get fired for not solving the problem in GNOME. Nobody is accountable, and nobody has to cooperate on and solve the user's problem. One person can be a blocker for 10 years and nobody can do anything about it.
The second thing Leadership is useful for is forcing people to do the right thing. That seems to be missing here.
(From scrolling offer the discussion I can in parts see the architectural constraints they have and can image they have other priorities ...)
GIMP still runs GTK 2. The version from ~10 years ago.
https://www.gimp.org/news/2020/11/06/gimp-2-99-2-released/
[1] https://en.m.wikipedia.org/wiki/GTK
"At one particularly frustrating moment, I offered the following: “Bill, a shower, a toilet, and a water fountain all have mechanisms to control water flow, places where the water comes out, some sort of porcelain basin to hold the water, and a drain, but we don’t combine them into one thing to reduce their learning curve. We don’t merge them into one object because each of them are in use in fundamentally different ways at different times.”
Then the pause.
Then Bill’s verdict. ["That's just rude."]
Ouch.
As I saw my career disintegrate before me, I started to question just how “beautiful” my analogy really was. To his credit, Bill was forgiving, and met with me many times after that, giving me numerous opportunities to get him on board with all manner of ideas coming from my team (with varying degrees of success on my part). Ultimately, I never did succeed in making Bill really comfortable with a more emotional approach to software design. But the real lesson of the day was learned. In the software industry, as long as the engineering-minded run the show, the notion of subtle and textured user experience design that balances the emotional and functional aspects of a software experience will always struggle to take root."
--
I keep a running list of little workflows and experiences I generally love on macOS and see if alternatives exist here: https://docs.google.com/spreadsheets/d/148zTJUwfVv9xfDcpSoH3...
>”But engineers (like everyone) see the world through their lens. Engineers look at code all day. And when they see two pieces of code doing roughly the same thing, they immediately think about ways they could eliminate the wasted effort by combining them into one piece of code that performs both functions”.
I shudder when thinking of all the times I have wasted time trying to generalize something only to end up with code that is harder to understand, awkward to use, more complex, more prone to bugs, or all of the aforementioned, just because there is a stupid voice in my head going “do not repeat yourself”.
With maturity comes the insight that not repeating yourself is good. But sometimes avoiding it makes things worse and costs a lot more.
The latter should be collapsed, but might not be duplicate code at all. Automated code analyzers will often not even see these.
And the former must be kept duplicate. Unless you can make it functionally duplicate too. Automated code analyzers will often flag these wrong.
Don't get me wrong: I love automated analysis in a CI or my workflow. But it is not binary like a linter: pass or fail. It requires context and interpretation; I see e.g. CodeClimate as suggestions, not laws.
I wasn't thinking of the things a compiler will tend to optimize. It was more the times when I have tried to do too much with some higher level abstraction and suddenly you find that the abstraction isn't a good fit for everything you need to do inside it and that you may even be writing code that becomes very awkward (hard to understand, "abuses" the abstraction, or just very slow).
These things tend to hit in the "oh shit" phase when you have enthusiastically convinced yourself (and your team members) that this is the way to do it, you have written a lot of code where the abstraction still fits and then you stumble upon the cases where it doesn't fit and things get awkward.
DRY is a good principle, but duplication of code that does nearly the same thing may have significantly lower cognitive overhead, be easier to maintain and easier to evolve in some cases. (The trick is to silence that little OCD voice in your head when you come across those cases).
My programming life has improved for the better when my threshold to generalise and DRY is not when I need to use some piece of code in two different places, but when I need to use it in three different places.
I am not joking, that was life changing advice for me.
Basically you can actually do the things you often need to do. Conversely on MacOS if you need to do any of those things your only option is to use Finder which really sucks because you then have navigate to wherever you were in the app
And of course you can set the icon size in Windows file dialogs, something you can't do in MacOS file open/save dialog
So in this case, thank god the engineering mindset won out in Windows, at least for this particular feature. Whatever UX designer on MacOS decided to neuter the file dialogs failed UX class apparently and chose based on some random airfairy idea then users actually getting work done.
- "Basically you can actually do the things you often need to do. Conversely on MacOS if you need to do any of those things your only option is to use Finder which really sucks because you then have navigate to wherever you were in the app" - I'm having trouble understanding what you mean here.
- Don't get me started on sizes for accessibility reasons, that was partly why I had to switch elder friends to a mac after watching them suffer on windows. Things may have improved over the past few years though.
- I really want to see Microsoft or the FOSS community figure these things out, I dip my toe in once in a while but I think there's an evolution in cultural/governance/funding needed. Maybe the popularity of videoconferencing may help the FOSS world actually see how people work rather than just posting pictures of 'screenshots' and battlestations.
That said, I'm not sure what this has to do with repurposing Windows Explorer? It uses the same widget to browse files, but the File Open window is not actually an Explorer window.
This is even more useful when saving files than opening files.
While I don't disagree that it would be nice to be able to do more of the same things in file picker as in finder, there is the possibility to right-click -> open in Finder
Filepicker also supposrt Finders "go to" (cmd+shift+g) that let's you type paths, with autocomplete and support for ~, which is a super nice feature.
> Concept reduction, consistency, skill portability, were all core to how to make a great UI. Why have 17 different ways to pop up (or drop down) a menu? Why have 17 different graphical treatments? With “one menu to rule them all,” users could learn how to use the menu once and then apply this knowledge anywhere they saw this affordance. That way, developers don’t have to reinvent the wheel, and users don’t need to relearn the wheel.
was taken too far, and argues for dialing it down a notch or two. But the industry did exactly that, and the resulting UX is worse than what we had in early 00s - and keeps getting worse every year.
So, perhaps Bill was right?
When I want to use the bog, I’ll use the bog. When I want to clean my bum, I’ll use a bidet. When I want to wish my hands, I’ll use a hand basin.
The way Windows does it feels like crapping in the bath tub, at least to me. Wrong tool for the job. “If all you have in a hammer” kind of deal.
On the other hand, I’m sure Windows users who defend the mini-Explorer think of it more like using one of those fancy Japanese toilets with a bidet and music player to hide the sound of your ablutions.
https://github.com/Dudemanguy/gtk
Because the issue would be solved, "this is why we can't have nice things"
I think "use KDE" is perfectly valid advice here too. The toilet analogy doesn't really hold, your satisfaction of software that works for you shouldn't be at all affected by the existence of software you don't like and don't use, that's just silly.
It is the imagined promise that Free Software is done for our benefit that lends us the delusion that things should be the way we want them.
In fact, Free Software things are much more likely to actually work, in the way that somebody wants, than Apple's or MS's. Just, not you. In the case of Apple and MS, there is typically no living individual who wants it to do what it does, but changing it would require initiative whose attempt at exercise would severely punished.
As for not wanting to upload the wrong one, doesn't the file picker show a preview of the selected file? Sure, not as good as thumbnails, but it should be enough to avoid the problem.
Some of the GTK filepickers on my system do show previews (e.g. Signal) but others do not (Mozilla - since fixed by the incantations needed to have them use KDE's).
There are still some keyboard navigation issues with File Explorer which can sometimes make it act in unreliable ways, there is a strange bug with system tray context menus still to this day and don't even get me started on the dumpster fire that is Windows 10's entire Start Menu design and implementation.