I run into this ALL THE TIME during the normal course of using software. I am trying to do something, then I get a pop-up about something-or-another that the developer clearly thought was important for me to see, but I click past it so I can get back to what I was doing. A lot of times is these "look at this cool new feature" kind of things - ARGH! And the worst part is, I might actually WANT to come back and learn about the new feature, but often I only get that one chance, and I'm too busy on my important task to focus on it right now.
Actually - a specific example of this just case to mind: I want to take a screenshot with Snagit - so I press PrtSn. But now Snagit pops up and asks me if I want to update. Sure, maybe I do - but not now! Now I just want to take my damn screenshot! So I click 'no.' And then I don't see it again until the next time I want to take a screenshot, and also do not want to be interrupted in my 5sec tasks with a 5min update.
Much better is to provide the information in a conspicuous, hard-to-miss area of the UI, but which DOESN'T block my workflow. Like, literally just put the text right on the form/interface in bold, red font. Like for Snagit - don't make it a popup update notification. Just put a bold/red link on the capture window and editor UI that says "Update"
Engagement metrics will be the death of us.
Be typing a prompt and get 1) Do Action 2) Always Do Action 3) Don't Do Action
But if, like me, one looks at the keyboard while typing, you might not notice and be typing away and it has stolen your focus. Worse it used to default to 1) when you pressed enter and so you might have agreed to anything.
DO NOT STEAL FOCUS.
Since you can’t reliably catch 100% of tricks 100% of the time, continuing to do so is effectively guaranteering yourself to be tripped up in that 1 out of 100 times.
1) That's the default design system pattern for alerts, so whoever was the designer just went with it.
2) There's other alert patterns (alert bar, toast, etc), but sepsis was deemed to be so dangerous to the patient that it deserved to have its own special friction inducing UI element to alert doctors to take action.
>I don't know what it is that draws product designers to keep reaching for that horrible UX pattern
There are legitimate cases for alert modals like this one, but this definitely is an example as to when it shouldn't be used.
The issue is not the UX, it's the provider's arrogance thinking they know better. This thread is literally unbelievable.
It blocks the system with a demanded action, but doesn't even show you what triggered the alert condition? I would completely expect a "List of conditions that suspect sepsis" and get those details up front and center.
I'd be putting in medical records "Due to software popping up an un-dismissable sepsis screen that does not show details, I dismissed it due to needing the data it was flagged on".
Lemee guess? Epic?
You’ll get something like “sepsis criteria triggered by wbc 13, cr 1.5, hr 101, rr 22.” And that’s it - usually in the middle of a night on a new patient I just got a page for. Can’t open documentation to see the patients med history. It’s ridiculous. I’m not using Epic but I am using a major EMR.
To be fair I’ve written almost exactly what you mentioned out of sheer frustration once or twice but it’s not ideal
Yes, in almost every case, the default "popup" GUI library call is also a modal dialog. You cannot access anything else, anywhere else, in the entire program (even if the program had multiple separate windows open). All you can do is read the dialog's text, and hit the "ok" button to dismiss it (or pick from one of a set of "buttons" that are shown on the popup to dismiss it).
The worst ones also do a global grab, with the result that you can't even switch away to another unrelated application on the system without first "interacting" with and dismissing the popup.
To see the version that is built into Javascript in the browser, put the following into the URL field of a new bookmark, and save the new bookmark.
javascript:(function(){alert("hello");})();
Then, while here on HN (or anywhere else), click that new bookmark you just made, which will pop up the default built in Javascript alert box, and try to interact with the rest of the page it pops up in front of.My older car regularly hallucinates an incoming frontend collision and takes over the speedometer with a flashing red/black screen.
The new one (Kia) overrides the steering and forces the car to depart the lane (usually over double yellow lines).
If the alert regularly produces false positives then such behavior (and the behaviors of these EMRs) should open the vendor to civil and criminal liability. The courts should just assume the behavior will lead to loss of life, in the same way as discharging a firearm randomly in the city might.
It probably makes sense to have a short grace period to push a patch. Maybe one week after 0.1% of users complain?
Closed: Working as Intended, Elon has us by the balls.
It’s similar to alarm fatigue in the ED. In most, every piece of equipment is alerting on at least one thing at any given moment, if just because the patients pulse-ox sensor is not attached super well.
But they came in because of a diabetic emergency and we’re just waiting to make sure the treatment worked and 99% of the time it does, so no one really cares, but the UX around silencing it isn’t great (and may be a liability if used). Like in this example.
Because maybe this is one of those 1/1000 cases where the insulin didn’t work, and they lost all peripheral circulation and that pulse-ox sensor’s bad reading is warning you that they are about to lose all their fingers.
What, by your estimation, would be the better user experience for alerting the imminently life threatening situation?
It sounds like a signal to noise ratio with false positives, but IMO I'd rather a provider be at least given the time to pause and consider the diagnosis. I'm not sure about the optimal way to do it.
The fact that it was confusing and a second Doctor went ahead and bypassed it altogether that hadn't seen the patient is a bit problematic to me.
Beyond this, as much as I empathize with the family here, people still die... I had two similar ER visits in my life and it's only chance I wasn't sent home both times... when I came down with Guilliam-Barre and when I had ketoacidosis. The former, was about to be sent home when one of the residents recognized my symptoms (sudden onset weakness all over). In the latter, urgent care said it was just a cold/virus etc.. but I couldn't even keep water down, after 4 days I couldn't stand up and called for an ambulance I dropped over 50# of weight in under a week. I remember thinking to myself "if I go back to sleep I won't wake up."
Doctors are humans, and humans have cultures. In this culture, it was normal for people to dismiss popups that seemed to be distracting, and one human shared with another human this useful tidbit of information.
People need to get real about who doctors are. They are not super-people.
The system was set up in such a way that the popup became a distraction, and humans naturally want to get rid of distraction.
When people encounter a jarring interaction with a computer, most people's default response is to blame the computer for not doing what they expected it to... even when the computer is telling them that they need to do something differently. This makes it very difficult to guide users into changing their behavior. And if the user has experienced this message erroneously in the past, they have been conditioned to presume it is erroneous.
Anyone who has ever worked helpdesk can tell you that people call in with "computer errors" all of the time that are simply messages telling the user to do something... but it doesn't occur to them to actually follow the instructions. This is a fundamental HCI issue that is tough to solve, and usually isn't solved by someone who is just building a form to check off a compliance item.
Mind boggling
Using EMR systems are nightmares for anyone actually doing things, but great for figuring out what was documented later. The two are rarely related.
If someone is trying to land a plane, would a pop-up about an engine fire that takes over all control input also be a good idea?
PS - I would suggest avoiding rhetoric like "did you even read" as per the guidelines. It's just a waste of everyone's time.
> Agyare had instructed Banerjee to hydrate Sam right away but to wait for the results of Sam’s lab work before ordering a chest X-ray or the strong antibiotics used to treat sepsis.
> But Banerjee, a novice, got stuck. He couldn’t figure out how to navigate the template to make some but not all of the auto-populated orders. “This was my first patient that triggered the sepsis pathway,” he explained, in testimony. So he asked Connor Welsh, a third-year resident, for help.
> At 8:50 p.m., Welsh showed Banerjee how. From his own computer, he clicked into a field on Sam’s chart to assert that sepsis was not likely: “Based on my evaluation,” the automated note said, “this patient does not meet clinical criteria for bacterial sepsis.”
The provider was instructed (possibly wisely) to take some of the automated sepsis actions and to defer others. The computer did not allow this without generating an automated note saying “ this patient does not meet clinical criteria for bacterial sepsis.”
Imagine if your email UI auto-classified one particular email as so high priority that it would allow you to do nothing else, including reading other emails, until you archived the priority email and, to for good measure, would auto-reply “no action needed” when you hit archive. You get a priority email, and you determine that the correct action is to wait up to 20 minutes for another email that you expect and, while waiting 20 minutes, to read other emails from the same sender. But you can’t because your UI won’t allow it. So you archive it, send the “no action needed” reply (which is outrageously inappropriate but you don’t actually have any control here), and hope you remember in 20 minutes while you are horribly overworked.
ISTM the patient’s family should consider suing the software vendor.
Mandatory "snooze" button for a popup would go a long way.
Also easily accessible history of recently dismissed popups would be great.
If it were me, I would have also named the developer or administrator who implemented the popup. It sounds like a key stumbling block in a medical device.
Because in almost every GUI library, they are the default built-in "alert" setup that can be used. Almost any other alert system other than a "popup" has to be coded, and the designers and coders take the easy way out and just use the "built in popup widget" already in the library.
What's the alternative when you have a potentially dangerous action that you need to give the user fair warning about?
In rare cases that's not possible; four that I know of:
- the action is controlling something in the physical world such as a CNC milling machine, or
- the action involves acting on somebody else's computer, for example sending an email, or
- the action involves securely deleting information so that future adversaries who obtain your data storage medium can't recover it, or
- data storage space is so limited that you don't have room to log an undo record.
Obviously none of those were the case here, but when there are, there are well-known techniques for reducing the risk. For example, you can include by default a "cooling off" period to cancel the email send in or restore from nightly backups, or figure out how to do a "dry run" without a cutting tool in the chuck to see if it looks like your CNC program is going to smash the mill.
You can put a molly-guard over inevitably destructive actions; that's why the IBM PC's reset keystroke is a three-key chord, and Emacs asks for you to type "yes" or "no" rather than "y" or "n" in certain cases. (Although in many of Emacs's cases, being able to undo would have been better. Freeing up the memory of a closed buffer with unsaved changes, for example, could almost always wait a few minutes!)
It's also important in such cases for the user to be able to clearly see all the relevant information.
Corporations already push enough random HR requirements on tech employees. I can't see how having a semester or 2 of ethics courses is particularly onerous.
Safety-critical software projects should have a licensed engineer in a supervisory role.
For example: running experiments on humans without their prior consent is considered unethical. However, large tech firms routinely run A / B tests on their users without providing Informed Consent. If software developers were trained like engineers, they would be ethically obligated to obtain Informed Consent prior to engaging in this kind of conduct. More importantly, when software developers realize they were being experimented upon (as happened in the Linux kernel community a while back), they were justifiably outraged.
I know this isn't going to be a popular position to hold here, but there's a lot of harm being done by unethical practices that are currently widespread in big tech. Ephemeral ads that prey on the elderly would be considered Not Good by anyone that has seen a parent fall prey to them, yet there doesn't seem to be any concern whatsoever amongst the industry giants themselves to prevent this practice. So long as an ad brings in money, it's good to run seems to be the bar for advertisers at present, and I don't think that's good for society.
When there are no ethical considerations given to the consequences of an action, unethical outcomes are inevitable. Fixing that starts with learning, which is something every great developer already does.
Wait, what happened here? Do you have more details?
Phone notifications do. Logging out software while someone’s driving does. Every button on your car impacts life safety. Every interlock in your kitchen does.
Remember, each of these things gets rolled out 100M’s of times, so one-in-a-million scenarios kill 100’s of people.
https://www.fda.gov/medical-devices/classify-your-medical-de...
The stops - which in my experience (anesthesiologist, not ER doc, so I don't get sepsis warnings but I do get some of my own) are not popups, per se, but warnings that prevent you from leaving the screen until you have dealt with them. In this case, he could not place an order for at least some of the sepsis bundle of orders without placing all of them or making the sepsis warning go away - permanently. And the inexperienced trainee was told by the experienced supervising physician not to order the antibiotics and x-ray until at least preliminary labs had come back. At least for the antibiotics, this is good stewardship - we don't want to be giving people antibiotics for viral illnesses.
I have fought against incomprehensible ordering systems so much that when I order a chest X-ray (usually to confirm the placement of a large central IV), I have found it best to call the radiology technician and tell them what I want and let them order it under my name, because if I don't, I'll inevitably screw up some minor detail and they will have to re-order it anyway. "Chest x-ray to confirm internal jugular central venous catheter placement" (well, "CXR to check IJ CVC") is what I would have written in a paper chart; now it wants to know vast amounts of detail that I often don't know.
https://www.definitivehc.com/blog/most-common-inpatient-ehr-...
Edward’s Hospital in Plainfield, Il and Mt Sinai are two different use cases and should not count equally.
Catholic hospital, so it has its own internal issues, but it’s definitely not PE-controlled.
This plays out every time when two workers look at each other and go "How do I enter XYZ without ABC?" - "You can't do this. Here's our workaround".
This is more about unnecessary complexity. Medicine is hierarchical and like any hierarchy those at the top should be giving orders that leave lots of leeway for those who have to make them happen. EHRs often push all that onto the physician who never learned how to do that and really shouldn’t.
It’s like the old story about a green lieutenant in the army. Commander says, Lieutenant Smith, I want a flagpole on our parade ground. The dumb lieutenant tells their sergeant precisely how to do it. The smart lieutenant says, “Sergeant, the commander wants a flagpole right here. Make it happen.”
Whenever a question arises (and it will), the sergeant with a dumb lieutenant has to go back and clear every step. The smart lieutenant’s sergeant doesn’t have to call until they encounter something they don’t know how to do or can’t approve on their own authority.
That could be the motto of basically every EHR system!
No. Those systems have nothing to do with the real world. They are just a project manager's idea about "the real world". Have you used any Microsoft product lately ? Every day it tells you: "Hey , i have a new feature".
Just stop.
Hi, Product Manager and paramedic here.
The type of popup you are talking about is not what is happening here. It's a modal dialog requiring the provider to answer multiple questions to evaluate their patient (see my other comment in this thread).
And then it will warn you that the patient meets SIRS or sepsis criteria. It's not quite as simple as "regulation says user needs to get warned of blah".
Man, I feel like I've been trying in vain to fight pop-ups for my whole software development career. Now we have an example where, at worst a pop-up got someone killed, and at best it was part of the chain of events that got someone killed. I don't know what it is that draws product designers to keep reaching for that horrible UX pattern, but it's got to be stopped. Nobody reads these things so a popup is the worst place to put important information that the user needs to read!
I think a lot of pop-up usage comes from company lawyers trying to cover butts: "Well, regulation says that users need to be informed of XYZ, so just stick a pop-up there. Then we can tell the regulator 'Hey at least we did our part to inform the user.'"