New: Try Voli The Bear, Fast package manager (and not only) for Windows
Updated Jul 10, 2026 Edit on GitHub

Where Everyone Starts: Spreadsheets

Open a spreadsheet and there's your data, right in front of you - a grid you can click, sort, color, and fix on the spot. No setup, no login, no waiting. This is why it's the most-used data tool on Earth - starting there isn't a beginner's mistake. For a huge amount of real work, a spreadsheet is exactly the right answer.

The skill that actually matters isn't avoiding spreadsheets. It's knowing the precise moments they stop serving you - so you can move up before a deadline or a broken report forces your hand.

Why spreadsheets are genuinely great

You can see everything. The data is the interface. There's no hidden layer between you and the numbers - what you see is what you've got. For exploring a new dataset, spotting an obvious outlier, or showing a colleague "look, here," nothing beats it.

They're endlessly flexible. A cell can hold a number, a word, a date, a formula, or a note to yourself. You can restructure on a whim - insert a column, jot a comment, paste a chart next to the table. The tool never tells you "no."

They're instant. Type a formula, see the answer. Change a number, watch everything recalculate. That tight feedback loop is genuinely powerful for thinking through a problem.

💡 Key point. A spreadsheet's strengths - visible, flexible, instant - are exactly what make it the right tool for small, exploratory, one-person, one-time work. Hold onto that. It's the same yardstick you'll use to know when you've outgrown it.

Where spreadsheets quietly break

None of the following means spreadsheets are bad. It means they have a range, and past that range the very flexibility that helped you starts working against you.

Size limits

A spreadsheet keeps everything in memory and re-runs every formula on every change. That's why it feels instant at small sizes - and why it crawls, then chokes, as rows pile up. There's even a hard ceiling.

   Excel:         max 1,048,576 rows per sheet   (source: Microsoft docs)
   Google Sheets: max 10,000,000 cells per file  (source: Google docs)

What just happened: Those aren't "slows down around here" numbers - they're walls. Hit them and the tool refuses more data. You'll feel pain long before the wall, too: a sheet with a few hundred thousand rows and a column of lookups can take seconds to recalc on every edit.

No real types

In a database, a column is declared - "this column holds dates, and nothing else." A spreadsheet makes no such promise. Every cell decides its own type, and the tool guesses.

   A column you think is "dates":

   2026-03-01      ← stored as a date
   3/1/2026        ← stored as a date, different format
   March 1         ← stored as TEXT (no year, can't sort)
   '2026-03-01     ← leading apostrophe → stored as TEXT

What just happened: Four cells that all look like the same date to you are four different things to the spreadsheet. Sort that column and the text rows scatter to the wrong place. Sum a "number" column where one cell is secretly text, and it silently leaves that row out - no guard rail, because there's no declared type.

⚠️ The gotcha that eats real data. Spreadsheets auto-convert anything that looks like a number or date. A gene name like SEPT2 becomes the date "September 2." A part number 00123 loses its leading zeros and becomes 123. This is so common that scientists renamed human genes to stop spreadsheets from corrupting them (source: HUGO Gene Nomenclature Committee, 2020). If your IDs or codes matter exactly as written, the spreadsheet is silently rewriting them.

Copy-paste errors

Because the data and the formulas live in the same grid, one stray paste or one dragged-too-far formula can quietly break a calculation - and there's nothing to catch it. A famous economics paper's conclusions were undone when a formula was found to have skipped five rows of a selected range (source: Herndon, Ash & Pollin, 2013). The error wasn't exotic. It was a range that didn't cover all the data - the most ordinary spreadsheet mistake there is.

   =AVERAGE(B2:B15)     ← you meant B2:B20, dragged the box too short
                          → the answer is wrong, and nothing warns you

What just happened: The formula ran perfectly. It averaged exactly what you told it to - which wasn't what you meant. Spreadsheets do exactly as asked, and "as asked" is easy to get subtly wrong by hand.

No single source of truth

The moment a spreadsheet matters, it multiplies. Someone emails budget_final.xlsx. Someone replies with budget_final_v2.xlsx. A third person edits the copy in their Downloads folder. Now there are three "truths" and no way to know which is current.

   budget.xlsx
   budget_final.xlsx
   budget_final_v2.xlsx
   budget_final_USE_THIS_ONE.xlsx      ← which number is real?

What just happened: Each copy drifted independently. With files, "the latest version" is a hope, not a guarantee. Shared cloud sheets help - one file, many editors - but they trade the version problem for a new one: two people editing the same cell, with the last save quietly winning.

Manual means unrepeatable

This is the deepest one. The work in a spreadsheet lives partly in the file and partly in your head - the steps you did by hand. "Paste the new data here, delete the blank rows, fix the date column, drag the formula down, refresh the chart." Next month you have to remember and redo all of it, perfectly.

   Every Monday, by hand:
     1. download this week's export
     2. paste into the sheet
     3. clean the date column
     4. drag formulas down
     5. update the chart range
     6. email the result

   ← miss one step, or do it slightly differently, and the report is wrong

What just happened: Nothing was recorded. The process exists only as a habit, which means it can't be trusted to run the same way twice, can't be handed to a teammate cleanly, and stops entirely the week you're on vacation. A spreadsheet stores results, not the steps that produced them.

So when do you move up?

You move up when the work crosses one of those lines - not before. As a quick read:

The pain you're feeling What it's telling you
The file is slow, or you're near the row limit Size has outgrown the sheet
IDs or dates keep getting mangled You need real, declared types
Numbers don't match and nobody knows which file is right You need one shared source of truth
You redo the same steps every week, by hand The work needs to be automated

The first three point you toward a database and SQL - Phase 2. The last one, once a database is in place, points toward a pipeline - Phase 3. We'll take them in that order, because that's the order the pain usually arrives.

Recap

  1. Spreadsheets win at being visible, flexible, and instant - perfect for small, exploratory, one-person work.
  2. They break on size (real, hard row/cell limits), no real types (cells guess, and auto-convert your IDs and dates), and copy-paste errors (formulas do exactly as asked, which is easy to get wrong).
  3. They break on no single source of truth (files multiply and drift) and on being manual (the steps live in your head, so the work can't be repeated reliably).
  4. You graduate when the work crosses one of those lines - and the which line tells you where to go next.

Next: the tool built precisely for the first three pains - a database, and the language you ask it questions in.


← Guide overview · Phase 2: Outgrowing the Sheet - SQL & Databases →

Before the quiz: without looking back, say (or jot down) the core idea of this phase in your own words.

Check your understanding 3 questions

1. What are spreadsheets genuinely great at?

2. What does it mean that a spreadsheet has no real types?

3. Which spreadsheet weakness is the deepest, pushing you toward a pipeline later?