spreadsheets are code
DESCRIPTION
I have said it before, and I'll say it again: Spreadsheets are code. This talk explains why and discusses the implications.TRANSCRIPT
Spreadsheets are codeFelienne Hermans (@felienne)
Spreadsheets are codeFelienne Hermans (@felienne)
In this slidedeck I explain whyy spreadsheets are code, and what we can do with that idea.
Spreadsheets are mislabeled
Spreadsheets are mislabeled
People often think of spreadsheets as data, but...
Spreadsheets are code
Spreadsheets are code
I have made it my life’s work to spread the happy word
“Spreadsheets are code!”
Spreadsheets are code
I have made it my life’s work to spread the happy word
“Spreadsheets are code!”
If you don’t immediately believe me, I have three reasons*
* If you do believe me, skip the next 10 slides ;)
1) Used for similar problems
This tool (for stock price computation) could have been built in any language. C, JavaScript, COBOL, or Excel.
The problems Excel is used for are often (not always) similar to problems solved in different languages.
2) Formulas are Turing complete
2) Formulas are Turing complete
I go to great lengths to make my point. To such great lengths that I built a Turing machine in Excel, using formulas only.
Here you see it in action. Every row is an consecutive step of the lint.
This makes it, in addition to a proof that formulas are Turing complete,Also a nice visualization of a Turing machine.
3) They suffer from the same problems
3) They suffer from the same problems
3) They suffer from the same problems
3) They suffer from the same problems
In summary: both the activities, complexity and problems are the
same
So if spreadsheets are code, can we apply software engineering methods?
In software, tools have been created to
help programmers understand code
Speadsheets however, lack support for testing, refactoring and code analysis.
My goals is to bring those tools to spreadsheets
In my dissertation, I defined smellsfor spreadsheet formulas
www.felienne.com/publications
In my dissertation, I defined smellsfor spreadsheet formulas
If you say smells
If you say smells, you say refactoring
So, we built BumbleBee: a refactoring tool for spreadsheets
So, we built BumbleBee: a refactoring tool for spreadsheets
You can download BumbleBee frommy website
(felienne.com/BumbleBee)
The transformations are entirely programmable, with a small language
And of course, if you say refactoring,
you say …
And of course, if you say refactoring,
you say testing
Spreadsheets tests are hiding in plain sight
These test formulas are common, and they can be exploited
Our tool Expector can find test formulas
Expector helps users to understand robustness of their spreadsheets
Also available:felienne.com/Expector
Thanks for viewing the slides for
Spreadsheets: are code!
Want to know more?
• Visit my sites felienne.com spreadsheetlab.org
• Send a tweet @felienne
• Send an email [email protected]