Building a Language for Spreadsheet Refactoring by Felienne Hermans.
Summary:
Felienne Hermans introduces BumbleBee, a refactoring and metaprogramming spreadsheets tool based on a DSL that can perform transformations against spreadsheet formulas.
Argues that spreadsheets are code, rather convincingly. (Answer to the everybody must code argument?)
Uses code smell based analysis.
Has authored a refactoring tool for Excel.
Covers functional programming in F# to create the refactoring for Excel.
Analyzing and Visualizing Spreadsheets Felienne’s dissertation.
Abstract:
Spreadsheets are used extensively in industry: they are the number one tool for financial analysis and are also prevalent in other domains, such as logistics and planning. Their flexibility and immediate feedback make them easy to use for non-programmers.
But as easy as spreadsheets are to build, so difficult can they be to analyze and adapt. This dissertation aims at developing methods to support spreadsheet users to understand, update and improve spreadsheets. We took our inspiration for such methods from software engineering, as this field is specialized in the analysis of data and calculations. In this dissertation, we have looked at four different aspects of spreadsheets: metadata, structure, formulas and data. We found that methods from software engineering can be applied to spreadsheets very well, and that these methods support end-users in working with spreadsheets.
If you agree that spreadsheets are programming, how often do you think user/programmers are capturing the semantics of their spreadsheets?
That’s what I thought as well.
PS: Felienne’s website: http://felienne.com, Twitter: @felienne