Tuesday, March 17, 2009

GNU High School Algebra

Sometimes I dress up in what I imagine to be Chamber of Commerce clothes and go knocking on doors, figuratively speaking, looking for allies in thinking SQL should have more of a footprint in high school algebra classes, in part so we might start talking ~SQL with a more informed public.

OK, that was cryptic, I admit, SQL (ess kyoo ell) not really standing for anything some say, though Structured Query Language is the favorite, a kind of algebra for doing bookkeeping against trusted data stores, focused on verbs like "select", "update", and "grant" (as in access rights), just as you'd expect.

We're basically talking about basic file cabinet operations and indeed one of the hot new document stowages is called Tokyo Cabinet, recently installed to my Ubuntu Dell laptop through Synaptic, looking through my catalog for coffee shop classes, other user groups at CubeSpace and so on. Zope / Plone, Durus, Schevo... ~SQL has a strong track record already.

Put another way, Tokyo Cabinet, like CouchDB, is ~SQL by which I mean "not SQL" as the tilde (~) means "not" in many math books. You'll see like (SQL | ~SQL) where the "pipe character" (|) means "or". So don't just blame me for being cryptic, I had a lotta help (smile). Think of Hamlet going (Be | ~Be) if you want a mnemonic.

The informed citizenry part is we might start doing more medical records, for example, in a "schemaless storage" i.e. in ~SQL, even as we continue building FOSS stacks atop MySQL and PostreSQL. The "new neuronics" is to use MVC with HTTP's request and response objects as the only client-server go between. Use HTTP to control everything, much as we configure routers, other hardware, through web browsers these days. Have Apache on the other end, hosting some framework (like Django, like Rails) and hit against (SQL | ~SQL), or both.

Average high schoolers aren't supposed to be able to crank out reams of legal SQL on a day job, just for having been briefed, given overview, some hands-on practice. The point is to help guide their decision making in terms of career choices, with DBA (database administrator) being a hot job, lots of perks, plus we have way too few of them, or at least that's how it seems from my position.

Considering how expensive it used to be to even get close to "big iron" (mainframe computers running pricey business software), I understand why we almost snuffed out the whole geek subculture, but that's where GNU / FOSS comes in, free and open source counterparts the schools are starting to use more effectively, to share these skills and storylines with a more literate student body.