Home | Software | Rules and About | Atom feed
Admin | Edit
published: Sunday 6 August 2017
modified: Sunday 6 August 2017
author: Hales
markup: textile

UI Gripes: Season 1

'HID' stands for 'Human Interface Device'. I don't think I have any of those, and if I do, then they're definately broken.

For the past few months I’ve had many great ideas of things to write about. Unfortunately all of them have been too ambitious for me to start or complete. Many of these imaginary blog posts are mega-projects, involving the publishing of small games or the torture of certain friends.

Today instead I’m going to succumb to my tiredness and just complain about other people’s things instead.

GTK save dialogs

My first dive into Linux, using Ubuntu in 2007, burned this image into my mind for all eternity. The non-microsoft save dialog. What was this sacrilege? It was exciting. It was different.

Then I discovered that I couldn’t do any file management from inside of it, like I could do in the Windows one. The best you can do is create a folder — you can’t rename anything, or even right-click a folder and open a proper file manager dialog (to save you from having to navigate there manually anyway). Woe to you every time you save a file or create a folder with the wrong name.

It seems the GNOME world expects you to:

That’s wonderful if you fit into one of those categories, but why not support humans like me too?

Then GTK3 came along:

Oh dear. Let’s ignore the fact the sidebar needs almost twice as much screen space for the same content.

What matters to me the most is that I can’t navigate anywhere as fast as I could with the gtk2 dialog.

In gtk2: things were very fast and very easy. If I wanted to save to ~/library/uni/ELEC3111/assignment1 I could click on the file list and type:

lib [ENTER] uni [ENTER] ELEC31 [ENTER] ass [ENTER]”

GTK3 decided to get rid of this. “Oh, you’re typing? You must want to search! Pardon me whilst I spend the next minute pounding your HDD, rooting through your entire home directory because you decided to type the word ‘lib’.”

No, I do not want to search. Un-cached search is the worst user interface design ever invented. It’s slow, it’s messy, and it’s only useful for unsorted or lost files, but even then it fails if the user has saved somewhere outside the expected scope. Not to mention now I have to physically look through the search results and find the thing I’m after whilst the results are still streaming in. And when I do find what I’m after: I try to double-click it, only to have another search result shuffle under my mouse in less than a human reaction time. It’s completely useless.

Editorial note: at this point in writing I made the mistake of trying to recreate this particular problem. “Oh, it looks like the search has finished, I guess it’s faster than it used to be and this problem doesn’t exist any more!”

Nope.

I tried to double-click on a folder and a document replaced it just as I was clicking. I’ve now just saved over a file somewhere in my home directory. I didn’t even get an “are you sure?” dialog.

Data loss is the revenge on those who criticise GNOME 3.

There is a work-around : I have to type the path into the filename box at the top, and use TAB instead of [ENTER]. This would all be fine, but I’m used to using the up/down arrow keys to walk through similar-named directories (eg uni course codes such as ELEC3111, ELEC3107, ELEC4122, ELEC3106). This was an amazing time saver in the gtk2 save dialog. All no more.

I wonder how hard it would be to hook in the WINE save dialog instead of the GTK one…

QuiteRSS

Beautiful RSS reader program to use. Has not been updated in a while, probably full of webkit bugs.

Adding new feeds is a breeze: after hitting the ‘add new feed’ button the program even reads your clipboard for a URL, auto-inserts it and immediately starts grabbing details about it (name, icon, etc). Whoever made this has clearly had to use their own program for a while.

Unlike Liferea: this feed reader does not lock up all the time. Unlike Seamonkey/Thunderbird’s RSS reader: you don’t have to do some weird nesting of feeds inside a folder to even view their contents. Sidenote: this made migrating to/from Seamonkey as a feed reader an absolute pain.

Sadly QuiteRSS screws up in one big way: it steals focus. Repeatedly.

