Sometimes it takes a person with a bit of perspective and distance from a problem to identify the solution. Sometimes it takes someone else to read your ramblings on a blog and ask a question to make you realise the point that you have been trying to make. I received some feedback about my recent post on hardware profile that made me realise that the combination of the posts on what I use, data portability and hardware profile were all pointing to a common solution. And as with so many solutions I think that the key to it all is the information.
What Marinko made me realise is that I own, use and define a set of information; some of the information is created or edited by me, some is delivered to me from other sources and may or may not be read-only; some of the information has its own security profile (for example, I can’t copy the file away from my work laptop) and some is available to anyone, such as a public web site like BBC Sport. But, at the end of the data, the sum of the documents, e-mails, pictures, music web sites and RSS feeds etc make up my information entity (sorry to the data modellers for using that word, but I can’t think of a better one).
So, what I need is a number of mechanisms to access my information- depending on the source of the data (public, private), the action I wish to do (edit/ read) and my location (on-line/ off-line) I will access my information using different tools (the Permanent Presence, Portable Solution or Base Station as described in the Hardware Profile).
Everything else, the file format, the internet protocol, new capabilities of a smart phone etc are all steps to move towards this goal.
Which brings me to a bit of a conclusion- there does not need to be one single format to solve all the problems of the world, but there needs to be a fairly small number and the information format must be open for all to read and all to implement. By this I mean, that though it may be tempting to say that all data, documents images etc be stored as XML because that can be parsed, transformed and displayed in different ways on different machines, this is the typical IT situation of an evangelical war over one technology or another. Sure, it would be nice for the application developer to know that all e-mail is in the same XML format, but it is not going to happen- and we already seem to have a fine working model of e-mail formats that can be accessed wherever you want. Same applies for images (JPEG/ PNG), drawings (SVG) and music (MP3).
What the alert amongst you will have noted is that I haven’t included a set of Office document formats- so here goes, time to get flamed or praised: Any document format that is dependent on a particular client to correctly display the information cannot meet my requirements. By this I mean that if your format has a bug in it so that the answer to a calculation is only correctly displayed if you use, oooh say Microsoft Excel, you are not fit to be considered an international standard certainly should not be blessed by ISO. Anyone who knows me has come across a situation where I have held an opinionated and probably unfathomable view on something or other; but at the same time I tend not to simply dismiss technology, companies or solutions out of hand simply as an act of faith. I use Microsoft Office including Visio because it does do a good job. But requiring that I use Excel or Word to view a document, even though it has been created using an ‘open standard’ fails on so many levels.
As an information or data architect I don’t understand the need to have open source software (the components and code) but I definitely see the need to have open, defined information standards. And why do I need this? Because I have not decided how I am going to access your data- and depending on the profile I am using to view it, I may or may not wish to use the same tool or see all the details of what you sent. This is the same as a web page ‘degrading gracefully’ when viewed over a phone, but if we take the premise I made back at the start- all the information that makes up my world needs to be available to me, whatever hardware profile I choose. This means that an office document, a photograph or a web page need to be treated the same. Well, for me to be happy anyway.