usc yahoo! boss, yap and yql overview

46
Yahoo! Open Technologies Jonathan LeBlanc – Technology Evangelist Yahoo! Developer Network – Partner Integrations Blog: www.nakedtechnologist.com Twitter: jcleblanc

Upload: jonathan-leblanc

Post on 20-Jan-2015

1.410 views

Category:

Technology


0 download

DESCRIPTION

Overview of three Yahoo! Technologies. Build your Own Search Service (BOSS), Yahoo! Query Language (YQL) and the Yahoo! Application Platform (YAP) for the University of South Carolina

TRANSCRIPT

Page 1: USC Yahoo! BOSS, YAP and YQL Overview

Yahoo! Open TechnologiesJonathan LeBlanc – Technology Evangelist

Yahoo! Developer Network – Partner Integrations

Blog: www.nakedtechnologist.com

Twitter: jcleblanc

Page 2: USC Yahoo! BOSS, YAP and YQL Overview

2

Build Your Own Search Service( BOSS )

Page 3: USC Yahoo! BOSS, YAP and YQL Overview

3

How Do I Use It?Development and Stuff

Page 4: USC Yahoo! BOSS, YAP and YQL Overview

4

BOSS – Requesting Data

http://boss.yahooapis.com/ysearch/{service}/v1/

{query}?appid={yourBOSSappid}&[params]

Params

• start • format

• count • callback

• lang • sites

• region

Page 5: USC Yahoo! BOSS, YAP and YQL Overview

5

What Can I Build With This Thing? BOSS Examples in Practice

Page 6: USC Yahoo! BOSS, YAP and YQL Overview

6

New Presentation Models

Page 7: USC Yahoo! BOSS, YAP and YQL Overview

7

Client / Browser Integrations

Page 8: USC Yahoo! BOSS, YAP and YQL Overview

8

New Ranking Models

Page 9: USC Yahoo! BOSS, YAP and YQL Overview

9

Vertical/niche search products

Page 10: USC Yahoo! BOSS, YAP and YQL Overview

10

Yahoo! Application Platform( YAP )

Page 11: USC Yahoo! BOSS, YAP and YQL Overview

11

YAP Applications What’s a YAP Application?

Page 12: USC Yahoo! BOSS, YAP and YQL Overview

12

• Runs on YAP

• Supports 2- & 3- legged OAuth

• Supports OpenSocial 0.8

JavaScript APIs

Open Applications

Page 13: USC Yahoo! BOSS, YAP and YQL Overview

13

Open Application - Views

Small View

Large View

Page 14: USC Yahoo! BOSS, YAP and YQL Overview

14

Page 15: USC Yahoo! BOSS, YAP and YQL Overview

15

Page 16: USC Yahoo! BOSS, YAP and YQL Overview

16

• Runs off platform

• Supports 2- & 3-legged OAuth

• Does not contain views

• Requires users to authenticate

session

OAuth Applications

Page 17: USC Yahoo! BOSS, YAP and YQL Overview

17

Page 18: USC Yahoo! BOSS, YAP and YQL Overview

Y!OS Components How does it work?

Page 19: USC Yahoo! BOSS, YAP and YQL Overview

19

Y!OS Components – Open Authentication (OAuth)

• 2-legged & 3-legged OAuth

• Consumer / Shared Secret keys

• Similar to proprietary BBAuth, but

open standard

• http://developer.yahoo.com/oauth/

Page 20: USC Yahoo! BOSS, YAP and YQL Overview

20

• Allows secured access to private data

• Whitelisted components

• Will begin integrating into OSML

• http://developer.yahoo.com/yap/yml

Y!OS Components – Yahoo Markup Language (YML)

Page 21: USC Yahoo! BOSS, YAP and YQL Overview

21

• Social Directory (read)

• Contacts (read)

• User Status (read / write)

• Updates (read / write)

• http://developer.yahoo.com/social

Y!OS Components – Social APIs

Page 22: USC Yahoo! BOSS, YAP and YQL Overview

22

• HTML / CSS / JavaScript securer

• Enforces standards