Want to middle click a feed entry in QuiteRSS to open it in your external web browser? Ah wonderful, let’s start… WHAT? Why did QuiteRSS steal my focus (and my mouse, unfortunately due to some requirements in my window-manager). Ok then, I’ll just move it over and… AGAIN? WHAT?

Every single feed you open starts a timeline of TWO focus steals over the space of about a second. I basically have to lean back from my keyboard during this time and not touch anything.

These Russians software devs are crazy.

But hey, it looks like work on a new version has started:

The application will be completely rewrited.
UI will be redesigned. Special thanks to Bozhevarsky Dmitry.
Webkit engine of internal browser will be replaced by Chromium.
There will be special release without internal browser.
The appliction release date is undefined.

I hope for the release without the internal browser: Chromium sounds heavy, and the laws of software development state that projects who announce features never get finished :P Good luck Funcy-dcm, I’ll be looking forward to this!

Launching any slow application.

When I start an application that I know is going to take a while (ie more than a couple of seconds) I tend to go back to work on something else on another virtual desktop or another screen. Unfortunately the slowly loading application then likes to appear ontop of what I’m doing (rather than back on the workspace/screen I started it on) and immediately steal keyboard focus.

Problematic example: typing my password into one application, my browser then appears and steals the tail end of it.

Again: we’re in a situation where you have to literally step away from your keyboard and computer to wait for it to do its own thing. Whilst the computer does look and act like it can accept input during this time, it may as well block all input for the use that it is. It’s dangerous to type whilst an application is still loading.

GTK Save dialogs.

What? Again?

Something as venomously evil as gtk-file-chooser requires at least two sections. Literally, the ‘file list’ and the ‘path bar’:

The ‘Save’ button often does not do what you want it to do. Here’s me going crazy using it:

The exact same problem exists with the gtk3 dialog too.

Should I make more videos in future? And what do you hate about your daily UI?


Daniel A. - website - Monday 7 August 2017

First off, please don’t kill me for commenting! Second, this was interesting. I’ve run into the same subdirectory selection madness as you show in your video. I do believe it has been a known issue since at least 2014, but I can’t find it in the GNOME Bug Tracker. It’s definitely still an issue in gtk+3.22.

You should write more of these (and report bugs upstream)! I’d be especially interested to read more on your thoughts about information management UIs like notes, email, and feed readers.

Hales - (site author) - website - Monday 7 August 2017

Don't worry Daniel. Although I did add your name to my hitlist, I accidentally saved over it with an unrelated document some time later.

> report bugs upstream

Eeek. This scares the hell out of me.

My experiences reporting bugs to big projects have not gone well. I've found they tend to have a 'bugger off' attitude to things. The bigger the project the narrower the culture, it would seem. That and I tend to find inconvenient things :P

As an aside: my experiences with small projects have been absolutely fantastic in comparison. My next post will probably have something to do with the tiny C compiler (tinycc), a project where a contributor fixed my problem and even added a warning to dissuade me from making the same mistake again.

> I’d be especially interested to read more on your thoughts about information management UIs like notes, email, and feed readers.

Ooh, do you use note-taking software? What is it and what's it like?

A few years back I had a look at several pieces of what was available for *nix and found so many that I could almost fall in love in. _Almost_. Like finding a smouldering cigarette in the face of your significant other, each seemed to have a feature burned away. By memory the toss up was whether or not you could have tables AND images in the one program.

In the end I found that running a wiki on your computer was the best option. Not WYSIWYG, however, so it would not suit everyone.

I have been nestled inside Seamonkey (Thunderbird) for my email needs the past few years, however I do also have a few issues with it. I came across a beautiful email client that handled email chains in terms of threads rather than individual messages, but I'm not sure why I ran away from it. I'll have to look back.

Another possibility of what might come up: photo handling software. I've married and divorced a few times here -- the latest one only a few weeks ago -- so bad blood still runs in these veins. Poor UI, low responsiveness and instability are not qualities I value in a picturesque partner.


