We all love tables.
They help us organise the data in a structured way. Excel, Google Spreadsheets, LibreOffice Spreadsheets, we all know and use these tools, whether for home budget planning, groceries list, absence tracking or modeling the financial markets.
Why we do that? Because these tools are ubiquitous, easy to use and just do their job properly. However, many times, especially in a corporate setting, the popularity of a particular spreadsheet starts to be an issue.
Instead of helping people to do their job, it starts to hinder them. It might be by having multiple versions, be loaded by macros or simply be just huge and unmanageable. Also security starts to be an issue - who should see the data in the spreadsheet, who can modify it, how do we know when was a data point modified and why?
I have personally worked in a few organisations that had the mentioned problems. I am sure that you - the reader, also encountered these issues many times.
So how we can escape that Excel hell?
Probably the easiest way is to develop a dedicated web application. The advantages by doing so are numerous:
- The application will store the data in a single repository (database)
- The data can be audited (who and when had access to it)
- There can be security controls based on a users role in an organisation (that can be integrated with Single Sign On services)
- The interface can be done in a way that better reflects the problem domain, a web application's interface is not constrained by tables, charts and sheets
- It's easier to add new functionality
- Automatic data feed - some data can be automatically retrieved from other systems, increasing employee effectivness
- If needed, a mobile app can be developed to access the data or perform the same functionality as the web one
As we can see above, a dedicated web app is something that solves a lot of problems with the spreadsheets. The development of such system doesn't need to be long and costly.
One of the great things about converting a spreadsheet to a web application is that the spreadsheet itself can be treated as a prototype. Given the spreadsheet, the development team
can rapidly prepare a basic version of an application that will solve the most basic problems like scalability, data access restrictions and auditing.