Back in 2009, I was an organising committee member for an archery competition. The chairman created a massive Excel spreadsheet as the scorekeeping system for several helpers. They could access the spreadsheet on their laptops, and once the data was input, it would automatically calculate the scores and rankings of over 100 competitors in real time. The spreadsheet amazed everyone. Before that, the organising committee had to record scores on paper and calculate the rankings manually in batches.

I wanted to be like him – an expert in spreadsheets.

Since then, I have invested heavily in Excel and Google Sheets, learning all the formulae to automate tasks. Whenever I needed calculations, I built a spreadsheet.

I created a spreadsheet that calculated my CGA (now known as GPA) and provided insights on how to achieve the desired honours. My classmates were amazed and asked for a copy.

I built many “tools” using spreadsheets. I have an investment tracker that has recorded all my investments since 2015, including stocks, bonds, and even options. I also built a Kanban and Flow Metrics system with Monte Carlo Simulation for my team using Excel.

This is my biggest career regret – treating spreadsheets as a silver bullet.

Every month, I updated my investment Google Sheet. One day, several cells returned runtime errors and failed to display results. I realised the formulas had become too complex and took too long to process.

Excel and Google Sheets recalculate cells whenever there is an update. My spreadsheet has tracked all investments since 2015, containing data for over 30 stocks (including those already sold). Each stock had it own transactions and multiple properties. As there are interdependent properties like ROI and total dividends, updating one field may trigger hundreds of recalculations, eventually exceeding processing limits.

Kanban and Flow Metrics Excel spreadsheet recorded all work items since 2023, with many properties. It needed to forcast using Monte Carlo Simulation, running 5000 simulations to forecast how many work items could be completed within a given timeframe. The extensive calculations caused the Excel to freeze for at least 20 seconds with every update.

As the business context grow, I needed more complex calculations. Some formulas spanned 5 lines across multiple spreadsheet, making debugging difficult. Worse still, instead of seeking alternative solutions, I turned to VBA. Even though I struggled with the formula and VBA, I doubt my ex-colleagues continued using the system a quarter after I left the company.

Java, Go, Python, or even JavaScript can handle these calculations better than Excel with VBA.

Some podcasters claim that Google Sheets is enough to start a business. That may be true as every problem starts small. My investment tracking spreadsheet began as a simple tool to log tranascations. Then I wanted to trac ROI. Then I added multiple asset types for portfolio planning. After 10 years, this simple tool evolved into an unmanageable monster, by numermous small incremental updates.

Both of my examples involve multiple objects and complex problem spaces. They should have evolved into a real application with databases. But why didn’t I take that step? Perhaps I thought they were just small changes. Perhaps I didn’t know how to build an end-to-end application. Perhaps it was just laziness. I missed many learning opportunities.

If I had a chance to start over again, instead of diving dive into Excel formula or even VBA, I would have invested more time in learning how to build a proper application. I would have learned skills like frontend development and dockerization several year earlier. I would have learned to build a web scraper for stock quote. I would have built a maintainable Kanban system for my ex-colleagues to continue the Kanban learning journey on their own.

Does this mean we should ditch spreadsheets entirely? Of course not. If you just need to calculate income after tax, determine your one-rep max, or plot a simple graph, there’s no need to build an application. But if you find yourself working with multiple spreadsheet and complex formulae, it’s time to consider building a proper application.

This is my confession – I overused spreadsheets for daily tasks. While spreadsheets are so powerful that can be used for drawing Gundam or running Doom, we shouldn’t treat them as a silver bullet.

Let’s de-spreadsheet and start building maintainable tools for a better life.