DEV Community

Cover image for Technology Must Know When to Say "I Don't Know"
Ben Halpern
Ben Halpern

Posted on

Technology Must Know When to Say "I Don't Know"

#ux

I was riding home on the highway last night when our car came to a stop due to traffic from an accident on the highway. Waze had been predicting the time it would take to get home, using crowdsourcing and Google's aggregate traffic data to give a pretty accurate prediction. But in this case when Waze tried to keep us informed, it had no idea.

We came to a stop and the program adjusted its expectations by about 10 minutes, then 20, 30, 40. Soon enough it was expecting a wait of about 90 minutes. This didn't make my fellow passengers very happy—but the program was useless at that point.

Waze had no clue. Waze can't predict the future, it can only make accurate predictions based on aggregated data, not specific answers relating to the prediction. Waze has no idea how long the tow trucks are going to take, what might be holding up the ambulance or the police investigation. Waze is completely in the dark as to what might actually make these cars keep moving.

And yet Waze kept giving predictions. This is a bug. The most accurate prediction in this case is "I have no clue".

As technology becomes "smarter", it encroaches on a concept previously left to the humans: nuance. Software-driven human interfaces need to be able to handle nuance if they are responsible for those kinds of situations. Devs are very familiar with the idea of faking things. We fake progress bars when we don't have any clue how long a thing is going to take—only that it will take a shortish amount of time. We don't always do a great job of informing users when our programs have lost any grounds for predicting an outcome.

When the answer is unknown or nuanced, an assertive "I don't know" beats an inaccurate prediction.

Top comments (16)

Collapse
 
yechielk profile image
Yechiel Kalmenson

This is a bug in many humans as well.

The quality I respect most in teachers if the ability and humility to say "I don't know".

Collapse
 
peiche profile image
Paul

My wife and I homeschool our daughter. We're not afraid to say "I don't know, but let's see if we can learn!" This teaches several things:
a) adults don't know everything, and that's okay
b) not knowing the answer is nothing to be ashamed of
c) you're never too old to ask questions
d) you're never too old to stop learning

Cheers!

Collapse
 
yechielk profile image
Yechiel Kalmenson

I used to teach third grade.

I used to love when a kid asked a question I didn't know the answer. It gave us a chance to try and research it together as a class.

If we couldn't find an answer in a reasonable amount of time I would have the kids take the question home and see if they could get the answers there.

Bonus benefit: it got some parents involved in the class that otherwise would not have :)

Thread Thread
 
bdwakefield profile image
Benjamin D Wakefield

One of the best teachers I had was my HS history teacher; there were some times he was asked a question and he would say "I don't know the answer to that but I will research it and find out for you."

It was so much nicer than getting a total BS response.

Collapse
 
ben profile image
Ben Halpern

Very true!

Collapse
 
bilus profile image
Bilus • Edited

Often, teachers who have the humility to say "I don't know" will give you hint on where they would search the answer. So in the Waze example, it could suggest a traffic radio link.

Collapse
 
ferricoxide profile image
Thomas H Jones II

They'd need a DB schema extension, for that ...and then someone to populate the new "traffic radio" field's broadcast-area GIS data. ;)

Even still, the value Waze (et. al.) typically brings is greater immediacy and accuracy vice what most traffic radio gets you. Prior to Waze, you usually had to wait until some regular interval for the commercial radio station to air it's traffic segment. This was often only once or twice an hour (and as frequently as every ten minutes on the traffic-specializing local news-only stations). Worse, once you complete the wait for that radio station's traffic-report, the data reported was typically 30+ minutes stale. Translation: saying "check the radio" is probably at least as bad as revising time-estimates based on crowd-sourced current speeds/distance calculations. Even "tune to the metro-area's regional traffic-service frequency" is a hand-wave: while that has immediacy, the data tends to still be of "best guess" nature.

Collapse
 
bgadrian profile image
Adrian B.G.

The business side will never accept this :/

As we move more and more to ML models/neural networks, there will be more of "have no idea what the result is and how it was calculated", I think, so the things will be worst.

Collapse
 
khophi profile image
KhoPhi

I would want my app to tell me it doesn't know something than give me false hopes.

In this case, I would really appreciate an "I don't know" answer too.

Might not be what I wanna hear at the moment, but that's the reality and the truth.

I think instead of these apps trying to cook up estimations from nothing, they should fallback, should everything fail, to simply saying, "dude, I have idea. You're on your own"

Collapse
 
erebos-manannan profile image
Erebos Manannán

Actually the best possible prediction would've been something like "10 minutes after traffic starts moving again"

Collapse
 
renannobile profile image
Renan Lourençoni Nobile

Once I was navigating the web and clicked a link that redirected me to a 404 page. The error message said "We are very sorry, but we have no idea what happened". I laughed and had to respect their sincerity.

Collapse
 
chris_bertrand profile image
Chris Bertrand

Hear hear

Collapse
 
bengreenberg profile image
Ben Greenberg

If developers weren't penalized for it in many work environments, the ability to say "I don't know" could be a powerful catalyst for further growth and development.

Collapse
 
satansly profile image
Omar Hussain

That happens when you miss the finally block in your code after a series of catch blocks :)

Collapse
 
ben profile image
Ben Halpern

catch { ¯\_(ツ)_/¯ }

Collapse
 
daviesjpuk profile image
Jon Davies

Maybe null wasn't a billion dollar mistake after all. Although as Crockford points out - "undefined" might be better.