Two jobs at once
A basis of a space must do two things at once: be independent (no wasted vectors, so it is as small as possible) and span the whole space (so it can build every vector, missing nothing). Drop a vector and it stops spanning; add a vector and it stops being independent. It is the perfect building set.
Coordinates become unique
Here is the payoff. Because a basis is independent, every vector has exactly one coordinate recipe in it — one and only one set of coefficients. Spanning guarantees a recipe exists; independence guarantees it is unique. That uniqueness is what makes coordinates a trustworthy address system.
Basis B = { (1,0), (0,1) }
v = (2, 3) -> coords [2, 3]
Basis C = { (1,1), (1,-1) }
v = (2, 3) = a*(1,1) + b*(1,-1)
a + b = 2
a - b = 3
-> a = 2.5, b = -0.5
same v, coords [2.5, -0.5] in basis CEvery basis is the same size
A deep fact: any two bases of the same space have exactly the same number of vectors. You can choose different bases, but you can never change the count. That fixed count is the dimension of the space — 2 for a plane, 3 for ordinary space, n for R^n.