SlideShare a Scribd company logo
1 of 59
Yahoo! Open Strategy Y!OS December 20, 2008  Jonathan LeBlanc – YDN
Y!OS Goals
Establish a Social Dimension – Profiles http://profiles.yahoo.com
Establish a Social Dimension – Small View http://my.yahoo.com
Opening Yahoo – Application platform (YAP)  http://developer.yahoo.com/dashboard
Opening Yahoo – Application Gallery http://apps.yahoo.com/myapps
[object Object]
YAP Components – Open Authentication (OAuth)  ,[object Object],[object Object],[object Object]
YAP Components – Yahoo! Markup Language (YML) http://developer.yahoo.com/yap/yml ,[object Object],[object Object],[object Object],[object Object]
YAP Components – Social APIs http://developer.yahoo.com/social/ ,[object Object],[object Object],[object Object],[object Object]
YAP Components – Caja http://code.google.com/p/google-caja ,[object Object],[object Object],[object Object],[object Object]
YAP Components – Software Development Kits (SDKs) http://developer.yahoo.com/social/sdk PHP SDK Currently Available Open and OAuth Applications ActionScript 3 SDK Currently Available Open Applications Java SDK in Development Open and OAuth Applications
YAP Components – Yahoo! Query Language (YQL) http://developer.yahoo.com/yql ,[object Object],[object Object],[object Object],[object Object]
[object Object]
YAP Applications – Open Applications ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
YAP Applications – Open Applications Creating an Open Application – Step 1
YAP Applications – Open Applications  Creating an Open Application – Step 2
YAP Applications – Open Applications  Creating an Open Application – Step 3
YAP Applications – Open Applications Creating an Open Application – Step 4
YAP Applications – Open Applications External Access Prohibited
YAP Applications – OAuth Applications ,[object Object],[object Object],[object Object],[object Object]
YAP Applications – OAuth Applications Creating an OAuth Application – Step 1
YAP Applications – OAuth Applications Creating an OAuth Application – Step 2
YAP Applications – OAuth Applications Creating an OAuth Application – Step 3
YAP Applications – OAuth Applications Creating an OAuth Application – Step 4
YAP Applications – OAuth Applications Creating an OAuth Application – Step 5
YAP Applications – OAuth Applications Creating an OAuth Application – Step 6
[object Object]
Y!OS Resources - Documentation ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Y!OS Resources – Tools and Galleries ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Y!OS Deep Dive December 20, 2008 Jonathan LeBlanc – YDN
[object Object]
YML – Available Tags YML Tags yml:a   yml:audio   yml:form   yml:friend-selector yml:if-env   yml:image   yml:message yml:name   yml:profile-pic   yml:pronoun yml:share  yml:swf  yml:user-badge yml:visible-to-friends  yml:visible-to-owner yml:visible-to-user    YML Lite Tags yml:a   yml:audio   yml:form   yml:if-env   yml:image   yml:name   yml:profile-pic   yml:pronoun   yml:user-badge  
YML – Syntax Rules ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
YML – Sample YML Use Tab Controller
YML – Sample YML Use Tab Construction
YML – Sample YML Use Tab Styles
[object Object]
PHP SDK – 2-Legged OAuth Initialization Used For: Applications which only require access to public user data and open APIs
PHP SDK – 3-Legged OAuth Initialization ,[object Object],[object Object]
PHP SDK – User Data Manipulation
PHP SDK – Create an Update for a User
PHP SDK – Set the Status (Presence) of a User
[object Object]
YQL – Console Location: http://developer.yahoo.com/yql/console
YQL – Query Structure Projection - SELECT what FROM table - SELECT * FROM social.connections Local and Remote Filtering - SELECT what FROM table WHERE filter - SELECT * FROM social.profile WHERE guid = me Sub-selects - Joining Data - SELECT what FROM table WHERE fieldvalue IN (SELECT ...) - SELECT * FROM social.profile WHERE guid IN (SELECT guid FROM social.connections WHERE owner_guid=me) Local Paging Control - SELECT what FROM table WHERE filter LIMIT 10 OFFSET 50 - SELECT * FROM web.search WHERE query="madonna" LIMIT 3 OFFSET 10 Remove Table Size Control - SELECT what FROM table(0,500) WHERE condition - SELECT * FROM web.search(0,10) WHERE query="madonna" AND result.XXX = something
YQL – Available Tables YQL Command: SHOW tables
YQL – Table Contents YQL Command: DESC social.connections
YQL – Running a Query
YQL – Output Types
[object Object]
Caja & JavaScript – Before Cajoling
Caja & JavaScript – After Cajoling
Caja & JavaScript – What doesn’t work? ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Caja & HTML – What doesn’t work? ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Caja & CSS – What doesn’t work? ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
[object Object]
Common platform issues and questions ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Questions? ,[object Object]

More Related Content

Viewers also liked

Yahoo! case study final
Yahoo! case study   finalYahoo! case study   final
Yahoo! case study final
HishamSefrah
 
~Yahoo presentation~
~Yahoo presentation~   ~Yahoo presentation~
~Yahoo presentation~
Deemag
 
