15 November 2017

Data Yoga

One of the benefits of finishing grad school in the middle of a major recession is that one will, likely, find a position at a much lower starting wage than those who enter the labor market during a raging boom. And that short fall will follow you for the rest of your life. Sweet. Another benefit is that said position will likely be a soporific 9 to 5, with minimal engagement. And the knock-on effect is that you find yourself going from an intense struggle with advisors and classes and papers to write that sucks up all your attention 24/7, to having gobs and gobs of unattended time.

What to do with all that time? Well, one could explore aspects of life not previously experienced. One might move from the brain to the body, for example. Say, yoga and tai-chi and karate and dance, for instance. And if one did so one would make an interesting discovery: as disparate as they sound, all are grounded in two concepts. Those being centeredness and flexibility. Yoga and tai-chi are quite explicit about those two ideas. Dance a bit less so, and depending on the style and instructor, karate yet a bit less so.

Centeredness emphasizes keeping the physical center, about a fist's distance below the navel, balanced with the ground. Flexibility mostly means the pelvis and large muscles as well as the spine. Notably, golfers and baseball players are now beginning to emphasize the need for both. Golfers talk about "getting the hips out of the way". Batters talk about the arms following the hips. And so forth. The light bulb has gone off for them.

Well, centeredness and flexibility are also important to datastores. Not for the first time, I'll remind gentle reader that Chris Date has said many times that there's only one "data model", the RM. The naming of hierarchical and network datastores as "models" is retronymic (if that's really a word). Neither is based on an abstraction, but both on hard-wired application specific structure. XML hell, as many now say.

I bring this up, again, because I found this post, which is chock-a-block with links, particularly NoSQL, particularly this one, which takes on NoSQL's alleged benefits. Gentle reader will likely not be surprised that it lists the issues that Date, Pascal, and humble self have been yakking about for years.

So. The RM is centered because there's an engine (at the center) which keeps the data in line. So to speak. Without that center, each application (in fact, each bit of application code) has to roll its own. Every time. And every time the datastore is changed. Any change to the datastore requires that all code accessing that data be, at least, visited. With the RM/SQL (the latter, sort of, naturally), if one starts with at least 3rd NF data, only the application bits concerned with that table(s) need be looked at. In fact, if one eschews the *, then only those narrow bits of code interested in the added/deleted columns/tables give a crap. You can't do that with XML. So, there's the flexibility of the RM: application code deals with the datastore on a "need to know" protocol. Go read the post; it's a gas.

Those are really good qualities in a datastore. We've had them for the better part of 50 years and only have SQL as implementation language which is only about 3/4 of a glass, and still the kiddies embrace the data tech that their granddaddies used: COBOL file defs. Reactionaries exist beyond the world of politics.

No comments: