Gone are the days of the traditional website, and in are the days of the Rich Web Application. OpenSocial is introducing a new era of development on the web. All OpenSocial containers at the moment give you one page, and one only (with the exception of the profile, or other “surfaces”) to write your entire web application. All development is required to be client-side, with loaded javascript or Flash at the load of the web page, with occasional calls back to the server to load bits and pieces of data. This style of web development has had a long time coming, from the inception of AJAX and the ability to dynamically load just portions of a web page from an external web server.
As OpenSocial and the social web move forward, client and server development will move closer together and soon you will be developing more and more on just one “page”, similar to OpenSocial. From now on, web apps will begin to move towards the style of loading the entire application on the first load of the page, and only loading pieces of that application as data needs to change. Javascript and Flash will play larger roles in development because of this, and as technologies such as Adobe AIR take hold, more of that development will move away from a traditional browser environment and onto the desktop. More and more desktop and web development will move towards “widgets”, and further away from “websites”.
OpenSocial is the beginning – I predict Facebook will be forced to implement something similar to keep up with OpenSocial. Currently the Facebook API is completely server-based. There is a javascript API, but the ability to create a rich web application like OpenSocial, the javascript and Flash capabilities of Facebook are simply too limiting. In order for agencies like SocialOptimize, my Social Media development and consulting agency that I co-founded, to more efficiently write applications across multiple social networks, we’re going to have to standardize on one method of programming. With the openness of OpenSocial, and ability to develop containers on the server side, we will work more and more to write code that lets OpenSocial code run on Facebook itself. Facebook may not implement OpenSocial, but we, as developers may very well!
Is OpenSocial and the new method of “widget programming”, the death of the Facebook API? Definitely not – OpenSocial itself lacks a rich tagging system such as FBML provides (pre-order my book!). As these systems move forward Facebook, OpenSocial, and others will be forced more and more to standardize across platforms. We’re in a completely new era of web development – gone are the days of the traditional website!