• This was an interesting look at things, but some of it does not fit my experience.

    For instance, I did not start by looking at anything in databases by anology to objects. I had a background in mathematics and found it very natural to think of them in terms of sets and draw anologies to set theory. I mastered OOP later and then I saw parallels between database entities and OOP entities, but I was also acutely aware of the limitations of those anologies (ORMs exist specifically to help hide some of those differences when it is convenient...)

    Also, you seem to imply this is a more or less one way evolution, but it seems more iterative. To look at the example you gave of "The progression is similar to grade school where we first learned letters, then words, then reading sentences and stories. The order cannot be reversed. " You are right, the order can't really be reversed, but neither is it a linear progression. My daughter is in the early stages of learning to read. She mostly knows the alphabet, but still gets some of them wrong. But she can recognize a few words on sight. She hasn't read her first full sentence yet, but she can speak and listen to sentences, and she has heard stories, so she has concepts of them. And she will not be ready to read MacBeth when she starts reading Dr. Seuss, because she will first need to go back and learn more words and more about sentence and story structure.

    For that matter, I still learn new letters (calculus uses a lot of Greek letters, and transfinites use Hebrew lettes), new words, and even new things about sentence structure (http://timothyawiseman.wordpress.com/2012/07/09/writing-about-sql-server/). My learning about reading and writing continues at all of those levels.

    ---
    Timothy A Wiseman
    SQL Blog: http://timothyawiseman.wordpress.com/