Connecting a Spreadsheet to the Web
Our client had an advanced set of algorithms implemented in a Microsoft Excel™ spreadsheet.
They needed a low-traffic web-site demonstrating their technology to potential clients.Re-implementing the logic as a web application was the obvious approach, but had serious drawbacks:
- Implementing and verifying its correctness were both significant efforts.
- Once duplicated, changes to the spreadsheet would require changes to the web application.
Instead of re-implementing the logic, we ported the spreadsheet from Excel to OpenOffice Calc, and operated on it from a web application. Revisions to the spreadsheet are as easy as dropping the new spreadsheet in place.
A server process loads the spreadsheet (which takes significant time), and operates on it. The web application is a CGI process interacting with the server and formatting the results for the web.
All components were written in Python, using the OpenOffice Py-UNO bridge.
The algorithms transform some twenty inputs into dozens of outputs.
We used OpenOffice Calc instead of Excel for both technical and licensing reasons.