Bossy installer message

In recent days I think I’m noticing a trend towards giving fewer reasons and focusing more on judgement and authority when it comes to user interaction messages. It’s strange to see this installer message following the same way:

image

Interestingly, while MSFT stepped up their game in treating their users in ways you shouldn’t even treat children, some websites have realized that “Something went wrong. You must reload the page” has this funny connotation and switched to “Something went wrong. But it’s not your fault.”

I wonder who was yelling at them to get them to change that language :slight_smile: But I digress. The KiCad installer however keeps telling me I am not allowed to proceed, but without providing the necessary information to make an informed decision, as some installers do.

If possible it would be nice to be presented a list with running tasks that need to be terminated to avoid corruption and loss of data, as some installers do, and ideally be presented with a way to make that decision without hunting down the process again in the task manager.

Ultimately the case here was that of a pcbnew instance that was either left behind after closing or from a recent crash (no worries, all issues are reported).

Sorry for the rant :slight_smile:

It is not really possible as such. Updating when having it running is a potential hard to debug problem, so this dialog just gives you no option to install it when it sees “familiar” processes running. The intention is just to make sure that we are on the safe side.

The “bossy” nature of the message is just to help make sure you read and understand the situation is serious :slight_smile:

2 Likes

It could be reworded, though. Now when I think about this, it sounds “bossy” and unnecessarily impolite, even for my Finnish sensitivity (we say things bluntly without “please” here). “Must” and “allowed” are unnecessary words here.

Even simple “Close the program to continue installation” would be more neutral while still offering the same amount of information. It wouldn’t be hard to find a text which would give a bit more information, the reason why it has to be closed.

1 Like

“I cannot continue because another pcbnew is running”

A program isn’t a person. Using “I” is from 90’s or something.

I generally discoverd trying to be polite in messages while good on the surface can lead to confusion. See for example RFC 2119 for why the word “must” actually makes sense here. (The word must is used to indicate a hard requirement, which in this case is absolutely the case)

I agree that the rest of the sentence is a bit strange. A better option might be something like “All KiCad processes must be closed during installation”.

1 Like

Yeah, I may have seen this message a couple of times too often, I guess. I would prefer however if the message were focused on the needed action, and not on the “not allowed” part.

"Close Running Instances

The installer requires access to program files currently used by running processes:
pcbnew.exe"

?

Here’s another example that also orders the user to do something, but with an interesting structure:
image

  1. state the problem
  2. list the necessary actions

In the context of incident analysis, this thread can also be likened to “first stories” vs. “second stories”, that is, moving away from the “who” to the “what”.

Yet “you must” sounds very different than “the program must”. (EDIT: “processes must be closed” would indeed be better in that respect.)

Ugh… it gets better: with eeschema and pcbnew running in stand-alone, it creates sequential notifications.

“Go close pcbnew”
“ok”
“Now go and close eeschema, too”

I don’t know how that’s handled internally, but it wouldn’t hurt to ask the user to close a list of applications.

Ok perhaps this is more of an edge case, but it won’t hurt to collect all the instances.

Hahaha, just replace I with The installation if you wish. You could have figured this out yourself.

How about:
Pcbnew is currently running. KiCad can not install while parts of it are running
[Cancel]

This may also be a windows thing.
I have never had troubles with stuff like that in my Linux box.
Linux has an integrated update program (called “apt” in my case), which handles all (positive thinking here) programs.

I sometimes get a message like:
A newer version of KiCad has been installed. Restart KiCad as soon as possible to continue with the new version

Different OS’s handle running programs/opened files differently. AFAIK Linux (or *nix?) can replace program files (or whatever they are called there, “executables”) on the fly even when the program is currently running. Windows doesn’t work that way. On Linux this can lead to problems if parts of a program are closed and opened while the program is running, the versions are then mixed. At least in my experience.

An explanation: https://unix.stackexchange.com/questions/138214/how-is-it-possible-to-do-a-live-update-while-a-program-is-running

Windows users have been indoctrinated to reboot for every fart, and they have gotten used to this and apparently accept it as “normal”.

Reminds me of a clever idea for a battery holder for AA’s. It had both + and a - connection on each side, and made use of the sticking out knob of the battery to make the right contacts.
The product flopped completely because people were used to looking at battery polarity indications to insert batteries and service was called a lot because they could not figure out in which direction to insert the batteries.

Package installers like dpkg (apt is the CLI front end) or rpm are for some phases of the installation driven by scripts which the package developer has written, to handle contingencies. For most applications it suffices to unpack the new files and running processes are still using the old binaries. For some services it will stop the service and restart after the upgrade. If the upgrade warrants it, the installer may even ask or force the admin to reboot the OS. It can all be tailored.
Generally Linux packages updates are far less drama than Windows ones. Sometimes I think Microsoft is in cahoots with Internet providers because it seems like every time I update this W10 VM I have, about once a quarter, just in case I need to use it some day, (I got it for free by upgrading a discarded W7 licence) it sucks gigabytes of upgrades from the cloud. I hate to think of the carbon footprint of all the W10 machines and their update distribution network.

Pcbnew is currently running! You may do as you please but unless you choose to voluntarily close the program the installer might decline to continue.

1 Like

Whole thread seems silly to me to be honest. But I’ll throw in my option. (I have noticed strange behavior in Linux programs if I don’t close them before updating so I do so unprompted anyhow). Politeness is never over rated though. ‘Please close existing program to continue.’

1 Like

Maybe KiCad should reflect their user base (according to what can be seen in the forum) and every now and then throw in some message like “you unprofessional incompetent excuse for an EE, please do…”

(I don’t bother adding a smiley.)

Yes, this kind of thread is kind of amusing, but it’s true that UI text is an important part of UX, and UI design is science and art of psychology. Every sentence makes the user feel in a certain way, and it can be quite delicate, sometimes subconsciously.

If you want to have more mild fun, see https://gitlab.com/kicad/code/kicad/-/issues/4798. IMO Jeff is a master of fixing UI text problems in innovative ways, avoiding all pitfalls.

1 Like

Perhaps forum replies could be pre-filled with that?

1 Like

Oddly enough, there might actually be a current issue with pcbnew not terminating properly and leaving behind stuck processes. A couple of days ago I also observed that by opening and closing pcbnew from within KiCad, there’s a bit of a pile-up of threads (3-4 extra ones lingering around).

have seen this type of message a couple of times too