Archive for the 'Yahoo!' Category

BrowserPlus goes off-network!… almost?!?

Wednesday, October 29th, 2008

After a year and a half of development, BrowserPlus is released into the hands of web developers worldwide promising to change the future of client-side web development, as the new motto states, “on the fly.” A whole host of new services are come with the release, not the least of which are Motion (a service that exposes accelerator data from the local device as input) and Uploader (which completes the Drag-and-Drop upload dream by facilitating file upload for any site, not media just to Flickr). As a user-submitted spreadsheet shows, BrowserPlus does a great job of complementing features provided by Gears, not competing with them.

However, with all this webdev excitement coming early this Christmas, there’s plenty of mystery to prepare us for Halloween. A trip over to the BrowserPlus site communicates a simple and unexplained off-the-air promise to “be back shortly…” In fact, not even the old demos like PhotoDrop and JSONRequest are available.

It’s hardly reasonable to think the site shut down for performance reasons given that almost all of the BrowserPlus content is static. So what could be causing the delay? A late breaking security flaw? Inadvertently offensive misuse of religious text? Cold feet on the big day?

Here’s hoping that Yahoo! resolves the issue soon and the rest of us can get our hands on the goods….

UPDATE Steve informed me Friday that the undisclosed issues were resolved and BrowserPlus is open for download or development as of Halloween (the original planned launch date). Congrats to all my peeps in virtual Sunnyvale!

Hacking BrowserPlus

Thursday, May 29th, 2008

Wow. It’s pretty cool to see so much excitement about BrowserPlus just a day after putting it into public view. Truly, its humbling. Already many folks seem eager to go beyond experiencing it and actually start tinkering, building – and some have. It requires a bit of tenacity to uncover but actually, everything you need to get started is at your fingertips. Let’s look at what it takes to start hacking.

First, there’s the core BrowserPlus javascript API. The latest copy is at http://bp.yahooapis.com/2.0.4/browserplus.js

In this file are all the functions outlined in the code samples along with a full under-the-hood look at what is going on in many of the calls. The two key functions you’d need to know are init() and require(). (See the linked samples for usage.) Putting this together we can create a simple local file, test.html:

<html><body></body>
<script class="javascript"
   src="http://bp.yahooapis.com/2.0.4/browserplus.js">
</script>
<script class="javascript">
  YAHOO.bp.init(function(res) {
    var greeting;
    if(res.success) {greeting = "BrowserPlus says, Hello World.";}
    else {greeting = "BrowserPlus is hiding.";}

    document.body.appendChild(document.createTextNode(greeting));
  });
</script>
</html>

This is a simple document that will attempt to initialize BrowserPlus. If it succeeds, it writes “Hello World” to the document body. If you run this sample in your BrowserPlus-enabled browser it will fail. Why? Currently, BrowserPlus is restricted to Yahoo! sites; that includes restrictions for running local files. A simple addition to our test file exposes the error:

  else {greeting = "BrowserPlus is hiding. ("+res.verboseError+")";}