Case Study Analysis Of Google
Case Study Analysis Of GoogleCase Study Analysis Of Google
Case Study Analysis Of Google
abnguyen28
 

Viewers also liked (13)

Yahoo! marketing strategy
Yahoo! marketing strategyYahoo! marketing strategy
Yahoo! marketing strategy
 
Marissa mayers case study
Marissa mayers case studyMarissa mayers case study
Marissa mayers case study
 
Yahoo! Open Strategy (Y!OS) and Government
Yahoo! Open Strategy (Y!OS) and GovernmentYahoo! Open Strategy (Y!OS) and Government
Yahoo! Open Strategy (Y!OS) and Government
 
Yahoo! Open Strategy Overview
Yahoo! Open Strategy OverviewYahoo! Open Strategy Overview
Yahoo! Open Strategy Overview
 
Yahoo powerpoint
Yahoo powerpointYahoo powerpoint
Yahoo powerpoint
 
Yahoo!
Yahoo!Yahoo!
Yahoo!
 
Yahoo! case study final
Yahoo! case study   finalYahoo! case study   final
Yahoo! case study final
 
Yahoo Strategy Analysis
Yahoo   Strategy AnalysisYahoo   Strategy Analysis
Yahoo Strategy Analysis
 
Yahoo case analysis
Yahoo case analysisYahoo case analysis
Yahoo case analysis
 
Yahoo Case Study
Yahoo Case StudyYahoo Case Study
Yahoo Case Study
 
Yahoo! case study
Yahoo! case studyYahoo! case study
Yahoo! case study
 
~Yahoo presentation~
~Yahoo presentation~   ~Yahoo presentation~
~Yahoo presentation~
 
Case Study Analysis Of Google
Case Study Analysis Of GoogleCase Study Analysis Of Google
Case Study Analysis Of Google
 

Similar to Y!OS Overview and Deep Code Dive

Jaoo - Open Social A Standard For The Social Web
Jaoo - Open Social A Standard For The Social WebJaoo - Open Social A Standard For The Social Web
Jaoo - Open Social A Standard For The Social Web
Patrick Chanezon
 

Similar to Y!OS Overview and Deep Code Dive (20)

fowa miami
fowa miamifowa miami
fowa miami
 
Future of Web Apps - Miami, FL - February 2009
Future of Web Apps - Miami, FL - February 2009Future of Web Apps - Miami, FL - February 2009
Future of Web Apps - Miami, FL - February 2009
 
USC Yahoo! BOSS, YAP and YQL Overview
USC Yahoo! BOSS, YAP and YQL OverviewUSC Yahoo! BOSS, YAP and YQL Overview
USC Yahoo! BOSS, YAP and YQL Overview
 
SEA Open Hack - YAP
SEA Open Hack - YAPSEA Open Hack - YAP
SEA Open Hack - YAP
 
Yahoo! Application Platform Technical Deep Dive
Yahoo! Application Platform Technical Deep DiveYahoo! Application Platform Technical Deep Dive
Yahoo! Application Platform Technical Deep Dive
 
YAP Overview - Startups
YAP Overview - StartupsYAP Overview - Startups
YAP Overview - Startups
 
Moving from Web 1.0 to Web 2.0
Moving from Web 1.0 to Web 2.0Moving from Web 1.0 to Web 2.0
Moving from Web 1.0 to Web 2.0
 
Mashup Y! widget
Mashup Y! widgetMashup Y! widget
Mashup Y! widget
 
Yahoo! Application Platform (YAP)
Yahoo! Application Platform (YAP)Yahoo! Application Platform (YAP)
Yahoo! Application Platform (YAP)
 
Jaoo - Open Social A Standard For The Social Web
Jaoo - Open Social A Standard For The Social WebJaoo - Open Social A Standard For The Social Web
Jaoo - Open Social A Standard For The Social Web
 
Build your web apps with yql and yui
Build your web apps with yql and yuiBuild your web apps with yql and yui
Build your web apps with yql and yui
 
Technical Introduction to YDN
Technical Introduction to YDNTechnical Introduction to YDN
Technical Introduction to YDN
 
Lessons Learned - Building YDN
Lessons Learned - Building YDNLessons Learned - Building YDN
Lessons Learned - Building YDN
 
WRT Widgets Masterclass - OverTheAir
WRT Widgets Masterclass - OverTheAirWRT Widgets Masterclass - OverTheAir
WRT Widgets Masterclass - OverTheAir
 
Yahoo Application Platform - Hack Day 2009
Yahoo Application Platform - Hack Day 2009Yahoo Application Platform - Hack Day 2009
Yahoo Application Platform - Hack Day 2009
 
Barcamphanoi Opensocial Application Development
Barcamphanoi Opensocial Application DevelopmentBarcamphanoi Opensocial Application Development
Barcamphanoi Opensocial Application Development
 
Web services and JavaScript
Web services and JavaScriptWeb services and JavaScript
Web services and JavaScript
 
Plattformübergreifende App-Entwicklung (ein Vergleich) - MobileTechCon 2010
Plattformübergreifende App-Entwicklung (ein Vergleich) - MobileTechCon 2010Plattformübergreifende App-Entwicklung (ein Vergleich) - MobileTechCon 2010
Plattformübergreifende App-Entwicklung (ein Vergleich) - MobileTechCon 2010
 
