I am building a mathematical web application, that gets as input a large matrix of numbers, and does some mathematical calculations on it. The common ways to feed input into such an application are:
- An HTML table widget, where the user can directly feed the numbers.
- Uploading a file, e.g. in CSV or Excel format.
The problem with approach 1 is that, since the matrix is large, the widget may be inconvenient to use. Moreover, it may be inconvenient for the user to save the data for later use, try several different matrices and then return to previously tried matrices, etc.
Approach 2 is better in that the data is always saved on the user's computer, and the user can edit it with any tool he or she likes. The problem is that, if the user wants to make a small change and run the calculations again, the file has to be re-uploaded each time. Also, the file may have formatting errors.
I thought of a third approach: the user feeds the data into a Google Spreadsheet, and then feeds the spreadsheet URL to my application. My application reads the data directly from the spreadsheet using Google Cloud API (see this video for explanation). The advantages are that the data is always saved on the cloud on the user's account, it is easy to edit, and it is easy to make small changes and re-calculate. The disadvantage is that, in order for this to work, the user should share the spreadsheet with a special email address, generated by Google Cloud platform for my application (see the video above).
- Is the idea of using a Google Spreadsheet for feeding input into a web app reasonable?
- Is there an existing web application that uses a similar approach?
- How can the approach be made more user-friendly?