Daniel A. - website - Friday 25 August 2017

Here is the save-dialog-subfolder-selection bug!
https://bugzilla.gnome.org/show_bug.cgi?id=672271

>> report bugs upstream
>
> Eeek. This scares the hell out of me. My experiences reporting bugs to big projects have not gone well.

Try acting more Canadian. Also, it helps if the project is actively maintained. You can’t expect much result if there isn’t an active maintainer. Regardless, documented bugs helps other users too. So it’s good to report things.


> Ooh, do you use note-taking software? What is it and what's it like?

I use Simplenote. Not because it’s particularly good, but because everything else is distinctly worse. It mostly works with only occasional dataloss when syncing between clients. I wrote one of my trademark reviews of it a few months back.

https://ctrl.blog/entry/review-simplenote

(Upstream have even followed up on some things from my review without me needing to report it!)

> I came across a beautiful email client

Was it Trojiá or Evolution? Not much else is being maintained and actively developed these days. There is so much to be mindful about when using an unestablished upstart email client in terms of security, protocol handling, storage reliability, standards compliance, … . Many of the less popular clients that have been under development over the last few years have all been abandoned, and they didn’t ever manage to get stable protocol implementations or handle either standards or security well.

> Another possibility of what might come up: photo handling software.

Why would you ever go anywhere near any such unspeakable evil? I must admit I’ve mostly given up on managing photos in any way. I keep it a bit all over the place and hope desktop search one day will improve enough to locate the things and people I photograph.

Hales - (site author) - website - Saturday 2 September 2017

Quick reply, because I've been sick for a week.

> https://bugzilla.gnome.org/show_bug.cgi?id=672271

That appears to be similar, not the same.

> Why would you ever go anywhere near any such unspeakable evil?

At one point I decided to try and categorise the photos into folders. This was years ago. For some reason I decided to reverse all of my work, put everything back in folders by date, and then start using shotwell. I'm not entirely sure why. It might have been because my camera started re-using filenames, and I didn't know of any way to automatically give them new unique ones, so the files wanted to overwrite each other when I moved them around.

Yesterday I had discovered my folder of screenshots is now big enough to have the same navigation problem as my photos. I started going through them one-by-one, sorting them out into folders. I think this might be the most future-proof way to do things, as it does not tie me to any software, and it allows me to browse the photos in a boring old file-manager without any pain.

> hope desktop search one day will improve enough to locate the things and people I photograph.

I photograph debatably inanimate things: defunkt hardware, particularly pretty weeds in the garden, prototype equipment. I'd love to see 'mad scientist device' picture matching algorithms instead of 'face matching' ones.

Alas I gave up on search years ago. Our file sizes seem to be marching in step or faster than increases in our processor speeds. If I stored plaintext metadata for each photo (eg what it was of) then that would work brilliantly (organising them into named folders is an equivalent to this), but I'm not convinced that any automatic feature detection algorithms will be useful within the next few decades. Anyway, just a wild hypothesis.

Note taking and email software: I'll have a look.

Thanks for the link to your blog :D I'm having a look at it.

markus - Tuesday 12 September 2017

GTK3 is largely run by Red Hat drones.

So it is not surprising that their use case is some random new linux user who does
not know how to use the commandline.

This is not a new trend, mind you; and it also has not started with systemd either
(also paid for mostly by Red Hat).

It has been a trend that has usurped many distributions - ironically enough even
debian by now.

You gave in your overview voidlinux a try and noticed some shortcomings.

I hope the voidlinux guys can work on these issues and really present themselves
as successor to BOTH gentoo AND archlinux. Gentoo at the least tries to hard to
resist the systemd infiltration whereas archlinux has already become a zombie
(and this started when judd gave up by the way - projects change a LOT with
different people in charge; in 98% to the worse).