Hack Day EU 2011 YQL
Hack Day EU 2011 YQLHack Day EU 2011 YQL
Hack Day EU 2011 YQL
 
Migrating JavaME Apps to Android
Migrating JavaME Apps to AndroidMigrating JavaME Apps to Android
Migrating JavaME Apps to Android
 

Recently uploaded

IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI Solutions
Enterprise Knowledge
 

Recently uploaded (20)

From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path Mount
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivity
 
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slides
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI Solutions
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
 
Real Time Object Detection Using Open CV
Real Time Object Detection Using Open CVReal Time Object Detection Using Open CV
Real Time Object Detection Using Open CV
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Script
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreter
 

Y!OS Overview and Deep Code Dive

  • 1. Yahoo! Open Strategy Y!OS December 20, 2008 Jonathan LeBlanc – YDN
  • 3. Establish a Social Dimension – Profiles http://profiles.yahoo.com
  • 4. Establish a Social Dimension – Small View http://my.yahoo.com
  • 5. Opening Yahoo – Application platform (YAP) http://developer.yahoo.com/dashboard
  • 6. Opening Yahoo – Application Gallery http://apps.yahoo.com/myapps
  • 7.
  • 8.
  • 9.
  • 10.
  • 11.
  • 12. YAP Components – Software Development Kits (SDKs) http://developer.yahoo.com/social/sdk PHP SDK Currently Available Open and OAuth Applications ActionScript 3 SDK Currently Available Open Applications Java SDK in Development Open and OAuth Applications
  • 13.
  • 14.
  • 15.
  • 16. YAP Applications – Open Applications Creating an Open Application – Step 1
  • 17. YAP Applications – Open Applications Creating an Open Application – Step 2
  • 18. YAP Applications – Open Applications Creating an Open Application – Step 3
  • 19. YAP Applications – Open Applications Creating an Open Application – Step 4
  • 20. YAP Applications – Open Applications External Access Prohibited
  • 21.
  • 22. YAP Applications – OAuth Applications Creating an OAuth Application – Step 1
  • 23. YAP Applications – OAuth Applications Creating an OAuth Application – Step 2
  • 24. YAP Applications – OAuth Applications Creating an OAuth Application – Step 3
  • 25. YAP Applications – OAuth Applications Creating an OAuth Application – Step 4
  • 26. YAP Applications – OAuth Applications Creating an OAuth Application – Step 5
  • 27. YAP Applications – OAuth Applications Creating an OAuth Application – Step 6
  • 28.
  • 29.
  • 30.
  • 31. Y!OS Deep Dive December 20, 2008 Jonathan LeBlanc – YDN
  • 32.
  • 33. YML – Available Tags YML Tags yml:a   yml:audio   yml:form   yml:friend-selector yml:if-env   yml:image   yml:message yml:name   yml:profile-pic   yml:pronoun yml:share  yml:swf  yml:user-badge yml:visible-to-friends yml:visible-to-owner yml:visible-to-user    YML Lite Tags yml:a   yml:audio   yml:form   yml:if-env   yml:image   yml:name   yml:profile-pic   yml:pronoun   yml:user-badge  
  • 34.
  • 35. YML – Sample YML Use Tab Controller
  • 36. YML – Sample YML Use Tab Construction
  • 37. YML – Sample YML Use Tab Styles
  • 38.
  • 39. PHP SDK – 2-Legged OAuth Initialization Used For: Applications which only require access to public user data and open APIs
  • 40.
  • 41. PHP SDK – User Data Manipulation
  • 42. PHP SDK – Create an Update for a User
  • 43. PHP SDK – Set the Status (Presence) of a User
  • 44.
  • 45. YQL – Console Location: http://developer.yahoo.com/yql/console
  • 46. YQL – Query Structure Projection - SELECT what FROM table - SELECT * FROM social.connections Local and Remote Filtering - SELECT what FROM table WHERE filter - SELECT * FROM social.profile WHERE guid = me Sub-selects - Joining Data - SELECT what FROM table WHERE fieldvalue IN (SELECT ...) - SELECT * FROM social.profile WHERE guid IN (SELECT guid FROM social.connections WHERE owner_guid=me) Local Paging Control - SELECT what FROM table WHERE filter LIMIT 10 OFFSET 50 - SELECT * FROM web.search WHERE query="madonna" LIMIT 3 OFFSET 10 Remove Table Size Control - SELECT what FROM table(0,500) WHERE condition - SELECT * FROM web.search(0,10) WHERE query="madonna" AND result.XXX = something
  • 47. YQL – Available Tables YQL Command: SHOW tables
  • 48. YQL – Table Contents YQL Command: DESC social.connections
  • 49. YQL – Running a Query
  • 50. YQL – Output Types
  • 51.
  • 52. Caja & JavaScript – Before Cajoling
  • 53. Caja & JavaScript – After Cajoling
  • 54.
  • 55.
  • 56.
  • 57.
  • 58.
  • 59.