• Includes JSLint (http://www.jslint.com)

• One of the first to integrate Caja

• http://code.google.com/p/google-caja

• http://developer.yahoo.com/yap/guide/caja-

support.html

Y!OS Components – Caja

Page 23: USC Yahoo! BOSS, YAP and YQL Overview

23

Caja - IFrame Security Concerns

IFrame Concerns

• Drive-by downloads

• No real content restrictions

• Other known exploits

Caja Implementation

• Blacklist all / Whitelist some model

• Secure OpenSocial container

Page 24: USC Yahoo! BOSS, YAP and YQL Overview

24

PHP SDK Currently AvailableOpen and OAuth Applications

ActionScript 3 SDK Currently AvailableOpen Applications

Y!OS Components – SDKs

Page 25: USC Yahoo! BOSS, YAP and YQL Overview

25

Yahoo! Query Language (YQL) SELECT * FROM Internet

Page 26: USC Yahoo! BOSS, YAP and YQL Overview

26

Page 27: USC Yahoo! BOSS, YAP and YQL Overview

27

SELECT * FROM Internet

Page 28: USC Yahoo! BOSS, YAP and YQL Overview

28

Page 29: USC Yahoo! BOSS, YAP and YQL Overview

29

Page 30: USC Yahoo! BOSS, YAP and YQL Overview

30

SELECT myColumn, myTitle

FROM myTable(0, 50)

WHERE myColumn = 'value' AND myTitle = 'title‘

LIMIT 3 OFFSET 10 |

sort(field='myColumn') | reverse()

YQL – Query Structure

Page 31: USC Yahoo! BOSS, YAP and YQL Overview

31

YQL Command: SHOW tables (79 Standard / 222 with community)

YQL – Available Tables

<table>atom</table><table>csv</table><table>feed</table><table>flickr.photos.exif</table><table>flickr.photos.info</table><table>flickr.photos.interestingness</table><table>flickr.photos.recent</table><table>flickr.photos.search</table><table>flickr.photos.sizes</table><table>flickr.places</table><table>flickr.places.info</table><table>geo.places</table><table>geo.places.ancestors</table><table>geo.places.belongtos</table><table>geo.places.children</table><table>geo.places.neighbors</table><table>geo.places.parent</table><table>geo.places.siblings</table><table>geo.placetypes</table><table>gnip.activity</table><table>html</table><table>json</table><table>local.search</table><table>microformats</table><table>music.artist.id</table><table>music.artist.popular</table><table>music.artist.search</table><table>music.artist.similar</table>

<table>music.release.artist</table><table>music.release.id</table><table>music.release.popular</table><table>music.release.search</table><table>music.track.id</table><table>music.track.popular</table><table>music.track.search</table><table>music.video.category</table><table>music.video.id</table><table>music.video.popular</table><table>music.video.search</table><table>music.video.similar</table><table>mybloglog.community.find</table><table>mybloglog.member</table><table>mybloglog.member.contacts</table><table>mybloglog.member.newwithcontacts</table><table>mybloglog.member.newwithme</table><table>mybloglog.members.find</table><table>mybloglog.stats.find</table><table>rss</table><table>search.images</table><table>search.news</table><table>search.siteexplorer.inlinks</table><table>search.siteexplorer.pages</table><table>search.spelling</table><table>search.suggest</table><table>search.termextract</table><table>search.web</table>

<table>social.connections</table><table>social.contacts</table><table>social.presence</table><table>social.profile</table><table>social.updates</table><table>upcoming.category</table><table>upcoming.country</table><table>upcoming.events</table><table>upcoming.events.bestinplace</table><table>upcoming.groups</table><table>upcoming.metro</table><table>upcoming.state</table><table>upcoming.user</table><table>upcoming.venue</table><table>uritemplate</table><table>weather.forecast</table><table>xml</table><table>yahoo.identity</table><table>yap.setsmallview</table><table>yql.admin.blockedips</table><table>yql.admin.blockedscripts</table>

Page 32: USC Yahoo! BOSS, YAP and YQL Overview

32

YQL Command: DESC social.connections

YQL – Table Contents

Page 33: USC Yahoo! BOSS, YAP and YQL Overview

33

YQL - Running a Query

http://query.yahooapis.com/v1/yql?[params]

http://query.yahooapis.com/v1/public/yql?[params]

Params• q=[QUERY]• format=[xml / json]• callback=[function name]• diagnostics=[true / false]

Page 34: USC Yahoo! BOSS, YAP and YQL Overview

34

YQL – Output Types

Page 35: USC Yahoo! BOSS, YAP and YQL Overview

35

YQL Open Data Tables Structure the internet

Page 36: USC Yahoo! BOSS, YAP and YQL Overview

36

YQL – Open Data Tables

Page 37: USC Yahoo! BOSS, YAP and YQL Overview

37

YQL – Using an Open Data Table

USE ‘{TABLE URL}’ as digg;SELECT * FROM digg WHERE topic=‘apple’;

Page 38: USC Yahoo! BOSS, YAP and YQL Overview

38

YQL Execute Augment the Internet

Page 39: USC Yahoo! BOSS, YAP and YQL Overview

39

Page 40: USC Yahoo! BOSS, YAP and YQL Overview

40

Page 41: USC Yahoo! BOSS, YAP and YQL Overview

41

End Result What’s this data going to do for me?

Page 42: USC Yahoo! BOSS, YAP and YQL Overview

42

Page 43: USC Yahoo! BOSS, YAP and YQL Overview

43

Page 44: USC Yahoo! BOSS, YAP and YQL Overview

44

Page 45: USC Yahoo! BOSS, YAP and YQL Overview

45

Getting Started

BOSS Main Pagehttp://developer.yahoo.com/boss

Y!OS Main Pagehttp://developer.yahoo.com/yos

YQL Consolehttp://developer.yahoo.com/yql/console

Developer Forumshttp://developer.yahoo.com/forums

Page 46: USC Yahoo! BOSS, YAP and YQL Overview

46

Thank You Questions?