Looking at the OpenSocial API
Gerald Kanapathy's Blog |
November 4, 2007 4:09 PM
|
Comments (1)
I know, I just finished talking about how OpenSocial isn't that important. It's not, but you know, if Google's going to throw around money to get people's attention, I'm going to catch some of the splatter. So. It would be more accurately called OpenGadget, because the real valuable part of the social network (the "network" part) isn't opened up by this API. It's another Portlet API, much like ours. Or WSRP without SOAP. I talked about Facebook's API before, and the exact same things hold true about OpenSocial. They have differently-formatted code, but it's still basically HTML with extra stuff as output, and REST-type calls for user data. That would be it, a pretty short post, but there's one interesting thing I noticed that OpenSocial has that Facebook doesn't, and that's the Persistence Data API. What's that good for? Well, it looks to me like OpenSocial lets you save preferences. Like the ALUI/Plumtree protocol, the platform system can keep track of data on behalf of the Gadget/app/Portlet. (Okay, well, it can't yet, because that API hasn't actually been released yet, and those docs are right now just a "preview". Does Google have anything that's *not* a beta? And I guess it's not fair to point out that Facebook doesn't have this API, when in fact, nobody does. Well, we do, but that's eight-year-old news.) What does that do for you? Well, it dramatically decreases the infrastructural burden of writing many apps. Without the persistence API or prefs, if your app wanted to remember anything about the user or what they did, you'd have to have your own database or file or some other place to store data, and you'd have to come up with your own conventions on keying it, and you'd have to worry about space and data management and test environments and yadda yadda yadda. With a prefs API, your app simply tells the platform/portal to remember things about the user for you. How is this useful? Well, it makes it a lot easier to build apps like, oh, Zombie or Vampire. The coding isn't much different, but on Facebook, I'd have to design and make my own database, then worry about having a database for a development system, for staging, and for production. With OpenSocial (well, once it exists and once they Persistence API exists) or with ALUI (now) you can just tell the platform/portal to remember that a particular user has bitten 853 other users and is a Imperial Grand Kleagle Zombie of Half Moon Bay. You can do this with just code, no configuration, management, setup, or administration on pretty much and web application server out of the box. I think we all know that throwing down a couple of lines of code is nothing compared to the hassle of setting up and configuring your database. Even if you only do it once. You might think this should be no big deal in a corporate environment if you're integrating real applications that have their own data in a database anyway. Indeed, that's the case if you're writing portlets/apps from scratch. But if you're writing portlets to integrate in exist applications (say, an ERP or CRM system) your portlet code really doesn't need to store anything *except* small fragments of user contextual data (e.g., "I want my default display to be in reverse date order"). All the rest of the data is in the big enterprise system, but your portlet can't put preferences in there. Without the portal being able to store prefs, you'd have to set up a little database to keep track of that kind of thing, which is, again, a big pain in the butt. Now, if you're wondering, as of today, we have no plans to support OpenSocial in ALI, at least not in the next release. It wouldn't be that hard to do, but we'll wait and see before we commit any effort to it. We already have something functionality equivalent that people are happy with, remember. So, OpenSocial: That's a good point you scored over Facebook. Or it will be, once you get it over the goal line.
Comments
Comments are listed in date ascending order (oldest first) | Post Comment
-
Great article Gerald. In so many ways, we (read: Plumtree) were so far ahead of the game in 1998 that it makes me sad to see the industry finally catching up with things as blatantly obvious as portlet persistence. And it is also funny to watch the media circus when back in the Web 1.0 days, stuff like this went completely unnoticed.
Question: by Imperial Grand Kleagle Zombie of Half Moon Bay are you referring to Robert Scoble? ;-) One of his claims to fame is that he's maxed out the Facebook infrastructure by adding 5000 friends!
Posted by: bucchere on November 5, 2007 at 7:41 AM
|