Proposition #1

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?

Flexibility
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.

References
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

 

5 Comments

  1. Neil

    Interesting. It seems like there is overlap with the ideas of live programming and immediate feedback. But I’ve always thought the main reason for success is the similarity to existing business documents like balance sheets.

    1. Felienne (Post author)

      Yes, most definitely! Will update my post to represent that.

      However, the similarity to the balance sheets might not be of that large impact, cause the use of spreadsheets is way more diverse than just financial accounting. Think: forecasting, what-if analysis, planning etc.

  2. Bernard Notarianni

    Fully agree with your propositions.

    Actually, I am quite surprised how much is put to transpose spreadsheets (and professional IT in general) into web browsers, with lower quality and performances.

    I would instead expect people to use spreadsheets software (such a MS Excel, of Open Office) to “surf” their enterprise data. Not only for reading data, but also to co-create them, publish them and feed databases.

  3. Leif

    In Halbert’s dissertation (“Programming by Example”) he elaborates on the value of the direct feedback a bit. Programming is hard because we need mental model of program flow — values of variables, results of conditionals, loops, etc. — and “live programming” like it can be seen in spreadsheets removes that cognitive load.

    Being able to mail things around to colleagues and friends is also a reason why the Web has been so successful: it uses URLs. I suppose almost everyone has experienced receiving a link tied to a specific session ID not working for them, because it breaks the statelessness of the Web.

    1. Felienne (Post author)

      Thanks Leif for this wonderful addition!

Comments are closed.