My five year old son and I sat down to read a book a couple months back. We flopped on the couch and I opened the book and began reading. He interrupted and had me go back to the beginning, "Daddy, you have to read the title and author."

He had just started kindergarten and was learning the parts of a book.

That little lesson from my five year old, and indirectly his kindergarten teacher, was exactly how old, powerful, and deeply ingrained was the concept of a "document". We deal with documents every day; from weblog entries, to tax forms, to books. We sort, we file, we sign, we seal, and we deliver.

And the first thing we learn in computer science about storing data? Throw away a thousand years of ingrained lessons in document management and fracture that thing called a document and store it in normal form.

Jason Kottke pointed to a presentation by Cal Henderson over 18 months ago, that takes on data normalization in a single sentence: "Normalized data is for sissies". And you can see from the 85 comments that Jason had unwittingly stepped in a sacred cow pattie.

It wasn't always like that, and it's good to remember that relational databases themselves were a controversial idea.