Yahoo Application Platform Sudar Muthu Research Engineer Twitter: @sudarmuthu
What is YAP Why use YAP What can you do with YAP Anatomy of YAP app Small View Full View YML YAP Cautions Demo Thank you B C D E Overview
Open Applications HOME PAGE MY YAHOO! … more coming soon Y! TOOLBAR PULSE
Why hack open apps? MY APP SOCIAL - Access user Profile & Connection data - Interactive, personalized DISTRIBUTABLE - Discovery - Promotion - Media buy enhanced ENGAGING - Permanently parked in high-traffic starting points - Viral in nature EASY TO BUILD - Quickly prototype idea within 24 hours - Launch directly in production. No blockers!
Materialize Social Graph data for engaging experiences Build apps for Yahoo! network and reach  600M+ audience Use updates API to make your hacks viral Improve social search experience Think social games! Personalize your hacks with Yahoo! Profile data. Use Yahoo! Login. What can you do?
YAP : Small View Small size Cached, needs to be fast Supports only: Html, Inline css, YML
YAP: Canvas View Loads external URL from your server Support for: Open social YML, CSS, HTML, JS Runs in an iFrame with Caja Yahoo! SDK
YAP - Accessing User Data Guid Unique identifier for a user Public info, can be stored on your servers Consumer Key / Secret Specifies “API Scopes” Enables to query Yahoo! WS Necessary for OAuth 1.1 authentication Automatically created for you in devTool
Social Platforms: Available APIs Social Directory: One Social Graph Contacts, connections & profile data Updates Syndicate user content & activity  Presence Read, write presence SDK simplifies access  Make it easy: YQL -  -
YML: Yummy Language To Get You Started Enables you to get cool features fast <yml:a view=”Full” params=”prefs.php”/> Enables ajaxy behaviors in SmallView <yml:profile-pic uid=”XXX”> <yml:name uid=”viewer” linked=&quot;true&quot;/>   <yml:friend-selector uid=&quot;viewer&quot;/>   <yml:user-badge uid=&quot;viewer&quot; linked=&quot;true” />    -  - More:  http://developer.yahoo.com/yap/guide/yapdev-yml.html
Demo app  http://apps.yahoo.com/-xevKmU6s   Source code http:// github.com/sudar/yml -demo YML – Demo
YAP Demo – Ego Search  http://apps.yahoo.com/-Xa1rAM6k   Source Code http://github.com/sudar/ego-search Demo – Ego Search
https://developer.apps.yahoo.com/projects/
 
Gadget XML:  http://github.com/sudar/ego-search/blob/master/gadget.xml
 
 
 
PHP Code:  http://github.com/sudar/ego-search/blob/master/fullview.php
YAP Cautions Your gadget URL needs to be a prod host Not all HTML/JS will run for security JS/HTML will be cajoled YML and OpenSocial are whitelisted Small view:  No Javascript NO CSS No <a> Links except  via YML
Thank You! Sudar Muthu http://sudarmuthu.com http:// github.com/sudar http://slideshare.net/Sudar/ http://twitter.com/sudarmuthu

Yap hack u-2010

  • 2.
    Yahoo Application PlatformSudar Muthu Research Engineer Twitter: @sudarmuthu
  • 3.
    What is YAPWhy use YAP What can you do with YAP Anatomy of YAP app Small View Full View YML YAP Cautions Demo Thank you B C D E Overview
  • 4.
    Open Applications HOMEPAGE MY YAHOO! … more coming soon Y! TOOLBAR PULSE
  • 5.
    Why hack openapps? MY APP SOCIAL - Access user Profile & Connection data - Interactive, personalized DISTRIBUTABLE - Discovery - Promotion - Media buy enhanced ENGAGING - Permanently parked in high-traffic starting points - Viral in nature EASY TO BUILD - Quickly prototype idea within 24 hours - Launch directly in production. No blockers!
  • 6.
    Materialize Social Graphdata for engaging experiences Build apps for Yahoo! network and reach 600M+ audience Use updates API to make your hacks viral Improve social search experience Think social games! Personalize your hacks with Yahoo! Profile data. Use Yahoo! Login. What can you do?
  • 7.
    YAP : SmallView Small size Cached, needs to be fast Supports only: Html, Inline css, YML
  • 8.
    YAP: Canvas ViewLoads external URL from your server Support for: Open social YML, CSS, HTML, JS Runs in an iFrame with Caja Yahoo! SDK
  • 9.
    YAP - AccessingUser Data Guid Unique identifier for a user Public info, can be stored on your servers Consumer Key / Secret Specifies “API Scopes” Enables to query Yahoo! WS Necessary for OAuth 1.1 authentication Automatically created for you in devTool
  • 10.
    Social Platforms: AvailableAPIs Social Directory: One Social Graph Contacts, connections & profile data Updates Syndicate user content & activity Presence Read, write presence SDK simplifies access Make it easy: YQL - -
  • 11.
    YML: Yummy LanguageTo Get You Started Enables you to get cool features fast <yml:a view=”Full” params=”prefs.php”/> Enables ajaxy behaviors in SmallView <yml:profile-pic uid=”XXX”> <yml:name uid=”viewer” linked=&quot;true&quot;/>   <yml:friend-selector uid=&quot;viewer&quot;/>   <yml:user-badge uid=&quot;viewer&quot; linked=&quot;true” />    - - More: http://developer.yahoo.com/yap/guide/yapdev-yml.html
  • 12.
    Demo app http://apps.yahoo.com/-xevKmU6s Source code http:// github.com/sudar/yml -demo YML – Demo
  • 13.
    YAP Demo –Ego Search http://apps.yahoo.com/-Xa1rAM6k Source Code http://github.com/sudar/ego-search Demo – Ego Search
  • 14.
  • 15.
  • 16.
    Gadget XML: http://github.com/sudar/ego-search/blob/master/gadget.xml
  • 17.
  • 18.
  • 19.
  • 20.
    PHP Code: http://github.com/sudar/ego-search/blob/master/fullview.php
  • 21.
    YAP Cautions Yourgadget URL needs to be a prod host Not all HTML/JS will run for security JS/HTML will be cajoled YML and OpenSocial are whitelisted Small view: No Javascript NO CSS No <a> Links except via YML
  • 22.
    Thank You! SudarMuthu http://sudarmuthu.com http:// github.com/sudar http://slideshare.net/Sudar/ http://twitter.com/sudarmuthu

Editor's Notes

  • #12 Yml:name Displays the name of the specified person. Optionally, links to the person&apos;s Yahoo! Profile page.
  • #22 Calls to alert() are redirected to console.log(). You can&apos;t use external scripts or external stylesheets yet. Inline them instead. Complex libraries such as YUI, jQuery, and Prototype might partially work if you inline them, but they are not seamless yet. The document.write method is subject to restrictions described in DOM Limitations . However, innerHTML and many commonly-used DOM interfaces are supported.