I don’t pretend to know what the future of the Social Web holds, but I have some ideas about the markup language that will power much of it. First though, let me recap the short history of Social Web Markup.
About a year ago Facebook launched their social network with a full application platform consisting of a rich set of social APIs, many of which were wrapped with easy to use tags called FBML (FaceBook Markup Language). Since then, a few things have happened. First, Bebo opened up their social network with their own markup language which they called SNML (Social Network Markup Language), which was mostly the same as the FBML collection, though it included some tags only offerred by the Bebo platform. Finally, Ringside Networks released beta versions of their Social Application Server, which supported many of the FBML tags, and a few only available on the Ringside Platform.
This is all well and good, since tag libraries for specific social networks definitely enable social application developers and designers to create rich social applications quickly. What is unfortunate about the current situation is that these tag libraries are closed in that they are only supported by the platforms that offer them (though the open source Ringside Social Application Server supports many FBML tags). This means that social application developers would have to rewrite portions of their applications in order to deploy to multiple social networks. I’m reminded of the early days of the J2EE application server market, when each vendor offered their own tag libraries in an effort to differentiate their platforms from each other. In the end though, most of those tag libraries did many of the same things via different syntax, and ultimately JSR-52 was established and the JSTL (JavaServer Pages Standard Tag Library) was produced. Now all J2EE application server vendors support JSTL.
I don’t necessarily see the same course of events unfolding in the social web space, but perhaps there will be some similarities. First of all, I’m inclined to believe that social application developers will want to be able to write a social application once and run it anywhere. In order for that to happen, those developers would have to code using standard APIs and tags, which is an argument for a standard for a social tag library. Alternatively, because Ringside offers the ability to render social tags via widgets, I can see a whole community emerging around social tag development, which would in turn enable the rendering of those tags via widgets anywhere across the web.
What do you think? Are you a social application developer? Do you want to be able to write once and run anywhere? If so, how do you see social tags evolving?