Note that KDE also went into a similar direction but there it is not solely
Red Hat's fault. Although there are some drones who work on KDE paid by Red
Had, it is the fault of the core KDE devs back then past the qt 3 days to
really screw up majorly. Even til' today!

I think the only project that one can really praise is the LFS/BLFS guys
since they made a systemd and non-systemd variant of LFS available.

Hales - (site author) - website - Thursday 14 September 2017

> So it is not surprising that their [gtk3] use case is some random new linux user who does not know how to use the commandline.

I'd disagree with this on a few fronts.

You can make your DE easy to use for new players without having to make it bad in other ways. A good GUI is easy and fast to use for both beginners and the experienced. It's hard to do, but good CLI interfaces are also hard to do.

To me it appears the primary goals of GTK3 and Gnome are brand and image. They want to be thing think people visualise when they think of Linux. They want to be the default option, so they can tie in their other corporate (Redhat) products and make them the 'default' Linux experience. They'll do this at the cost of everything else.

There's been a few interesting quotes made by the gtk/gnome devs over the years. My favourite was about custom themes being undesirable because then Gnome would look different on each person's computer, but unfortunately I can't find the link.


Also, I prefer "random new linux users" to the "well-ordered new linux users". Those guys never wear casual clothes :P

> I hope the voidlinux guys can work on these issues and really present themselves as successor to BOTH gentoo AND archlinux

The Void devs are doing a lot of great work, but I don't know how it's going to go into the future. They've been having some problems in the last few months with their package repos. I'm hoping they don't burn out and throw the project to some other people, which sometimes happens when a project userbase explodes.

The most important thing Arch taught me was not to get attached to any one distro. Eventually they all change or disappear. A name applied to a project (like 'Arch' or 'Void') means nothing. Follow the qualities you like instead of the name, even if it leads you elsewhere.


> Red Hat's fault

It scares me how much control one company has over the userspace ecosystem.

Doctors - website - Friday 8 December 2017

Some of the Void devs are working on a few projects to make handling the repo much easier, including a new builder more suited for our needs, a better way to ensure outdated packages can get updated and put back into the repo via. A bot (something I’m working on getting done very soon). Give a few more months and these changes make it much better to use.

Hales - (site author) - website - Friday 8 December 2017

Hey Doctors. Glad to hear. Now that my semester is starting to clear up I think I need to start haunting IRC again so I know what's going on in the community.

N.B. your blog has no method to comment on it, so I'll write this here: I know exactly what you went through with wpa_supplicant and dhcpcd. I had the same happen to be a few weeks back.

I use wpa_supplicant directly (rather than behind a tool like Networkmanager, connman or wicd); so it was a bit easier for me to debug. It turns out that dhcpcd now likes to start its own copy of wpa_supplicant if one is not already running. The first copy of wpa_supplicant to start wins; and my copy was often slower.

My solution: add "nohook wpa_supplicant" to the end of my /etc/dhcpcd.conf file. That tells it to stay in line and stick to what it's supposed to do.

Rob - Monday 20 January 2020

Hi!

> it scares me how much control one company has over the userspace ecosystem.

I am just passing through while looking for someone to tell me why the GTK+3 file dialog now contradicts ~25 years of muscle memory and has the Save / Cancel buttons moved to either top corner of the dialog (and maybe even what I can do about it). No luck yet!

Hales - (site author) - Monday 20 January 2020

Oh dear me. Do you mean in the titlebar? Have a pic you can link to?

Rob - Monday 20 January 2020

https://developer.gnome.org/gtk3/stable/GtkFileChooserDialog.html

I first noticed it in Waterfox so I assumed it was GTK's doing. <sigh> it's worse, at least until I figure out which preference will banish them, if that's even possible.
Downgrading GTK+ didn't help (only minor-minor version differences are even on the menu). I played with different GTK styles for a while just in case it was someone's CSS... I logged in to fluxbox instead of XFCE and they went away. So I downgraded every XFCE thing that had been upgraded to 4.15 during the last "emerge world" and they went away and stayed away.
It's not the titlebar anymore. They call it a header bar...

