Monday, January 11, 2016

The One In Ten Novillion Post

I'm attempting something new today: A Javascript randomizer function is assembling this post!  There is literally a back-end array (you can see it if you do View Source in your browser) which stores each idea expressed three different ways. Then it mixes and matches them to generate this post. You might expect it would sound jumpy, but go ahead and refresh your browser -- you'll see that it always reads nicely! 

Can you believe that I actually USE this technique in my day job? I will get to that, but it's a bit of a journey. It starts with how I got into forecasting... 

Brett's Humble Reporting Beginning
Like most of you, my career has evolved over time. I actually started off doing data warehousing.  At first, I built reports around very matter-of-fact historical data.

Years later, I began building executive dashboards.  These
Dashboards use something called KPI's (key performance indicators), which let executives quickly assess how their business or department is performing.  Suddenly, I was interacting with executives directly, and helping them craft performance metrics. 

One could argue that I was then serving in a higher level capacity: making recommendations, instead of gathering inert information.  It was only another ten years after that, when I finally made the next leap: into forecasting. 

Foray into Forecasting
This transition wasn't as smooth as I had expected: I needed to substantially broaden my skill set, especially in statistics.  I dove in and began studying furiously, trying to chip away at the many skills I needed to acquire.  Fortunately, my reporting skills gave me a huge advantage over pure statisticians: A successful forecast involves not only crafting proper statistics, but communicating it to a diverse audience.  And I was already pretty good at that. 

I now consider myself to be a capable forecaster, but my reporting skills are as important as ever.  Below is a great example of how good reporting can supplement good forecasting. 

The Problem With Daily Forecasts…
It's not uncommon for people to receive daily updates for some of my forecasts.  Executives often insist that people review the changes every day.  You can probably guess the solution: Update everybody in an email. 

But there's just one snag: I was no stranger to developing email alerts and I was painfully aware that most people quickly learn to detest email alerts. 

How come?

Our brains crave novelty. Receiving a very similar message, day-in, day-out, becomes unbearably tedious almost immediately.  Granted, there are exceptions to this rule, but for any sufficiently-dry topic, people simply won't have the energy to read the alert for very long.  How did I get around this problem?

I gave people what they wanted: novelty.  Each day, an automated message went out to a broad audience, but every part of it was changed, every day.  For each line in the email, I expressed the same idea in a number of different ways. 

Like so: when the forecast went up, I might say, "got a boost of", "went up by", "jumped up to", et cetera.  This email alert had over twenty randomized parts -- from the salutation, through what had changed, to the farewell. 

As a result, people actually read it each day. I should mention that I used other techniques, too -- making the email very colorful and visually appealing.  But I've been told by several people that the varied wording keeps the email fresh each day. 

Oh, and it was embarassingly easy to code.  One modest function does all of this: GET_QUIP() contains a two-value array with 5-6 ways to say 20-or-so different things. You pass it a value (e.g., "down") and it returns a way to express it at random (e.g., "declined").  So, if you're ever sending out an automated alert to a broad audience, I highly recommend this trick! 

So what did you think?

Now that you've read it, did it read like a normal article? Imagine now having to re-read it -- would you like it better if it stayed the same, or do you appreciate the variety? I must admit, I noticed my tone was not quite so flowing.  I know it' a bit overblown to write an article like this (this truly isn't the right venue for such a technique -- it's better-suited for an email alert, but I thought the novelty alone was worth it. (...After all, I cannot lure in readers with my tawdry prose alone.)

Let me wrap this post up, but first: From what I've calculated, you had a 1 in 10 novillion chance of reading this particular variant. Lucky you.  Here's a thought: that's ten trillion variants for every second since the universe began.  Every person could refresh their browser every millisecond for their entire lives, and never see the page you're looking at right now. 

In Retrospect, 5 Years Later (2/13/16)
I originally wrote this post five years ago, when I was first diving into forecasting.  My career seems to be going by despairingly fast. 

Back then, I thought the only reporting possibilities were to look backwards or look forwards.  How wrong I was -- the world of reporting is far richer than only past vs. future.  Since then, I've delved into optimizations (e.g., linear programming), simulations (Monte Carlo models, decision trees, etc), even even fuzzy matching.

I wonder if, five years from now, I'll find my current perspective similarly narrow. I kind of hope I do!

No comments:

Post a Comment