May 9, 2008

More arguments for spreadsheet-oriented computing

Jonathan Edwards filtering Gregor Kiczales on building "sloppy systems." Spreadsheets as an example of informally specified, program-as-you-go, always-working, live "persistent object" systems have been pointed out by both Edwards and Alan Kay. Which begs the question, why not investigate the limits of the existing paradigm instead of coming up with new ones (Subtext, EToys, etc.)?

Daniel Gackle has been working on the Skysheet project, which addresses large parts of that question. Imagine replacing databases with persistent, versioned and auditable spreadsheets. Organic, appropriate template systems. Self-describing spreadsheets. Big ideas with very concrete business value.

I was and hope to continue to be a co-conspirator. Ideas I want to investigate: dataflow reified as spreadsheet descriptions (an idea borrowed from SPJ), unifying spreadsheets and array programming, terabyte-sized, massively parallel spreadsheet grids.

Edwards' work on Subtext is a big inspiration. His system for eliminating traditional FOL conditional notation from programming (paper, video) is a big step forward. I'm convinced it can be applied to spreadsheets. First-class copy and paste? Appropriate abstractions for the spreadsheet age.

The revolution will start with a pivot table.