The core reasons for the success of spreadsheets are their immediate feedback system and their continuous deployment model.
Spreadsheets are enormously successful. It is estimated that 95% of all US companies use spreadsheets for financial reporting (1). In the eighties spreadsheets became “the medium, the method, the tool, and the language of financial analysis” (2) This success raises the questions what makes spreadsheets so perfect for end-user analysis.
Many reasons have been suggested, such as their ease of use and their flexibility (3). I admit that in the early stages of my research, I also thought that these were the core of the matter (4).
Ease of use
However, when I proceeded in my research, I found that spreadsheets aren’t that easy to use. Many errors are made with spreadsheets, estimates of one error per 100 cells are comparable to estimates of errors in source code, about 1 per 100 lines. And the internet is filled with books, courses and questions on spreadsheets, so we cannot call them intuitive either.
So if spreadsheets are about as hard as making software, in terms of error rates, what does drive their huge use?
Next try: spreadsheets are flexible. I believe thy are, however, this is not the deepest reason. Let’s have a look at what it really means to be flexible. The entry in merriam-webster reads: ‘a ready capability to adapt to new, different, or changing requirements’. Now we are getting somewhere. It is easy to adapt spreadsheets to changing requirements. But why is it so much easier to adapt a spreadsheet than a piece of software?
1) Immediate feedback
Because, if we change a formula, immediately the results are changed too! The feedback system enables the flexibility. If is was just as easy to change the formulas, but we did not get immediate feedback, the spreadsheet would not at all feel so flexible.
Also, the threshold of change would be higher, as it would be harder. We have seen this when observing users work with Access. Because there is a separation between the data (tables) and the calculations (forms or queries) it was a lot hard for users to adapt them. Changing a table did not immediately lead to a change, unless a corresponding form was also updated.
2) Continuous deployment
So what powers this immediate feedback system? Exactly, continuous deployment. No need to rebuild, recompile or rerun, it just works. You won’t be distracted from your goal, you can focus on the business logic and on getting the results you need.
A second benefit of this deployment model, combined with the fact of course that on almost all computers in the world Excel-compatible software is installed, is that it makes spreadsheets very ‘shareable’. You can email them around, to other companies, clients or coworkers and they will be able to use and adapt them, without configuring efforts.
I believe this is what makes spreadsheets the number one tool for end-users. Let me know what you think by commenting below, or send me a tweet with #tweetprop.
Update after comment by Neil
Originally, one of my other propositions was that these principles are applicable to software engineering in a broader sense. Since we had better propositions, that one was dropped, but I still believe that other programming platforms it would be beneficial to have quick feedback and easy and constant deployment. ICSE this year will have a workshop devoted to this theme.
1: Sarbanes-Oxley: What About all the Spreadsheets? Raymond R. Panko & Nicholas Ordway (Arxiv)
2: Serious Play: How the World’s Best Companies Simulate to Innovate – Michael Schrage (Google books)
3: The Use of Spreadsheets: Considerations for Section 404 of the Sarbanes-Oxley Act – PWC (AuditsoftwareNet)
4: Supporting professional spreadsheet users by generating leveled dataflow diagrams Felienne Hermans, Martin Pinzger, Arie van Deursen