Saturday, April 24, 2010

An Open Letter to the Mozilla and Chrome Developers

Image representing OpenID Foundation as depict...Image via CrunchBase
At the close of F8 and knowing Facebook's plans for world Internet domination, I want to request that the developers of the two best browsers, which hold 30% of the market between them (only going up from there), help their users out and provide another option. Please implement XMPP in the browser and support the social networking aspect of OneSocialWeb. "Why should we do that," you ask?
  • I'm tired of creating new accounts at every website on Earth. OpenID offers a way around this using OAuth, but I need to choose and type in my OpenID provider. My XMPP provider can be used as my OpenID provider (as OneSocialWeb does) and the browser will know my identity, making it easy to connect. The website I connect to will simply become my "friend." Of course, Mozilla and Chrome need to implement private browsing and profiles so that I can have several identities or even remain anonymous if I so choose.
  • Once a website is in my XMPP contact list, I can give the site atomic permission to view only the parts of my profile and activities I choose, whether the limits be by network, group, individual, or other criteria. The access to this information is securely based on XMPP's permission system, which is robust. Much like Facebook's new permission system, websites can use this limited information to customize the site experience for me and give me more information about others I know who are also on the site. I could even delegate authority, for example,  to edit a Flickr photo album of a party to one or two of my friends who were also at the party.
  • The site could talk to me about things that I would find interesting. It could update me both in real time and on my OneSocialWeb news page about changes, what my friends liked, or whatever. Best of all, I could choose to deny the website access to my feed and simply ignore anything from the site.
  • I could see my friends status updates, including ones that were private for me only, for groups, or for the public, and wouldn't need to rely on Twitter or Identi.ca (StatusNet) for that any more. Not to be a doom-sayer, but I don't think Twitter has enough of a business model that we should be programming it into our infrastructure. It's closed, to boot. 
  • I could do this kind of stuff without being tied to Facebook ... or GMail ... or Twitter ... or any particular provider. I or my company could even host a server. XMPP is federated, you see, and doesn't tie anyone down. OneSocialWeb doesn't say where your data needs to be stored (or kidnapped). I would have control of of my data. No one would own it or me.
  • I could ditch the multiple IM logins I now have, but which I rarely use because of the pain they cause me. With Mozilla and Chrome users on board, It would be easy to communicate with any of my friends. I wouldn't need to create yet another account on yet another IM server, download a client (or configure a multi-client) and start talking. For my friends who don't have XMPP accounts, I could just recommend changing browsers (yours are better, anyway). Best of all, there would be no walled gardens. I could invite two friends who didn't know each other -- and who were previously on different IM networks -- to join a group chat with me, introducing them to each other. How novel is that?
  • XMPP supports VOIP and video chat. My friends would no longer need Skype, yet another service I needed to sign up for and maintain.
  • Mozilla and Google could use OneSocialWeb to increase their brand by offering logins to their own servers by default for new XMPP users in addition to allowing a simple user@server + password login for current XMPP users.
  • Google and Mozilla are trying to do this stuff anyway, but at cross purposes. Google Buzz appears to be stillborn and Google is having trouble with getting privacy permissions correct. Mozilla Contact is working on connecting social networks people already use, much like Pidgin connects IM networks (i.e., not really). Why not use open standards, technology, and source code? Use OpenId, OAuth, and XMPP. 
  • Finally, it exists now. Servers and clients are available. Take the reference code from OneSocialWeb and adapt it to your browsers. It's less work than doing it from scratch.
Of course, I support Opera, Safari, and Internet Explorer adding social network support through XMPP, too. Since the reference code is Apache licensed, it's available for closed source projects, too. I just think that you, Chrome and Mozilla devs, are more likely to listen to my pleas.




6 comments:

  1. Have a look @ mozilla Raindrop it lets you connect to multiple social networking , mail and other site. But its still under development. Have tested it with Gmail and twitter a very nice project done in python, couchdb.

    ReplyDelete
  2. Raindrop looks like a really cool project, especially for e-mail, but much like Pidgin and its multiple accounts, Raindrop seems to do nothing about the "walled garden."

    ReplyDelete
  3. Interesting, I think browser are building in something that may be used for XMPP in the browser, http://www.w3.org/TR/websockets/ . From there it might only be a matter of extending the browser to open a port and being XMPP.

    My only concern is where/how the platform handles while offline. I'm guessing the data could be stored anywhere and later retrieved with XMPP.

    Also, OStatus isn't too far off this notion, and it is open. Check their protocol which focuses around PuSH for broadcasting: http://ostatus.org/sites/default/files/ostatus-1.0-draft-1-specification.html

    ReplyDelete
  4. "Of course, Mozilla and Chrome need to implement private browsing and profiles so that I can have several identities or even remain anonymous if I so choose."

    Is it even possible to do this with OpenID? Sites like yours that only allow logging in with OpenID are frustrating. I like having separate accounts on separate sites with separate pseudonyms, and throwaway accounts for leaving single comments like this on blogs I don't frequent. Do I really want all these things tied to a single public identity? Some people do, but I don't think I do.

    "to edit a Flickr photo album of a party to one or two of my friends who were also at the party."

    Don't you mean "Flickr-like photo album"? Something hosted on a decentralized network?

    "For my friends who don't have XMPP accounts, I could just recommend changing browsers (yours are better, anyway)"

    Good reason for Mozilla and Google to adopt it. :) As Facebook has shown, roping people into your platform to communicate with friends who are on that platform is a great way to build up your userbase.

    ReplyDelete
  5. Throwaway-account,
    I doubt you'll see this, but I'll answer anyway. You can have many OpenID accounts, and use different ones for different sites so this would certainly work by integrating OpenID in the profile and using multiple profiles. I don't allow anonymous posting because of spam. There are quite a few accounts you can link to, so I don't believe the requirement is onerous.

    I don't actually use Flickr at all, so you can assume that I mentioned it as an example of the functionality. Any post or comment on any site with my profile should optionally be fed back to my profile, and any comments about the picture on my profile should be reflected on the originating website if that content is mine.

    XMPP identity would be an optional web browser feature. Because XMPP is federated, an XMPP account with Google or Mozilla wouldn't exactly "rope in" anyone, but it would leverage the browser user base into Mozilla's new social site, where (hopefully for Mozilla) all the standard social network features are conveniently located. Again, given the nature of XMPP and OneSocialWeb, content _could_ be placed anywhere, but we know that people are generally lazy and will put it all on the same service if the opportunity presents itself. Google wins for the same reason. Google doesn't really need to grow its brand: Mozilla does, especially with heightened browser competition.

    ReplyDelete
  6. I agree with you, except in the XMPP part. XMPP is good for peer to peer realtime communication (IM), but not for Twitter/Facebook like status which are usually one to many and non-realtime, so they should be sent to an aggregation server.

    I think the best would be Pubsubhubbub, which is a push-style protocol for feeds with an open spec.
    For example, Wordpress already has a plugin to push your posts to subscribers using it.

    ReplyDelete

Other I' Been to Ubuntu Stories

Related Posts with Thumbnails