I have been working in the publishing industry for longer than I would like to remember, and one thing that I have noticed with historical perspective is that ideas and technologies develop at a quite unpredictable pace. There are so many factors that come into play when a new idea surfaces, that it is often very difficult to predict exactly when a new technology will reach a point of viability. You need to consider factors including:
I have tended to be the naive idealist that assumes great ideas will spread quickly and magically become ubiquitous by virtue of their shear elegance, but I am learning to be more critical and cynical as time after time things move more slowly than I would like or expect.
One historical case in point is SVG, Scalable Vector Graphics. When SVG arrived, in 1998/99, it made a ton of sense. Yet in the subsequent 12 years, we have seen a strange path of rejection/adoption. It was embraced in the open source community, but the large corporations that implement tools and browsers saw it as a political football. Whoever was ahead in the browser/OS space perceived it as a threat, while those behind embraced it. Hence we see Microsoft, Apple, and Adobe embracing or rejecting it in direct correlation to the success of proprietary alternatives: Adobe loved it until they bought Macromedia… when Flash looked ubiquitous, Adobe could afford to abandon SVG, and conversely Apple didn’t even know the term until they saw Flash eating their lunch. Microsoft pretended to turn a blind eye to SVG as a standard for 10 years (though they copied it religiously as the basis of their XAML format), only to find it (and “web standards”) very compelling once Apple and Adobe started taking over the web. All three companies have flip-flopped on support of this standard, and all three have copied its characteristics into proprietary alternatives, yet it appears SVG will still prevail over any of these. Finally, SVG appears to be successful, but I hadn’t expected 12 years ago to be waiting this long to proclaim victory. After all, this was an obviously great technology that did not have huge technical obstacles to implementation.
Another technology from the 1990s that has finally arrived is the XML database. The notion of persisting data as SGML/XML goes way back, even prior to XML there were implementations of SGML databases. But unlike SVG, where technical challenges were minimal and politics reigned supreme, the SGML/XML database seems to have been a serious technical obstacle to implementation. Who knows whether politics would have prevented adoption were this not the case; the fact is that the early XML/SGML databases did not perform well at all.
In 2000/2001 I was naively imagining that both technologies, SVG and XML databases, would take over the world. They both made so much sense. In the case of SVG I was ignorant of corporate politics, while in the case of the XML database I didn’t understand the technical obstacles. It was relatively easy to give up on the XML database, as every technology I tried in the 2001-2002 era simply didn’t perform. Queries were painfully slow, and nothing scaled; all the elegance of the approach towards information management did not matter in the face of such abysmal user experience.
Fast forward 9 years… recently we have encountered a number of clients using the very technology we gave up on, the XML database. It turns out that one company – MarkLogic (ironically founded in 2003, the year I completely gave up on XML databases) – actually got it to work. XQuery results are lightening fast, and it is finally possible to manage content in its natural form. The “XML features” stapled on top of Oracle and Microsoft relational technology are now completely irrelevant. MarkLogic is the database of choice for those managing documents, assuming they can afford it (the technology is not exactly cheap).