Posts tagged ‘Google’

A survey of open APIs

I did some research in the past week on a few “Open APIs”, and wanted to share my findings here. This is just a summary of other, more comprehensive sources. Also, if you have any comments or corrections I’d love to hear them. I chose to present my findings as a list of concepts:

The Open Stack

This is an emerging stack of open protocols that will help build socially-connected websites. I will explore the key elements (I take XRDS-Simple to be rather low level and uninteresting).

OpenID

  • A single sign-on protocol (help to user not to create yet another set of user/pass)
  • Essential Workflow (here in more details):
    1. You want to logon to StackOverflow, which is an OpenID Consumer
    2. Instead of opening yet another account you are given an alternative (almost no site relies solely on OpenID).
    3. You either enter a URL (way less user friendly) or select from a fixed subset of Providers
    4. You are redirected to that URL, enter your credentials there (only if you are not logged in), and are asked to allow StackOverflow access to your OpenID identity.
    5. Depending on your OpenID provider, you can set for how long this access is granted
    6. Then, you are redirected back to StackOverflow, with a token (encoded in the URL), that is used to grant you access.
  • OpenID is mostly still just a login method today (doesn’t convey extra information beyond a logon grant) – although I did see some evidence to the contrary when I just opened an OpenID account at VeriSign – it seems websites can request more information from an OpenID provider – such as email, nickname and full name.
  • Microsoft, Yahoo, Google are now OpenID providers (in addition to more veteran providers). This is significant because it doesn’t force users to go to yet another place to open an OpenID account – they can just use an existing webmail account.
  • Facebook just joined OpenID foundation board (eBay is there already). Looks like it will become an OpenID provider, maybe also client.
  • Users are still not comfortable with it / unable to figure it out.
  • However, here is an interesting post about using email addresses as OpenID. When this happens, it might help bring in the users.
  • Here is a recipe to enable OpenID on a website (Consumer). Sample Provider implementation for .NET is here.
  • Of course, for your Wordpress blog the process is much easier – just install OpenID plugin.
    • Although, I heeded Tomer’s advice and instead used OpenID delegation – this means I use my blog’s URL as my OpenID, but it is just a redirect to a more serious OpenID provider. OpenID is/will be the keys to your world – better guard them safely.
  • Right now, the value of OpenID to a new website is still limited:
    1. Will not eliminate the need for us to implement user logon
    2. Not much value in being an OpenID Provider – it’s a nice to have feature, but in many cases not worth the cost (at least until you get a large user base).
    3. Is not sufficient, on its own, to get access to complete profile information about users (and use this data to help users interact with your website). But … can be complemented with more technologies.
  • Has a nice usage graph.

Google OpenSocial

  • A set of social APIs developed by Google (get list of friends, publish stories).
  • Implemneted y hi5, LinkedIn, MySpace, orkut, Yahoo!, Friendster (full list at the OpenSocial wiki)… but not Facebook (yet). All of these are OpenSocial Containers – data warehouses that answer OpenSocial queries.
  • OpenSocial is Open. The data is not stored on Google – the providers just conform to the OpenSocial API which reflects the data stored at each social network.
  • Had theoretical reach (not usage!) of 700M users Nov 08.
  • To serve OpenSocial:
  • Client implementations are available in javascript, java, .net, php, whatnot…

Google FriendConnect

  • An application that uses OpenSocial to enhance websites with social widgets (Comments, Reviews, …).
  • Is still not wildly spread (this directory is rather sparse at the moment)
  • Doesn’t seem to be targeted at big sites, rather at small sites/blogs (my impression at least).
  • No programming required to add social features to your site – but you have limited control over the effect.
  • Cool flow I tested: Login to FriendConnect on a website, and you already see in your friends list a buddy from Gmail that’s using FriendConnect at this site.

OAuth

Portable Contacts

Facebook Connect

  • Competitor of the open stack (OpenID+OpenSocial) – gives single sign-on + connects you to Facebook friends & feed
  • Uses a popup instead of redirecting to FB (less intimidating for users).
  • Has already been witnessed to boost new user signup.
  • Main Flow:
    1. User clicks Connect 
    2. Popup (in facebook.com) asks user to confirm
    3. User is shown a Presence Indicator at the target site
    4. Website can pull user’s profile & connections.
    5. Publish stories to Facebook.
    6. Send Facebook hashes of emails, and Facebook replies if they have a user with an identical hash. This can be used to show a user a count of his Facebook buddies that are using the target site (“10 of your friends are using this site, connect to Facebook now”).
  • Example of a FB connect-enabled site – TheRunAround.

RPX / JanRain

  • JanRain - An early OpenID player (in the market since 2005, one of the founders of OpenID).
  • RPXNow – abstracts away Single Sign-on, supports both Facebook Connect and major OpenID players.
  • Here is a blog post about why not to use it (Vendoer lock-in, single point of failure, too little benefit).
    • However, check out the counter arguments in the comments.
  • RPX get social profile data from Google, MySpace, Facebook.
    • This includes interesting profile fields like email/gender/birthday/photo.
  • The API also hints at getting an array of friends from relevant services.

That’s it for now, I hope you enjoyed this review. Remember that most of these APIs are very new or just being adopted, so expect changes to most of these. I expect a large API convergence to happen in the following year or two, which will simplify life for those of us building social applications.

