> > Your task should rather
> > be to understand the why, who, how, when and the thenceforth of data
> > models, and everything else will follow.
> Ye good gods, no, no, no!
> A more productive task is to understand the who, how, when, and
> thenceforth of what tasks actual people want to accomplish with their
> computers, and the easiest way to build tools to make their jobs
> easier and more joyful
Starting with data modeling is like trying to learn a new spoken language
by focusing on grammar as knowledge of cases, declension, tenses,
subjective, conjugation, etc will be essential to effective communication.
It's neither fun nor effective. Data modeling is extremely useful, but
mistaking drips and drabs of it early on for reality can poison your
thinking. People who learn models first tend to shoehorn anything they see
into the model that was most effectively hammered into their skulls.
The most important question to understand is why because it drives
everything else. Once you know why you've been handed a particular problem,
you can make intelligent decisions about what you're going to do and how.
Jumping straight into the tools has the effect of redefining the problem to
meet the desired solution.
Anne is just cutting her teeth on PHP and wants to get into web
development. While she'll undoubtedly get the chance to create widgets and
utilities, it's highly likely that the vast majority of her work will be
with things that were developed by others. This calls for solid general,
analytic, and communication skills.