drud.is

Make a data-driven decision and get fired

When BigQuery leads to Big Mistakes!

Recently I bumped into one of the funniest bugs I’ve seen in a while.
Google’s BigQuery is a fully-managed, serverless database for massive datasets. It truly is a fantastic product, but look at this:

Pretty straightforward, right?

Imagine these are not hardcoded numbers, but an actual division of business KPIs.
You see the ratio between them, almost 10:1. Armed with this valuable insight you are going to make an important decision, and you’ll get fired for it.

Let’s zoom out and see the full picture…

Ta-da! The value is not 10 times larger, it’s 100,000 times smaller! The decision has been a disaster. You were trying to be data-driven, but it seems no good deed goes unpunished in tech.
I didn’t resize the cell myself or manipulate the web page in any way, that was the default behavior.

How did we get there? A well-meaning designer or front-end developer reasonably thought that showing very large values would be gross and, as often happens on the web, they could use an ellipsis. The visual cue of the ellipsis is clear.
Yet, what’s not clear is that the hidden information isn’t just insignificant decimals but the exponent, crucial to interpret the value correctly. Yikes.

Oh, I didn’t get fired. I was lucky enough to figure out something was not quite right.

The bug has been reported through the proper channels.