Overview
Bean is a conceptual re-imagination of the spreadsheet environment. We worked closely with Prabhanshu and Neena from Nilenso, rethinking the fundamentals of spreadsheet design. This website houses our research into the history of spreadsheets and the research literature around it, musings on the conceptual design of spreadsheets, and documentation of our design prototypes.
Rethinking Spreadsheets
Spreadsheets always stood out as having this distinguished position in the design space for the problems it addresses. It is intriguing that the infinite rectangular grid enables users to leverage it as a moldable programming medium without realizing that they are doing so. It has cracked something right as it accommodates both a freeform expansive grid in which users can explore their ideas and then incrementally bake this work into formal data structures if they so prefer.
Given the pervasive adoption spreadsheets have had, it is enigmatic that the paradigm in the mainstream has gotten little exploration of radical changes over time since its inception from the VisiCalc days. Maybe it is that we have converged on a global optimum, or there might be something in the interlock of the situation that sustains it in its local maxima. It is an interesting question how a standardized product managed to meet the evolving user expectations in a changing business and tech landscape for more than 60 years since its inception in 1960s up until 2020s.
Either way, when Nilenso approached us with an open-ended research project to collaborate on thinking about spreadsheets from the ground up, we jumped right in to find out. These pages catalogue our thinking around understanding what the tradeoffs involved in the spreadsheet environment are and designing interactions for spreadsheets, drawing from the rich literature around it and fusing it with our ideas from our experience in interface design.
Bean Playground
We designed Bean, a spreadsheet environment, that tries to hit a sweetspot between end-user programming and spreadsheet manipulation. It is designed to be a space that acts as our foundational field for rethinking how we interact with the spreadsheets. While the direction is still early and far away from our vision for a full-blown rethought spreadsheet interface, our work so far resulted in introducing the concept of tables as a first class programmable construct. Tables are superimposed regions that doesn't go against the zero abstraction gradient nature of the free-form spreadsheet grid. Play around with it here:
We attempted to expand the happy middle ground of direct manipulation meets linguistic powerful formula language through this. It makes operating with formal structures smooth by enabling users to upgrade freeform areas of the grid structure into a formalized region where they can incrementally climb up the abstraction gradient as the use case demands. It also doubles out as a space that allows for appling user-defined functions as in a programming language and grants ability to refer them in the cell formulas.