The error BP_EC_UNAPPROVED_DOMAIN confirms the local domain (file://) isn’t permitted. That means it’s time to dig into the BP configuration files. On Mac these are in

  /Users/[you]/Library/Application Support/Yahoo!/BrowserPlus/

On Windows XP, you’ll find them in something akin to

  c:\\Documents And Settings\[you]\Local Settings\Application Data\Yahoo!\BrowserPlus\

and on Windows Vista…

  c:\Users\[you]\AppData\Local\Yahoo!\BrowserPlus\

In the Permissions folder is a file similarly named which is what we’re looking for. Opening it up we see:

    "whitelist" : [
	"^http(s?)://(.*)\\.yahoo\\.com$",
        "^http(s?)://(.*)\\.yahoo\\.com:[0-9]+$"
    ],

The intuitive addition to this list is:

    "whitelist" : [
	"^http(s?)://(.*)\\.yahoo\\.com$",
        "^http(s?)://(.*)\\.yahoo\\.com:[0-9]+$",
        "^file://$"
    ],

The file is modified, but BrowserPlus hasn’t picked up the changes yet. The clean way to force this is to close all open browser windows. (BrowserPlus shuts down when no pages are using it.) The dirty way to do this is to search for BrowserPlusCore in your process list and kill it using your favorite platform-available tool. Either way, after opening test.html back up we should see our “Hello World.” Sweet – now we’re ready to start playing.

There is one final catch. BrowserPlus is fairly proactive about security so it helps to know that the permissions file will be overwritten on a regular basis. The savvy way around this would be a simple build script or at least a handy copy of our modified permissions file that we can use to reapply the changes in between development sessions. We might also test for BP_EC_UNAPPROVED_DOMAIN somewhere in our init callback to scream if the temporary development environment is disrupted.

That’s a lot of under-the-hood detail, but the takeaway is that BrowserPlus was more-or-less designed to be hacked. Not hacked in the “I want to steal innocent users data and delete their files” sort of way, but in a manner that allows experimentation and freedom without compromising the security of pedestrian users. There’s more there to be mined, but enabling local development is a good place to start. Good luck and cheers to all the curious and creative souls.

Launches, finally.

Wednesday, March 5th, 2008

After 3 years of hiding out in the campuses of Yahoo! it’s good to finally have something external to show for it. Most exciting is the release of BrowserPlus, a software and software distribution framework that allows device developers (desktop, mobile, etc.) to seamlessly bridge the browser programming environment (DHTML, JS) to any component they can dream up (VoIP, image manipulation, data caching, etc.). Some time ago we created a platform team to focus on device software at Yahoo! and this is what has emerged amidst the quickly shifting strategy of the mothership. The 1.0 release of BrowserPlus is intended only for use by Yahoo! sites to enhance customer experiences; however, in the coming months, developers might expect the ability to use components on their own sites. (If you’re interested in this, send us feedback). In the meantime, you can hack the framework on your own system after you’ve installed it to start experimenting. You can experience BrowserPlus currently through the PhotoDropper module on Mash, though direct installs are available for mac or pc. A hearty three cheers for the guys that made it happen – Lloyd, Gordon, Dave, and Steve.

Also this week was the official external launch of Fire Eagle, a platform for sharing your physical location in the world, to developers. This is the second public-facing project to launch from the team we started in San Francisco back in late May, Brickhouse. (The first was BravoNation.) Dopplr is one of the first sites to make use of Fire Eagle, updating your location to Fire Eagle once a trip begins or ends. You can expect wider exposure of Fire Eagle in the coming weeks as more developers ready their apps for the service, creating a complete ecosystem of location-sharing apps – from geo-friend-finders and SMS location updaters to location savvy search tools. Finally, location apps don’t have to be a closed system solutions. The whole team (Jeannie, Sam, Kevron, Rabble, Simon, Seth, Phil, Marc, Mor, and Salim) will be celebrating and evangelizing in SXSW this week, though a special congratulation is in order to Tom who carried the product from skunk works to research prototype, and delivered it at public launch this morning.

An interesting parallel between these projects, aside from their timing or my contributions, is that both employ Ruby in significant ways – significant, not necessarily to the scope of the app, but to the future of the language itself. Fire Eagle is the first Ruby on Rails application to be publicly launched at Yahoo! (a technical stunt on all fronts, indeed), and has the potential to be the most significant test of scale for the Rails platform on the Internet. BrowserPlus is making use of Ruby through an runtime engine component that allows for other components to be written in Ruby rather than compiled OS-native languages. That is, load the Ruby Engine component into BrowserPlus, then write your own component in Ruby that leverages any gem on the planet to offer up new functionality to your applications in the browser. It’s all super easy to do, but we are getting ahead of ourselves in suggesting you write your own at this point. Still, it’s all exciting for the world of Ruby.

Both BrowserPlus and Fire Eagle will be easier to get your hands on in the coming weeks, but if you want to play with one of them now it’s best to go through Mash for BrowserPlus and Dopplr for FireEagle – so you have a chance to see each platform working in practice. If you need an invite to any of the above, just post a comment to this article with your email address (no worries, it won’t be exposed).

it’s businesses time

Thursday, August 23rd, 2007

Last Wednesday was one of the happiest days of my life. There were many good things about Wednesday, but the dominating glow came from seeing Kiva on the Front Page of Yahoo!. Ever since Daily Kos spiked traffic to wipe Kiva clean of inventory, I’ve been waiting to see the day when the impact of Kiva justified a place in the most visible real estate of the Internet, and when we were able to handle the load such attention would present.
Perhaps more importantly, years of anticipation were fulfilled in seeing two of the most influential spheres in my life run tangent at the most significant of points. I’ve been begging groups at Yahoo! to do something meaningful with the audience, cause, or even spirit of Kiva for well over year. Only in our wildest dreams did we think that Yahoo! would give Kiva real estate on the front page (and certainly not the feature story). As it turns out it is more rewarding to see that the eventual intersection had nothing to do with my interactions in Sunnyvale and everything to do with the work that is going on in the Mission and in the partner countries. There were no favors done, no presentations acted on, and no compromises made on either side. Kiva was presented before the largest of all populaces solely on account of you, the viewers and the lenders. You voted with your clicks and love won.

radio foreshadows the killing of the video star

Tuesday, June 26th, 2007

I haven’t been writing much recently (perhaps because the number of would-be updates are overwhelming), but some things must be shouted about to whomever will hear them. (bonus points when the events border on the traditional definition of historic.)

Ian writes on Internet radio silence taking place today in protest of rate hikes for the broadcast of music. He does a fantastic job at explaining how this whole situation unfolded; if you plan to be following news on this, his write up will be a fair and balanced guide to navigating the “he said” – “she said” to transpire. Ian loves music (specifically the parts prime for recording and distribution) more than anyone I know personally. His life is devoted to it. The fact that he (now being the GM of Yahoo! Music) is accused as employing resistance to the new legislation as a front for securing “high profit margins” on radio is fantastic fodder for some early Tuesday morning laughter. I mean, to claim that any part of Yahoo! Music is turning fantastic profits is humorous enough, but to imagine Ian as a sleazy two-face money-hoarding executive is somewhat akin to painting Howard Zinn as secretly funding strongholds of racial discrimination and persecution to secure the quality of material needed for another bestseller.

Stepping back, this is all very tragically beautiful to me. Radio advertising is starting to implode. As Ian explains, the answer is

…painfully simple: we’re still in a crossroads where old businesses and policy makers simply don’t understand or believe the realities of a new and growing business.

The situation is exacerbated by the fact that audiences have already chosen a path forward, the advertisers were running too far behind to see which way the listeners went, and the rights owners are still dumbfounded that there’s even an intersection in the middle of their golden expressway. Napster was disruption. It was supposed to be the alarm clock for the earthquake. This, however, is the first crack in the crust. Royalty collectors can’t collect fast enough from new media so they are their tightening the hold on what they have and are strangling Lewis & Clark in the process. But don’t blame them or the audiences – it is the advertising industry’s fault.

I’ve never thought of it this way, but somewhere along the years (though certainly in the 80s) we made advertising such an unappealing and distasteful industry to the innovators and social revolutionaries that a disproportionate number of would-be entrepreneurs has ignored the profoundly profitable problems to solve caused by respective shifts in the technology of media consumption. We’ve been so creative in the numerous ways we’ve made it more stimulating and convenient to consume our movies and music that we (the innovators) forgot it is an ecosystem critically fueled by sponsored persuasive messaging. That’s not to say such sponsorship is therefore intrinsically symbiotic to content, but we were all quite naive in thinking we could decouple them now without an economic implosion (both of finance and of content). And so, without advertising infrastructure that is innovative enough to connect us (the audiences) with the advertisers in ways that are as deep and controlled as the relationships we have with our new media, business deteriorates eventually to give way to rapid crumbling.

It is for this reason that I’ve come to appreciate the thinkers who were too cool for search algorithms and spectrum analyzers, and instead began to dream up keyword auctions and real-time content-to-ad binding. Bravo to Overture, AdWords, and all of the small minorities doing creative thinking in the advertising space. “Bravo” in the most cliché of deliveries because though the efforts have been valiant, our infrastructure is still so primitive and broken that we might as well have put USAID in charge of it.

I’ve been saving the more pleasant imagery for last. The metaphors in my head birthed by the word “crossroads” got me to thinking – reminiscing even? – over what advertisements were like in the Wild West. What ever happened when the cities lost their populations to 40 acres and the 49ers? Certainly Fairway wasn’t ready to post billboards on wagon trails. Between saloon post pinups, traveling sideshows, and streetwise salesmen advertising must have been pretty durn entertainin’ (if my Hollywood stereotypes are to be believed), not to mention interactive and well-targeted. It would be interesting to know if there is a story there – and something to learn. Still, it helps me imagine a world where persuasive messaging is welcomed as helpful, efficient, and easily debunked when malicious or deceptive. Then, perhaps, I’ll let it wrap its fingers around my content again – or at least that for which I’m not keen on paying.

In the meantime, sit back, relax, and watch the music industry crumble. Go get popcorn, come back, and watch print and video follow naively in its footsteps as if a rehearsed comedy. Meanwhile if you want interactive Internet Radio to listen to through it all, don’t forget to write your representative.

Namasté, India.

Sunday, September 3rd, 2006

Today I depart for India. In fact, I’m halfway there – halfway to halfway around the world – the farthest I’ve ever been from home, though I have a feeling it won’t feel quite as remote as Morrocco did, not at least this time around. It is a short trip and just looking through the travel books I know I want to stay longer than I can. I’m hoping this is a great preparation for spending weeks or months in such a vast and diverse land. I’m also looking forward to having perceptions changed from those that I have taken for granted during my limited but steady exposure to Indian culture and Indian natives through Silicon Valley and the tech industry.

I’m waiting in the lounge for Gate B20 in Frankfurt’s Airport. There are two power outlets here, and along with the man next to me, I’m lucky to have snagged one and tapped into a hotspot to get a quick Internet fix before the next 9+ hour flight. Even though the trip is long, I think the layover is actually a welcome interruption. It is not nearly as painful as the 13hour non-stop flight from the West coast to Austrailia’s East – or at least it doesn’t seem that way so far. Perhaps I should wait until I finish the trip before making a judgement.

This morning before my flight (or I suppose it was yesterday morning) I made three quick errands all over the neighborhood on the Veloce in under 30 minutes. It was fantastic. Here in Deustchland, reminants of the Weltmeister are still in the air.

Influences

Wednesday, March 22nd, 2006

So I had entirely no intention of blogging about the absurd event on campus today, but after getting tagged into the corporate photostream I felt inclined to make mention. (Thanks to June and Warren for propogating the myth.) I was entriely amazed at how quickly so many people posted so many pictures so fast. Almost 400 hundred pictures were posted and tagged to flickr in the hour after the occassion, and at least as many have been posted since. Forget about the government ruining your privacy – we’re doing it to ourselves. Immediately after the event I though about how though security was tight and the auditorium was well cloaked, visuals and details on the otherwise private event were about as public as once can find – the most popular flickr tag for the day is even ytomcruise thanks to the saturation of the site’s users on hand. Pictures that you might be hard pressed to catch at a regular press event, such as close up of Katie’s ring or a hollywood kiss are easy pickings amidst a sea of trigger-happy well-connected cameraphone owners.

All that said, it seems ironic that the same photo that captures me at the event also documents a conversation that Mike and Naveen started by questioning the effectiveness of photos to prove one’s attendance to some momentous ocassion or amidst fame. At first it seems a digital photo really means very little in this day and age where bytes are easily modified to suit personal pleasure and there’s no original celluloid to help tie the owner to the print. Naveen suggested that perhaps video was the answer to that age-old authenticity; however, a community documenting relationships of this visual data appears to do more than any one photographer could to prove his association to his location or subject (in this case, Tom). In fact, it is not even important that the photographer actually took the photograph, but that someone took a photograph of the subject, a picture was taken of the person wishing to be associated with the subject, and that those two pictures are related together in time and location in a meaningful and credible way. In this case, I had rather not cared to be linked to today’s event in the short time I was there, but any photo of Tom on stage plus a candid and tagged photo of me is enough to have me incriminated in the court of unproductiveness for the morning. Also, pictures like this one don’t help.

Tom Cruise came to campus as a part of our Influentials speaker series, though while I’m sure many people have had their lives deeply affected by Mr. Cruise, the other Toms who have visited have left more lasting impressions. However, irony rears its head again this evening to suggest that while Yahoos are looking to Hollywood for influence, our ever proximate neighbors continue to be influenced by us. With Google Finance in place, it is hard to take the mutterances of “It’s not a Pohr-tal!” seriously anymore. Regardless, once weather.google.com launches, the transition will be final. Done, and done.

With every new “don’t leave our domain” product Google launches into the marketplace, the community, understandably, responds with less and less enthusiasm. I have to think it was like this for Yahoo! in the early days as well. The directory blew their minds. Finance was really really cool. Mail allowed some people to use a completely new service that was previously inacessible to them. Groups got everyone asking “Do you Yahoo?” Yahoo! Pets were kinda fun. Auctions were, hmm, done already. Bookmarks were… wait, is that still a property? Likewise, every new feature Google introduces further dilutes their identity to the rest of the Internet. In the beginning, everything they touched was gold because of the strong reputation built on their search services and it was novel to see their strengths applied to new problems like email and printed materials. Many at Yahoo! were pressed to imitate and incorpate their innovations, or at least felt guilty for the appearance of imitating, but in the process a lot of sleepy people woke up and a lot of talented people got the opportunity to do something new. Stepping back, the unfinished portait suggests that all along they are really imitating us. Certainly, some of the details in their execution are cooler, but at some point users will stop asking “what has Google done today?” and “hey why doesn’t this Google thing do what the other portals do?” (In which case Microsoft will respond, “Look over here! Where do you want to go today?”) In the end, the flattery turns cyclic. Since we’ve already identified ourselves with users (for better or for worse) as “the site that does everything,” we can collect cool points for integrating the good ideas and making the most interesting stuff really clever. And for that, it is good to know that in lesser known parts of the blogosphere, not every part of the company is drooling at Hollywood.

More Music Engine

Tuesday, May 17th, 2005

I’ve been so busy the past week that I’ve totally missed all the blog-buzz circulating around the new Music Engine launch. The best part of this is how open the dialog is between the team, the users, and the (gasp) external developers!

Ian sets the tone beautifully with this post. Meanwhile, Real’s CFO either get’s bitter or doesn’t get it.

Developers, please take note. These are the kind of things you can expect to see coming out of Yahoo! going forward. Will the executives come to regret letting crews of hoodlems take charge of the Yahoo! product wheels? It remains to be seen. Not all of them are out of hiding yet and new troublemakers are joining every day.

AOL thought they wanted this DNA in their engineerers twice over, first with Netscape, then with Nullsoft a year later. It makes me feel good to see folks like Ian find a home at Yahoo! and thrive, especially after so many years of the Internet promising us so much leading up to the boom. In retrospect perhaps it just wasn’t the right mix of money and anarchy – the venture capitalists and speculative investors put too much money in too quickly and led all the creative dreamers astray. Alas…

Anyway, all this fantastic music stuff will continue to pass me over for now since all the computers in my house are powered by ARM processors or Mac OS X. Somehow it seems ironic that my living room speakers are playing the last great album Ian sent me powered by the ol’ iTunes. It sorta makes me want to grab the YME code and just freakin’ port it so I can have the entire music universe in my house and so I don’t have to bug folks for the plastic everytime I need new music. In time, in time…

jobs, jobs, jobs

Wednesday, May 11th, 2005

So recently, a new collegue of mine, Jeffery McManus, posted his new job openings for the Yahoo! Developer Network on his website which were subsequently picked up by another collegue, Jeremy, resulting together in responses from a lot of quality folks in the blogosphere. Inspired by his success, I decided to make quick mention of positions we have open for engineers wanting to work on Yahoo!’s next-generation client software infastructure:

Senior Client Software Engineer

We need rockstar engineers with a C++ and client development background who also have experience writing APIs and libraries that earn the respect of hundreds of other top-notch engineers. If you know more than just how to drink Microsoft KoolAid, that’s a essential bonus in your court.

Build System and Tools Engineer

Looking for a hot-shot scripter who knows a thing or two about putting together build systems, automating and validating builds, and making large-scale software development simpler and awesome for everyone.

Senior Software Engineer, Open Source

We need engineers who have some experience in the open source community and also have a good understanding of the issues facing client developers, software inteface design, and multi-os implementation. Ever worked on Mozilla? If so, then you’ll understand the kinds of problems this job entails.

You can send resumes to my email address – skylar at yahoo dash inc dot com – or you can search for “desktop client platform” on Yahoo! Careers for the openings and post your resume there.

Did I mention? You’d be hard-pressed to find another environment with so much emerging coolness and potential. We look forward to hearing from some folks who want to shake up the concepts of what desktop and client software can do.

Music Engine

Tuesday, May 10th, 2005

After uncountable hours of amazing and tireless work, the Yahoo! Music Engine beta is finally public:

http://music.yahoo.com/musicengine/

Way to go guys!