Enough with ExpertExchange already!

I thought Google Searchwiki will help me stop seeing this crappy website on my search results, but for some weeks now I don’t see SearchWiki anymore. Anyone knows what happened to it?

Why I finally installed Chrome

I’ve resisted the Chrome buzz so far, but today I’ve fallen too. Even though Firefox is somewhat sluggish in comparison to Chrome, I like its multitude of extensions and frankly, I’m just used to it.

However, today I finally gave up, because of a missing feature in Firefox – the ability to view source of an RSS/Atom feed. As far as I’ve been able to discern, it’s impossible in FF3 to view the raw XML of a feed (just try opening this feed and clicking View Source). I found several posts on how to manually edit a javascript file to disable this preview, but they must not apply to FF3 because … they didn’t work.

So my workaround was Chrome (haven’t switched over as a main browser though). What’s most annoying is I’m sure there was a way to do this, because before I switch computers a week ago I was able to view the raw feed – I just can’t remember how.

Google SearchWiki

I think this was a long time coming. I still can’t see it when I search, I guess the deployment is taking some time.

My guess is despite what Google says, votes might end up effecting search results after all – despite the fear of manipulation, this is powerful user data that should be used for ranking.

A few blogging tools

Since I moved to my own host I played with a few useful tools.

  • I already commented on the wordpress plugins I use. Today I’m adding OneClick – single click plugin installer & updater – it makes it really easy to install a plugin by a URL). It also has a Firefox extension, which I didn’t install. I just revisted Moti’s comment on the above post, and saw this was one of his recommendations. The other recommendation I accepted is FeedBurner FeedSmith, although I already implemented itse functionality with the redirect plugin.
  • A handy tool (depending on your hosting solution) is PHPShell. It uses the provided PHP to give you an easy shell, if your provider doesn’t give you one.
  • Finally, Google’s webmasters’ toolkit is a good tool for analysing your blog/site – recommened.

What tools do you use?

Also, I just saw my old pagerank of 4 is gone now, because I have no direct links to this blog, just to the old Blogger one (well, was to be expected). I’d appreciate it if any of you with incoming blogroll links update to the new website (yeah I know, I should start a blogroll as well … someday).

P.S.

Heroes season 3 appears to be less bad than season 2.

Google Publication Fumble

Update – it appears the link I gave is simply a table of contents of an ACM symposium. So where is the actual paper?

One of the feeds I recently subscribed to is Papers Written by Googlers, (the web version is here). Apparently every link on the page is to some Google search instead of a definite link to a paper. I wanted to check out a paper titled Towards Temporal Web Search, by Marius Pasca and got a strange result page containing totally unrelated papers. Only the focused search I ran myself for the exact title gave me the actual article.

Shared Items Feed & More

Hello guys, today we have several topics:

Shared Items

I finally really settled on Google Reader instead of a desktop feed reader. The advantage of being able to read RSS everywhere without any hassle outweigh the downsides. Also I get the benefit of easily exporting a Feed of Shared Items (both RSS and Email.

I think I will stop/reduce posting links to interesting items that I find on my RSS and instead just mark them as shared, so if you want to keep using my information filtering services be sure to register :)
In addition, here is a link to all previously shared items.

Google Notebook
If you’ve recently Googled you may have seen the “Note this” added to every link.

It’s a useful new very useful. Upon clicking it copies the current content of said web page into your Google Notebook, a cool service that organizes your web clippings.
It opens up right on your search result page and has a full page interface as well.



Unfuddle free SVN hosting
If you’re doing any non-trivial software assignment with partners, you should consider using source control. So far, I’ve used source control for large projects of course, but never in an assignment from Technion – back when I was an undergraduate student I was largely oblivious to source control and I didn’t take any programming courses in my 2nd degree – until now. Now I actually have a few non-trivial homeworks at Managing Data on the WWW (writing an http proxy is one of them), and so far I didn’t take up the trouble of setting up a source control. Well, it appears it is no hassle at all, at Unfuddle you can setup a project page, SVN server, RSS and email updates on checkins, project management and more in less than 5 minutes and no cost. Unlike some alternatives, putting your code there doesn’t mean it’s now open source and free to the world, you get control over who accesses your code.

Google Is Still #1

I had wondered of we all use Google because it is objectively better or because we are used to it being better all this time. Maybe Yahoo and MSN had improved since we decided to switch to Google?

Here, try this search on MetaCrawler. Only Google finds this page. Google has the benefit that it owns Blogger and can possibly get easier access to its database, but still that hardly justifies as an excuse for the other search engines – the post being searched is over a month old!

Bunch Of Links

What makes Google the best, according to Google.

How IBM is filing for a silly patent.

How to make your plants call you or update their Twitter status when they need water.

And finally:


Coconuts are so far down to the left they couldn't be fit on the chart. Ever spent half an hour trying to open a coconut with a rock?  Fuck coconuts.

Stories Website

I tend to write short stories from time to time, when I get the muse.
I opened a short page that I will use to host some of those stories.
Here is the first one, Reading Dracula.

BTW, you can use Google Page Creator for creating & hosting short webpages like this one and even hosting files up to 100mb.