My wife is a huge fan of HGTV. It’s actually pretty cool to see how different a room can look when a skilled designer goes to work on it. But how would this turn out if the designer couldn’t see the room? Building applications for OpenSocial is somewhat like this.
Container sites are supposed to provide some space on the “profile” page for a user and another “canvas” page that has more space. But just how much space will there be? What color is the site? What fonts are used? Can the user modify size, color, font, etc?
These aren’t new problems for web design. Users run their computers at different screen resolutions for example. But now we have an additional layer of complexity in trying to understand how the container might vary from site to site.
In general, this pushes application developers to go for simpler implementations. The blind interior decorator is likely to pick neutral colors and small pieces of furniture. But this doesn’t create the best user experience. Another alternative is to build an application solely for one container site. This certainly produces a good user experience, but it doesn’t really leverage OpenSocial. It’s really no different than building to a site-specific set of API’s.
The alternative that we are pursuing for the moment is to make a version of Didja Hear for each container site. This way, we can provide the best possible experience in Plaxo which might look significantly different than the best experience in Orkut. We might size the preview of a video differently. We might show more or fewer videos in the view. We might change the colors or fonts. This gives the best user experience, but at scale we will have a very large number of variations of each application. Developers don’t like this because it makes maintenance much harder.
The other approach is to have some set of API’s that inform the application about how it should look. Discussion started on this in the weeks before OpenSocial was announced. It’s not a simple problem, but it’s necessary in the long run. Otherwise we end up with 100 different Didja Hears and 1000 “beige room” applications.