As Chief Architect of Platforms at Yahoo, Neal Sample is responsible for defining the technical design for the
Yahoo! Open Strategy initiative. Y!OS is a platform that enables third-party developers to create applications that integrate themselves with the Yahoo family of sites and services. It's similar to the API strategies adopted by Facebook and MySpace that let others develop apps on those sites. But Y!OS is much more ambitious in scale because it encompasses multiple sites (Yahoo-owned properties).
Sample also works closely in developer outreach. It is his job to, as he puts it, determine "what a developer needs to actually use" Y!OS and what "is usable in the wild, and this is something that's not." Basically, he evaluates feedback from developers who are tinkering with the platform, and implements their recommendations to refine Y!OS.
Sample spoke with DevX on the day that Yahoo officially announced enhancements to Yahoo Mail (including social networking features), which came about due to Y!OS.
Howard Wen: Why did the company start the Yahoo! Open Strategy platform? What does the company hope to gain from it?
Neal Sample: Two things: First, open us up for developers to enhance and guide some of our product, even if
they're not employed by Yahoo. We rolled out a few things, like
BOSS, our search API, our
SearchMonkey, the ability for developers to annotate search results.
The second thing was to make our user experiences [and] properties work together seamlessly. So no longer will you wander from, say, Yahoo Groups to Flickr to the Yahoo home page and have them look like three distinct identities and experiences. By building on top of a platform, not only do developers get access to the network, our users start recognizing Yahoo as an "ecosystem" rather than just specific Yahoo companies and having them work in different ways.
HW: So sell it to us—why should a developer be interested in developing for Y!OS?
NS: We're opening up the ability for your applications to reach more people than you can anywhere else. We're opening up today a new social mail product: a developer will be able to write applications right into Yahoo Mail. We're opening our other flagship canvases: the Yahoo home page will be customizable. Users will be able to add applications.
We're taking the world's most popular destination, in terms of time spent on the internet, and giving developers access to that.
HW: Some of the social network sites have opened themselves up to developers. How would you compare Y!OS to these other "open API" web site initiatives?
NS: The social networks opened up to developers to build utility. They try to build applications on top of the social network.
At Yahoo, we've already got a lot of utility properties. We have Yahoo Finance, Yahoo Mail, Yahoo Groups, Flickr. What Y!OS does is it opens them up to developers. It allows developers not only to build their own applications, but to extend the applications that users already like. So we're allowing developers access to them, rather than starting with a social network and trying to figure out what to do on top of it.
HW: Your company announced yesterday that developers will soon be able to create apps that work within Yahoo Mail. Could you give us some details about what the development process will be like through Y!OS?
NS: Since it's in an alpha state right now, we've been working with select partners. They program for that API, and then their applications can appear right in the Yahoo Mail canvas. Recently, the
Xoopit application, for example, running in Yahoo Mail was very
straightforward—they could just drop it into Yahoo Mail and all of a sudden you had access to all the Xoopit features.
HW: So how unique will this upcoming extensibility of Yahoo Mail be in the web email space?
NS: I think it is fairly unique, although we recently acquired the leader in this space, if you look to our
Zimbra acquisition late last year. Zimbra really was sort of a
foundational mail product that was fully extensible. They called their technology the Zimlet. And I think what you're
seeing now is [Y!OS] bringing that idea and some of those technologies—opening it up in a very dramatic way. I think it's good to see Yahoo taking a lead, not only with Zimbra, but with our flagship Mail product as well.
HW: Y!OS supports most of the programming languages commonly used in web development. But at this stage, what are the ideal programming skillsets someone should have to take advantage of the platform to the fullest?
NS: Right now, almost everything is standard space that we are using—for example, RESTful API's for our web services. We're also using the OAuth standard for authentication. That means not only can people use our web services directly, but they can use or even write client programming languages in just about any language that they're interested in. If they want to be a PHP developer, a Java developer, or a Ruby developer, they can do all of those things using very thin client libraries over our web services. So you can essentially do whatever you want and leverage the talents that you have.
HW: For the developer new to Y!OS, what might be the biggest challenge for many of them when working with the platform?
NS: Getting your mind wrapped around everything that's out there. For example, Yahoo has a query language,
YQL, that allows you to query just about anything on
the Yahoo network and also just about anything on the web. So that means, through the same interface, you have not
only access to your social data through your connections or your profile, but you can also get data from Yahoo Movies
or Yahoo Finance or you can join and process RSS feeds from the New York Times.
The opportunities are very, very large. And, as such, it can be a bit daunting. To that end, however, we've written a lot of sample scripts, a lot of demos and tutorials that people can take a look at. So, if you want to write an information processing application, or you want to write a social application, or you want to join financial data with news articles, we've got samples that allow developers to work in one of those verticals.
HW: What Yahoo services or data have Y!OS developers been most interested in accessing? Has there been a noticeable pattern?
NS: If you look at BOSS and SearchMonkey, you find a lot of traction there. A lot of SearchMonkey applications are being written, and for pretty obvious reasons: if you can get your application running on the Yahoo search results page, that's a really big opportunity.
As we saw the new API's release, the virtual API's that were released or previewed at
Yahoo! Hack Day and released last month, we got a lot more traction there. The developers then started picking up the [Yahoo] Profile API, the Connections API, and the Updates API. In the coming months, as we release access to the Mail canvas, as we release access to the front page, I think we'll see increased uptake there as well.
We see a step function every time we add something to the ecosystem. We expect that to really kick in, especially, as we open up Mail on the front page.