On Jan 23, 2007, at 9:35 AM, Dries Buytaert wrote:
Plus, SQL is already an abstraction layer so we'd be adding an abstraction layer on top of an abstraction layer.
not true for schema manipulation, which is the only thing many of us are arguing for. SQL is not an abstraction layer for this, since there's no standard. every DB has its own syntax for this crap, which is why we need our own abstraction layer for it.
The more I think about it, the more it boils down to this question. What do we care more about? Optimizing Drupal for developers, or getting more database experts on board?
i think that's a false dichotomy... we don't have to choose one or the other. i may not be a DB expert, but i'm expert in other fields of CS. abstraction layers that hide ugly details i don't want to be bothered to think about, freeing my mind to focus on the problems i care about, are almost always welcome (assuming they're done right, and don't make my problems worse). also, i continue to question this "if we build it, they will come" attitude towards DB experts. i don't think the sheer fact of if we add RI or not, or have a schema creation abstraction layer or not, will cause more DB experts to join our development efforts or not. but, again, i'm no DB expert, so i don't know how they think. ;) but, this seems a little wonky to me. an analogy for something i know more about: CVS and revision control... what attracted me to drupal wasn't the great use of CVS and powerful tools drupal had built to take advantage of it. ;) i just needed an interactive website for my band where people could signup for what rehearsals and gigs they were planning to come to that i posted to an online calendar. turned out i also happened to be a CVS expert, and decided to start putting my expertise to use fixing the tattered ruins known as the contributions repository (since the lack of real releases was making my efforts to build the site for my band more painful). i don't think the DB experts are just floating around out there, waiting for The Right CMS(tm) to show up that does everything they ever wanted with all their DB ideas so they can finally get their hands dirty doing interesting work. they're going to come to Drupal for all sorts of random reasons, and may or may not put their DB expertise to use making Drupal better... -derek