This week, spreadsheets hit the news again, when data for a book written by economist Pikkety turned out to contain spreadsheet errors. On this, Daniele Lemire wrote a blog post warning people not to use spreadsheets for serious work. This is useless advice, let me explain why.
1) Only a fool blames their tool
Heathcare.gov is built in Java. Did people go around the interwebs shouting we all should stop using Java? Of course not! Because it is easy to see that the problems stemmed from other areas: process, time pressure, lack of testing and other (human) factors probably. See how silly it is to blame a tool? The same goes for spreadsheets. Yes, they are not so easy to test, but they have many benefits, like ‘liveness’ (immediate feedback), having data, metadata and calculations in one view, ease of deployment. In that sense, they have benefits over other programming environments.
2) No, we do not know better!
I have been working on spreadsheets as a researcher for about 5 years now, and during that time I spoke with a lot of spreadsheet users. Of course, I asked them why they would run a bank/insurance company/airline on spreadsheets. You know what many of them say?
“We asked IT to build this, they said it would take 6 months and half a million euros. And most likely it will be more expensive and not what we want.”
The reality is that it is just not feasible to build software for all business processes. We don’t have the manpower, and frankly, in many cases also not the domain skill needed. So what we need to do isn’t ridicule spreadsheet users. They have been disappointed by us many times. I already mentioned healthcare.gov and there are so many other IT screw-ups that it is almost arrogant to claim superiority over the spreadsheet users.
3) Like democracy, spreadsheets are the worst, except for all others
Then, in addition to our riducule, we try to push tools to them, “real” programming languages, that nor fit their needs nor their skills. They will never learn Java or C#. Python maybe, that seems to be easy to use for end-users, but certainly not for all of them. End-users are not programmers, they don’t want to be and they should not need to be.
Instead of shaming spreadsheet users, let’s focus on inventing better spreadsheet-killers tools (Tableau is my personal favorite at the moment). Or, and this is my line of research, help spreadsheet users to test, measure and refactor. No one, really, no one, is helped with your judgement without thinking about alternatives.