The document discusses Yahoo!'s open strategy and use of open source technologies and standards. It highlights Yahoo!'s embrace of open source through its contributions to projects like YUI and support of standards like OAuth, OpenID, and YQL. It also details Yahoo!'s Developer Network which provides tools, APIs, and resources for developers to build applications and mashups using Yahoo!'s open platforms and data.
14. Y! OS – Establish a social dimension
• Underlying social plaOorm
• Social APIs w/ OpenSocial
• Unified profile system
• Rich connecTons
• Updates across Yahoo!
• Link your external
accounts
24. Y! OS – Open to 3rd‐par>es like never before
• Yahoo! Developer Network
• Developer Tools (YUI, etc)
• Social APIs
• Profiles
• ConnecTons
• Updates
• Data APIs
• OAuth
• Yahoo! Query Language
• Yahoo! ApplicaTon PlaOorm
• OpenSocial
28. What is Yahoo! Developer Network?
The Yahoo! Developer Network offers open source tools and
open data APIs to make it easy for developers to build
applica>ons and mashups.
• 50+ APIs / Web Services
– Developer Dashboard
– Tutorials + Code Samples
– API Documenta>on
Yahoo! User Interface libraries + ASTRA
•
Design Pa3erns Library
•
PHP / Python / Ruby Dev Centers
•
Blogs / Theater / Events / Evangelism
•
60. Y! Open Stack – YQL
• SQL‐Like Language
– Synonymous with Data access
– Familiar to developers
– Expressive enough to get the right data.
• Self Describing ‐ show, desc table
• Allows you to query, filter and join data across
Web Services.
68. YQL Statements ‐ Subselects
Syntax ‐> Select ‐> Sub‐Select
• IN (SELECT ...)
– Join across data sources
– Field IN (select guid from ...)
– Like SELECT but can return only N leaves
Get the profile for all my connec1ons:
select * from social.profile where guid in (select guid from social.connec?ons where
owner_guid = me)
69.
70. YQL Statements – Table
Syntax ‐> Select ‐> Table Size
• Changing the Table Size
– Yahoo! Tables are limited to a small number by
default (10)
select * from local.search where zip=‘94089’ and query=‘pizza’
– Increase set size as parameters to CollecTon
select * from local.search(100) where zip=‘94089’ and query=‘pizza’
102. Open Applica>on
Code Dive
What can you do with open apps?
102
103.
104.
105.
106.
107. What is YML?
• YML tags make it easy for you to create
applica>ons that access social data, such as a list
of the user’s friends.
• Similar in format to XML, YML provides
func>onality to Open Applica>ons in a safe and
standardized fashion. yml:friend‐selector
yml:visible‐to‐friends
• Will begin integra>ng into OSML
110. Caja – What is it?
Caja is a JavaScript sandbox of sorts. It saniTzes
JavaScript and HTML, removing unsafe code.
That code then runs in the browser. This
allows Yahoo to safely include externally
created JavaScript. Developers should expect
that they cannot do everything they would
normally do in a web applicaTon.
112. Caja – What is it?
• Caja prevents the use of arbitrary AcTveX
components, use of eval and iframes.
• External libraries like YUI are not supported.
• It does not allow document.write but
innerHTML is allowed.
• Objects in Caja cannot be extended by use of
obj.prototype.
• No direct access to real global objects.
125. Y! Open Stack – SDKs
PHP SDK Currently Available
Open and OAuth Applica>ons
Ac>onScript 3 SDK Currently Available
Open Applica>ons
Java SDK in Development
Open and OAuth Applica>ons
126. Installing the YOS PHP SDK
1. Download the SDK
– http://developer.yahoo.com/social/sdk
2. Unzip yos_php_sdk-1.1
3. Get a Developer Key
– http://developer.yahoo.com/dashboard
4. Start to write some code
141. What will we learn?
How to work with the YOS SDK
•
Using social apis through YQL
•
Using any web data through YQL apis
•
Displaying social data with YML and YAP
•
142. What does it take?
Create an applicaTon in developer dashboard
•
Set applicaTon url in developer tool
•
Build applicaTon
•
Preview in developer tool
•
Push live in developer tool
•
Push to gallery
•