The PC revolution brought many advantages, chief among them is the ubiquity it could achieve due to advantages of scale. The mobile device revolution that is currently underway brings about
However as our utilization of technology as increased there are some fundamental principles the larger user community has overlooked, which could potentially yield us greater benefits. John Udell, a tech guru on Radar, blogs about one of these fundamental principles, Principle of Indirection.
Indirection should be perfectly familiar to programmers who would typically know it in the context of passing around variables for other sub-routines to manipulate.
..is this and I shall use John’s example. Say someone asks what information you have on some topic. You could send them a list of items, this would be pass by copy. Or send a reference, say a link to a page that contains these items.
Pass by Copy..
..mode of data sharing should be perfectly familiar to anyone who grew up using PCs. You need to send a note to someone. So you open Word, create a file, put in contents, attach it into a mail program like Outlook at hit send. This is all good until you consider what could happen next. What if you had forgot to add an item, now you reopen the Word file, add the forgotten item, resave and re-send using Outlook. Now the recipient has two slightly different versions of the same content. Which is not bad except when the user has to figure out what is the latest and most authoritative version of the list of items.
Copy mode of sharing data is like taking a picture of a landscape, it is a snapshot at a point in time. Subsequent changes are not reflected in the original picture. For more reasons on why pass by copy can be bad, read the benefits of pass by reference below and think of its opposite.
Pass by Reference/Indirection
John explains the benefits of this approach much better
1. I am the authoritative source for the list. It lives at a location in memory (that is, at a URL in the cloud) that’s under my control, and is bound to my identity.
2. The list is always up-to-date. When I add items, you (and everyone else) will see a freshly-updated list when you follow the link I sent you.
3. The list is social. If other people cite my link, I can find their citations and connect with them.
4. The list is collaborative. Suppose you want to extend my list. In a pass-by-value world, the best you can do is add to the copy I sent you. I won’t see what you’ve added, and neither will anybody else. In a pass-by-reference world, though, we can both keep our own lists, publish references to them, and then produce a merged list by combining the referents.
As is evident, for a piece of published information to be live it has to be published using the principle of indirection. And that is the foundation of the connected web.
The next sections list out some obvious implications to the user community.
Relevance to Common Users
If it is still not clear let me reiterate the use case quoted earlier. Every user of Microsoft Office uses pass by copy semantics. Which in turn leads to a completely lame way of sharing data and collaborating around them. Imagine this, every time you have had to get a group together to work on a project, the Microsoft Office way of generating, sharing and collaborating around data will only have been an exercise in masochism.
Unless of course they use a companion application like SharePoint, even then its like collaborating on a crutch due to locked data in proprietary file formats that were not designed for collaboration or being distributed around. But that would be topic for another blog post.
Relevance to Enterprises
Enterprises, especially those in the information business, have the most to lose by being tethered to the PC way of thinking. The untold amount of data locked in the PCs and mail boxes of their employees hampers their own growth. If they have to have any chance of competing in a post-PC world, they will have to consider the best practices that the Web world has made possible.
For now read John’s post on Indirection. And watch this space for more on this topic of information sharing and the unlocking of value in the data we generate.