One word can quietly become five different words
The word "nice" has been insulting, offensive, and complimentary — sometimes all within the same century.
1300s — foolish, ignorant
Borrowed from Latin "nescius," meaning "not knowing." A "nice" person in the 1300s was someone who didn't understand something — closer to what we'd now call clueless. Chaucer uses it this way; a character calling someone "nice" is not paying a compliment.
1400s — fussy, hard to please
By the following century, the word had shifted toward describing someone overly particular — a "nice" distinction was one drawn so finely it bordered on unnecessary pickiness. The core of "foolish" is gone; what's left is a kind of excessive, almost irritating precision.
1500s — precise, careful
The pickiness lost its negative edge. A "nice" calculation now meant a careful, exact one — the fussiness reframed as a virtue rather than an annoyance. This is the sense that survives today in the phrase "a nice distinction," meaning a subtle, carefully drawn one.
1600s — refined, socially proper
"Nice" starts attaching to manners and breeding — a "nice" household, a "nice" young lady. The precision from the century before has migrated from intellectual exactness to social correctness. Being "nice" now signals status and propriety, not carefulness of thought.
1700s–1800s — pleasant, agreeable
The meaning finally lands where it sits today: kind, friendly, agreeable. The social-propriety sense softened into simple pleasantness, stripped of its earlier class-coded weight.
What actually happened across five centuries
Nobody voted on this. No dictionary committee announced "nice now means pleasant." Each generation used the word slightly differently than the one before, in ways small enough that speakers within a single generation never noticed a shift happening — the change is only visible looking backward across the whole five-hundred-year span, never from inside any single moment of it. A person living in 1600 would have sworn "nice" plainly meant what it meant to them; they had no way of knowing it had already drifted twice before their lifetime and would drift twice more after it.
The word never stopped to redefine itself. It just kept getting used, slightly differently, by people who each thought they were using the "real" meaning — and the sum of all those slight, invisible-in-the-moment reuses is the five completely different words "nice" has effectively been.
A word's meaning doesn't change in one moment anyone could point to — it drifts through a chain of people each using it slightly differently than the last, each one certain they're using the real meaning. Following that chain across centuries is the only way to see the drift at all, since no single generation inside it ever could.