Featured Post
These days, I mostly post my tech musings on Linkedin. https://www.linkedin.com/in/seanmcgrath/
Wednesday, April 09, 2008
Tuesday, April 08, 2008
Flexible software is error-enabling software
- "any sufficiently advanced end-user action is indistinguishable from an end-user error"-- Flexible software is error-enabling software
Tuesday, April 01, 2008
Think big by thinking small
Revisiting the harmless-sounding notion of a while loop:
How to think big by thinking small
How to think big by thinking small
Monday, March 31, 2008
Time for part 2?
Vaguely related to the last post about St. Patrick, it is now 4 years since Lord of the Schemas, Part 1: Fellowship of the Schema. How about somebody stepping up to the plate and writing part 2?:-
- Lord of the Schemas, Part 1: Fellowship of the Schema
In the Land of Markup where the Schema languages lie One DTD to rule them all, One DTD to find them, One DTD to reify them all and to the objects bind them, In the Land of Markup where the Schema languages lie.
This part of our tale chronicles some of the events in MiddleMark that occurred during the Great Years following the Third Age. Our focus is on the emergence of XML during the Great Profiling and, in particular, the growth in power and danger of One Schema Language (known in the Common Tongue as "DTD").
The First Age ended with the Great Battle when the Office Document Architecture (ODA ISO 8613:1988) was smitten by SGML (ISO 8879:1986). SGML was crafted by an ISO committee of high Elves, Dwarves, and Hobbits who worked with runes in the ancient Elven tongues. Their utterances were written in pure Mithril from the Caves of Moria. The lore therein was only viewable when moonlight shone on the parchment of the sacred ISO-bound volumes.
These mighty tomes were stored, high upon the sturdy shelves of specialist bookstores from whence only deep dollars could retrieve them. Even the great Gandalf, wielding the sword of HTTP, could not dislodge SGML from behind the ancient gates of http://www.iso.ch.
SGML's promise was plain to see but its magic was buried deep, and only available to the sages of Eldar. These sages made good money as consultants, especially working for the deep-pocketed great armies of the protectors of the Western Way.
The history of the Second Age concerns the birth of XML. Its history is much debated in taverns and other haunts of the idle such as Geek Conferences and NNTP. Some races, notably, the Elves from Markwood, refer to this time by its common title: The "Great Profiling" of SGML -- a time in which the great works (SGML, HyTime, and DSSSL) where subsetted into a form suitable for use by simple folk of the Web.
Others, such as the Hobbits and Dwarves from West of the Misty Mountains, say it differently. These simple folk, steeped as they are in tree processing lore, speak of a war against the servants of complexity and turgid prose (known in the Common Tongue as "smart asses"). To this way of reckoning, the proud Halfling races that value simplicity above power and indeed seek power only through simplicity, song, and good cheer overthrew SGML and its kind.
For well nigh a thousand days, the world was at peace. The peace was due, in no small part, to the inactivity of what is now known as the One Schema, also known in the Common Tongue as "DTDs". Why the One Schema was inactive is not recorded in the annals of MiddleMark but some say that it was due to the blessing of "Well Formedness" that occurred during the Great Profiling. Well Formedness is a powerful incantation upon XML instances that shields them from the potential ravages of the DTD wielders. It had long been known that Orcs and Balrogs, crafting HTML browsers in the darkest caves of Moria, made use of an abominable work-around known as "structure inference rules" in their code. XML killed such foul rules-based processing and made structure information easily available to the fairer folk of MiddleMark.
Now some well-intentioned MiddleMark folk made use of DTDs without regard to their dangers. By simply slipping on a DTD, they discovered that some complex problems of data validation simply disappeared before their very eyes. However, the One Schema is subtle and considered ill-intentioned at its heart. Its seductive powers leads the unwary into the dubious lands of external general entities, the swamps of conditional sections and, after prolonged exposure, down to the bottomless pit of parameter entity trickery from whence none can escape.
The Elders watched in dismay as DTD darkness spread across the land. They feared a revolt from the proud Datatype Wielding Men of Rohan -- experts in the lore of database management systems. In order to keep the peace between the great ideologies of Doc-lore and Data-lore, they elected to destroy the One Schema. To this end, at a meeting of Halflings, Men, and Corporations at Rivendell (known in the modern tongue as MIT, Boston), a Quest was hatched to rid the world of the DTD by casting it into the deepest dungeons of Deprecation.
Little did they know that this would be the beginning of a long journey. A journey through the Schema War years, which dominated the rest of the Third Age. The Schema Wars is the topic to which we must now turn our attention.
To be continued.... (by somebody else)
Saturday, March 29, 2008
XML and St. Patrick
So it happened that XML was on my mind on St. Patrick's Day this year. I was in MIT on March 17th. More on that some time over the next few weeks.
Anyway, in 2002 I wrote this piece for ITWorld about St. Patrick and XML. It is, I think it is apposite at the moment in our microformats/ json/rdfa-infused world.
St. Patrick to be Named Patron Saint of Software Developers
In a dramatic development, scholars working in Newgrange, Ireland, have deciphered an Ogham stone thought to have been carved by St. Patrick himself. The text on the stone predicts, with incredible accuracy, the trials-and-tribulations of IT professionals in the early 21st century. Calls are mounting for St. Patrick to be named the patron saint of Markup Technologists.
The full transcription of the Ogham stone is presented here for the first time:
DeXiderata
Anyway, in 2002 I wrote this piece for ITWorld about St. Patrick and XML. It is, I think it is apposite at the moment in our microformats/ json/rdfa-infused world.
St. Patrick to be Named Patron Saint of Software Developers
In a dramatic development, scholars working in Newgrange, Ireland, have deciphered an Ogham stone thought to have been carved by St. Patrick himself. The text on the stone predicts, with incredible accuracy, the trials-and-tribulations of IT professionals in the early 21st century. Calls are mounting for St. Patrick to be named the patron saint of Markup Technologists.
The full transcription of the Ogham stone is presented here for the first time:
DeXiderata
Go placidly amid the noise and haste and remember what peace there may be in silence.
As far as possible, without surrender, accommodate the bizarre tag names and strange attribute naming conventions of others.
Speak your truth quietly and clearly, making liberal use of UML diagrams. Listen to others, even the dull and ignorant, they too have their story and won't shut up until you have heard it.
Avoid loud style sheets and aggressive time scales, they are vexations to the spirit. If you compare your schemas with others, you will become vain and bitter for there will always be schemas greater and lesser than yours -- even if yours are auto-generated.
Enjoy the systems you ship as well as your plans for new ones. Keep interested in your own career, however humble. It's a real possession in the changing fortunes of time and Cobol may yet make a comeback.
Exercise caution in your use of namespaces for the world is full of namespace semantic trickery. Let this not blind you to what virtue there is in namespace-free markup. Many applications live quite happily without them.
Be yourself. Especially do not feign a working knowledge of RDF where no such knowledge exists. Neither be cynical about Relax NG; for in the face of all aridity and disenchantment in the world of markup, James Clark is as perennial as the grass.
Take kindly the counsel of the years, gracefully surrendering the things of youth such as control over the authoring subsystems and any notion that you can dictate a directory structure for use by others.
Nurture strength of spirit to nourish you in sudden misfortune but do not distress yourself with dark imaginings of wholesale code re-writes.
Many fears are born of fatigue and loneliness. If you cannot make that XML document parse, go get a pizza and come back to it.
Beyond a wholesome discipline, be gentle with yourself. Loosen your content models to help your code on its way, your boss will probably never notice.
You are a child of the universe no less than the trees and all other acyclic graphs; you have a right to be here. And whether or not it is clear to you, no doubt the universe is unfolding as it should.
Therefore be at peace with your code, however knotted it may be. And whatever your labors and aspirations, in the noisy confusion of life, keep peace with your shelf of manuals. With all its sham, drudgery, and broken dreams, software development is a pretty cool thing to do with your head. Be cheerful. Strive to be happy.
Tuesday, March 25, 2008
Subscribe to:
Posts (Atom)