https://wiki.gnome.org/Initiatives/GnomeGoals/HeaderBars
https://www.omgubuntu.co.uk/2020/01/xfce-4-16-client-side-decoration

Hales - (site author) - Monday 20 January 2020

Wow. That's bananas.

I can understand how they got there: it's one of the patterns of user interfaces on phones. Unfortunately:

(1) A lot of the UI patterns used on phones are not any good, even on said phones.
(2) Western user interfaces flow top-to-bottom and left-to-right, not up-down-up-down-up-down. Linear flow is a general usability rule for paper forms, let alone computer ones.
(3) One of the most important features of a GUI is "reliability". ie not surprising the user and changing where things are.

This last point is probably quite difficult to understand if you're a project developer. Bugs are not usually things that span the dimension of time, they're flat problems here and now in the code.

I've heard that XFCE has been going downhill lately (compared to what it used to be like). I've had one of my parents on Cinnamon and the other on XFCE for a few years now -- they have mostly been similar in their levels of unique problems, but I'll be watching closely. My father will be confused as hell if that save button moves. "Son, my laptop's broken again"


From the HeaderBar initiatives page you link:

> This has the advantage of reducing the amount of screen space used by window chrome

Gnome and gtk3 wanting to "reduce the amount of screen space" used by their widgets? They've made some major design decisions that mean lots of screen space is wasted (mainly around padding+margins of elements) so I praise their intent of trying to get some back; but causing more UI problems to solve another UI problem is not progress.

> keeps the window close button available

What? WHAT? Gnome 2020: We fought to save close buttons on your windows!

I _must_ be misunderstanding this.

> and allows dynamic controls that change according to the view in the window.

That's bad. Never ever make GUIs dynamic unless it's by strict user direction (eg re-arrangeable UIs). This hides controls for the user and makes discoverability much harder, eg scrolling tabs (and other interesting examples):

http://hallofshame.gp.co.at/tabs.htm

Rob - Monday 20 January 2020

Yeah. I consider myself an amateur programmer; the Rule of Least Astonishment could be called my favorite. Windows 10 is a confused bag of fecal matter.

> Gnome 2020: We fought to save close buttons on your windows!

BTW, that page is at least 4 years old. I had no idea how nice it was to have no idea, until it wasn't.

> Never ever make GUIs dynamic unless it's by strict user direction (eg re-arrangeable UIs).

Indeed. It is really too bad that so many sane things just "feel old" to so many misled users and devs alike.

Rob - Monday 20 July 2020

Somebody forked libxfce4ui (github.com/Xfce-Classic) because "upstream has indicated
that they have no intention to allow users to turn CSD off" and somebody else forked
GTK+2 (called STLWRT but apparently not published yet) because GTK+3 and later come
with unacceptable goals, strategies, assumptions, etc. The long-term plan is to wrap
and be able to stand in for GTK+3, Qt, FLTK, maybe more... it could 'unify the tribes'
as it were, or just make it easier for everyone to keep doing the thing they like. I
hope something good happens. I wish I could make it happen but I am stuck on cooking
up a very limited TK meant for audio synthesis and processing plugin UIs... I likely
don't have the tenacity to make an all-purpose TK let alone chase around all other
upstreams trying to keep wrapping them-- i.e. coping with their new bizarre ideas of
how things should be, which 3rd party "app"* developers will have embraced... sigh

* yes those are sarcasm quotes. write programs, run binaries, install software, use
applications, maintain distinctions, improve vocabulary, disregard apps


Add your own comment:

Name:
Email (optional):
URL (optional):
Enter the word 'irrlicht' (antispam):
Leave this box blank (antispam):

Comment (plaintext only):

If you provide an email address: it will only be used for the site admin to contact you, it will not be made public.

If you provide a URL: your name will hyperlink to it.