Just Show me a Spreadsheet: A Guide to Keeping Non-Tech Team Members Happy

Your technology may be in the cloud, but your business still runs on spreadsheets

Expected Behavior
Expected Behavior Blog
4 min readOct 25, 2019

--

By Nathan Acuff

We all like to think that we leverage the best technology tools to run our business, but deep within virtually every single business is a load-bearing spreadsheet — or a dozen load-bearing spreadsheets. Sometimes they aren’t even buried that deep.

Modern business tools have come a long, long way, and the best tools emphasize integration and aggregation as first-class features. This is great if you’ve invested the time to set things up and have sales, marketing, and C-teams that are comfortable with your business intelligence tools. This post isn’t about that happy path. This is about what happens when an account executive just needs some historical usage and really, really doesn’t want to sign up for yet another tool.

Business data in APM?

We use Instrumental for APM as well as for some business bits. Instrumenting higher-level concepts like usage and feature interaction in the same tool as our crunchy server stats has been a big win for us. As a result, we have some data that we could pull from our database or BI tool, given time to build and run the appropriate queries, but that gets messy quickly when you need to share and iterate on it with less technical team members. So, which tool do the less technical team members love? Spreadsheets.

Give me an example already!

Let’s go back to our account executive who wants to know about some client usage. I’m going to use our other company, DocRaptor, as an example because it has a very clear test/paid line and a very clear 1 document = 1 unit of usage model, but this applies anywhere. I know we have that usage data in Instrumental, so let’s get it out.

We’re going to use Google Sheets excellent custom script facility and the Instrumental Metrics API. Let’s write some code.

First, we set up a few things we’ll need for the query:

Okay, so far so good. We could pull a lot of that out into arguments, and we will, but let’s keep going and build our request:

Easy peasy. Now, we just transform Instrumental’s JSON response into a table:

Okay, what does that look like? I threw a chart on there for fun.

That seemed too easy. What does that same data look like in Instrumental?

Not bad. Okay, now our AE is happy, but can we make their life even easier?

Variables?

What if we could just provide a spreadsheet function so users could specify what they wanted to find? It’s trivial to add some parameters to the custom function we created:

Now, I slap =INSTRUMENTAL_USAGE(B1, B2, B3, B4) into a cell on that page, and, magic:

Now, anyone who can spreadsheet can pull whatever usage data they want into the environment they know and love.

Conclusion

With Google’s custom script feature, you can pull data directly from any tool you use that has a reasonable API and then interact with it just as you would any other data. I kept the Instrumental queries in my example to one result, but this function could easily be extended to pull multiple time series in one call. I don’t really want to use spreadsheets as an alternative UI to Instrumental, but it’s nice to know I could if needed.

--

--

Expected Behavior
Expected Behavior Blog

Official account for Expected Behavior. You can tweet us at @EB.