GridBook web app header background

GridBook

Natural Language Formulas for the Spreadsheet Grid

Writing formulas on the spreadsheet grid is arguably the most widely practiced form of programming. Still, studies highlight the difficulties experienced by end-user programmers when learning and using traditional formulas, especially for slightly complex tasks. The purpose of GridBook is to ease these difficulties by supporting formulas expressed in natural language within the grid; it is the first system to do so. GridBook builds on a parser utilizing deep learning to understand analysis intents from the natural language input within a spreadsheet cell. GridBook also leverages the spatial context between cells to infer the analysis parameters underspecified in the natural language input. Natural language enables users to analyze data easily and flexibly, to build queries on the results of previous analyses, and to view results intelligibly within the grid—thus taking spreadsheets one step closer to computational notebooks. Our comparative lab study with 20 experienced data analysts, new only to GridBook, shows that data analysis with GridBook is significantly faster on average than with computational notebooks, and no slower than with conventional spreadsheets. Our study uncovers insights into the application of natural language as a special purpose programming language for end-user programming in spreadsheets.

A web implementation of GridBook is available to try at: https://microsoft.github.io/gridbook/ (opens in new tab)

table
The GridBook Interface
Section (1) shows the data table.
Section (2) shows progressive exploration of data, column wise.
Section (3) shows a complex query returning multiple columns of results.
Section (4) demonstrates progressive exploration where a query takes its previous query as context. (a) – (f) are NL formulas.