Spreadsheet applications offers a lot of usability. The concept of using a grid of variables that are easy to reference is a surprisingly powerful concept.
Many applications can be prototyped in spread sheet applications. I use google drive in order to have a powerful and flexible time reporting solution. I quickly realized that in order to have a software that exceeds these benefits, I would have to spend a lot of time writing it.
A few days ago I was about to do something that is usually simple in code, but turned out to be hard in excel. The functions available have not evolved very much since the introduction of spreadsheet applications. This is probably due to the fact that the people expected to work with these type of applications are not expected to learn new concepts (Excel looks very different from the early spreadsheet programs). During that time, commonly used programming languages have evolved. Perhaps it’s time to put the lessons learned in programming to use in spreadsheet applications.
There are some difficulties in applying concepts from programming to spreadsheets. There is not a natural way of assignment for functions that return multiple results, structs or objects. This puts a limit on what type of functions can be used. However, I do believe that it’s possible to use functions that return a single string or number variable to increase the usefulness of the concept.
Comments or errors? Fork post and do a pull request on github