Hacker News new | ask | show | jobs
by lloeki 1902 days ago
> but you can't just slap Excel in a server.

There was this company I worked for, that realised the customers (insurance biz) had a lot of proficiency in Excel, and basically half of the use case of the biz was converting these spreadsheets into web apps. Of course this a) takes a lot of time and b) isn't very agile in face of spreadsheet updates.

So my idea was to process the spreadsheet as follows:

    - list the output cells
    - list the input cells
    - parse the formulas
    - walk from the output cells to the input cells
    - use the resulting graph to transpile the spreadsheet
Can you imagine the consequences of the resulting transpiled artifacts. Source control. Diffs. Conformance tests. And more.

So I got it to an Excel+OpenDocument formula parser plus essential standard library, an AST and prototype transpiler into Ruby and Go, ready to bundle in your monolith or run in a lambda.

The thing was shot down because "If we build this, how could we bill our customers big $$$ for non-work? This would drive our gross income down, so we'd put ourselves out of business!".

Right.

And now the IP is owned by that shitty company, which sits on it to extract cash for customers.

1 comments

I wrote something like that many years ago using OpenOffice format which is basically XML, and then I translated to PHP. (http://jeffrey.io/wall-of-shame.html KaPowie)

If I didn't have so many different ideas, then I'd love to return to it.

Ultimately, I'm realizing if I want to storm this market, I need to create a successful revenue engine to explore the space. How I would do it now is provide two hacks:

(1) special format for tagging regions within the spreadsheet as either tables, objects, or values with static types.

(2) a wizard to walk through the transpilation to provide guidance and look into oddities in the sheet.

The purpose of (1) is to automate the tagging process in (2), and the key is to turn the process into a predictable game so you can move back and forth easily. Now, if you transpile from Excel/OpenSheet to Adama, you not only have source control but a reactive database with full history and auditability.