I am fascinated with spreadsheets, not for what they do, but what they enable. You don’t need to spend a lot of time thinking about them to realize they are the duct tape of computing. If you know someone who has access to a computer, there is a good chance they use a spreadsheet to get something done, or, entirely live in spreadsheets.
Why is it a universal interface? It starts with a Table.
Why do spreadsheets work for everyone? You can build fancy graphs on a page, yet chances are no one will understand them. But use a spreadsheet, and suddenly everyone is an expert. Trying to migrate employees to a new app might be a challenge, but give then a spreadsheet, and they are power users on day one.
A table as an interface for information works because they are all around us. From kids’ multiplication tables to flight schedules, tables are everywhere. This exposure to tables has made the interface intuitive and universally understood.
How does an interface enable computing?
There is an excellent line from Butler Lampson from Microsoft Research
Except for spreadsheets, we have not been very successful in finding better ways for them (non-programmers) to adapt the computer to their needs.
Somone in technology might disagree with this statement, but ask anyone from a non-tech background, and they will say the spreadsheet is probably the most important tool they have. When was the last time you needed a teach someone how to use a spreadsheet?
Spreadsheets allow users to read and write to a data source, process information, take data and split it, merge it, slice and dice it any way they want. It allows them to write instructions for the computer to automate tasks. It almost functions like a development environment that enables its users to build solutions that store data, track tasks and items, and even build comprehensive financial models.
So what is missing?
Spreadsheets have brought computing to the masses, but with a lot of limitations. What you can do is limited to a certain number of rows, the processing power of your machine if you are working locally, the ability of the user to work with large volumes of data, with no relationships between the columns or the rows, lack of audit logs, etc.
They also always present us with raw data. Any form of reduction of the data almost always involves interacting with all the raw data, which is cumbersome.
They don’t abstract the structure of the data from the data itself. These gaps have allowed many software companies to thrive by creating vertically deep solutions for unique use cases.
We can resolve most problems with spreadsheets by providing users with three simple services for a start.
1. Reading from various data sources (even other spreadsheets)
- Get Google Analytics, and Facebook Ad spend, your attribution provider’s, and your internal data into one spreadsheet.
- Get your Stripe data and customer support data into a single spreadsheet to find new insights or compare tickets raised to plans purchased.
2. Writing to multiple data sinks
- Update customer data from Google Sheets to your CRM or your internal databases
3. Automations around reading and writing
- Read data from one service & push it to another, either manually or via triggers.
With this, one can build anything on a spreadsheet. Users already are adept at using a spreadsheet to:
- Clean and format data
- Filter data
- Chart out data
- Using Spreadsheets to build reports/dashboards
We don’t need to reinvent the wheel. We need to give users more capability. Trying to reinvent the wheel, adds to the learning curve and, more importantly, increases the time taken to find value from a solution.
People use spreadsheets not because there are no better solutions out there; they use it because spreadsheets are simpler to use; everyone is already a power user and can get things done more quickly.
Combining the three things mentioned above will empower anyone who knows how to use a spreadsheet to build solutions for their internal problems.
If you have strong opinions on spreadsheets, drop me at email at firstname.lastname@example.org