122
YAP 雅虎應用程式平台 Yahoo! Application Platform josephj / 蔣定宇

YAP - 認識雅虎應用程式平台

Embed Size (px)

DESCRIPTION

YAP 讓開發者可在 Yahoo! 的網頁上開發應用程式,目前尚未正式推出,此投影片讓開發者搶鮮認識!

Citation preview

Page 1: YAP - 認識雅虎應用程式平台

YAP雅虎應用程式平台

Yahoo! Application Platformjosephj / 蔣定宇

Page 2: YAP - 認識雅虎應用程式平台

高空彈跳(2008.9.7,澳門旅遊塔)

twitter : josephj6802http://josephj.com

[email protected]

YDN EvangelistYDN 創新科技推廣工程師

Page 3: YAP - 認識雅虎應用程式平台

Hi! 我是 josephj(啊嗚)

高空彈跳(2008.9.7,澳門旅遊塔)

twitter : josephj6802http://josephj.com

[email protected]

YDN EvangelistYDN 創新科技推廣工程師

Page 4: YAP - 認識雅虎應用程式平台

Hi! 我是 josephj(啊嗚)

高空彈跳(2008.9.7,澳門旅遊塔)

twitter : josephj6802http://josephj.com

[email protected]

YDN EvangelistYDN 創新科技推廣工程師

Page 5: YAP - 認識雅虎應用程式平台

今日菜單

1. YOS、YAP 的基本概念

2. OpenSocial 的故事

3. Yahoo! 的策略

Page 6: YAP - 認識雅虎應用程式平台

I. Y!OS、YAP 的基本概念

Page 7: YAP - 認識雅虎應用程式平台

全球技術長 Ari 來台的簡報Introducing Yahoo! Open Strategy

Y!OS

Page 8: YAP - 認識雅虎應用程式平台

Application Platform

Social Platform

Web Services Platform

Y! Mail

Y! FP

EU Sport

… Partner

Sites

YDN

One framework for

developing applications

One social graph and profile

record

One web services standard

for developers

One front door for

developers

Open Reg and Infrastructure

Y!OS Stacks

Page 9: YAP - 認識雅虎應用程式平台

SearchMonkey

Standard

views

Mail Frontpage

Mobile

Contextual views

Yahoo! Application Platform

Page 10: YAP - 認識雅虎應用程式平台

Y!OS 簡單來說就是,找到正確的方向、開放 Yahoo! 整個網站

Page 11: YAP - 認識雅虎應用程式平台

Open 能帶來什麼好處?

Page 12: YAP - 認識雅虎應用程式平台

• 提供很棒的服務與架構

Amazon Web Services

Amazon Web Services: Bigger Than Amazonhttp://www.readwriteweb.com/archives/amazon_web_services_bigger_than_amazon.php

Page 13: YAP - 認識雅虎應用程式平台

• 提供很棒的服務與架構• 貨品資訊:Associate Web Service

Amazon Web Services

Amazon Web Services: Bigger Than Amazonhttp://www.readwriteweb.com/archives/amazon_web_services_bigger_than_amazon.php

Page 14: YAP - 認識雅虎應用程式平台

• 提供很棒的服務與架構• 貨品資訊:Associate Web Service

• 雲端科技:SimpleDB、E2C

Amazon Web Services

Amazon Web Services: Bigger Than Amazonhttp://www.readwriteweb.com/archives/amazon_web_services_bigger_than_amazon.php

Page 15: YAP - 認識雅虎應用程式平台

• 提供很棒的服務與架構• 貨品資訊:Associate Web Service

• 雲端科技:SimpleDB、E2C

• 使用者有許多大型企業集團

Amazon Web Services

Amazon Web Services: Bigger Than Amazonhttp://www.readwriteweb.com/archives/amazon_web_services_bigger_than_amazon.php

Page 16: YAP - 認識雅虎應用程式平台

• 提供很棒的服務與架構• 貨品資訊:Associate Web Service

• 雲端科技:SimpleDB、E2C

• 使用者有許多大型企業集團• 2008 Q1 的 Revenue 是 $131M

Amazon Web Services

Amazon Web Services: Bigger Than Amazonhttp://www.readwriteweb.com/archives/amazon_web_services_bigger_than_amazon.php

Page 17: YAP - 認識雅虎應用程式平台

Y!OS 是一個「決策」的方向。它不是一個「系統」或「架構」

重點在於要如何 Open 才能讓 Yahoo! 更好

Page 18: YAP - 認識雅虎應用程式平台

以上為 Y!OS 的理念開發者大致了解即可

Page 19: YAP - 認識雅虎應用程式平台

與開發者有密切相關的是

「雅虎應用程式平台」

Yahoo Application Platform 、簡稱 YAP

Page 20: YAP - 認識雅虎應用程式平台

YAP 讓所有開發者,可在 Yahoo! 的頁面開發應用程式,而使用者可以選擇安裝

及移除。

Page 21: YAP - 認識雅虎應用程式平台

目前符合 YAP 定義的有: 1. 搜尋結果頁的 SearchMonkey 2. 手機 Yahoo! Go 上的 BluePrint

Page 22: YAP - 認識雅虎應用程式平台

•搜尋結果頁•開發者改進搜尋結果外觀•需要使用者安裝

Page 23: YAP - 認識雅虎應用程式平台

• Yahoo! Go 及 Web

•開發者撰寫手機應用程式•需要使用者安裝

Page 24: YAP - 認識雅虎應用程式平台

• 開發者:• 利用 Y!建立自己的 Business

• Yahoo:

• 不需耗費公司人力仰賴外部開發者寫出好用功能

• Partner Integration、有更多的合作機會

Page 25: YAP - 認識雅虎應用程式平台

若只開放搜尋結果頁以及 Yahoo! Go開放的程度似乎太少了

Page 26: YAP - 認識雅虎應用程式平台

Yahoo! 及開發者關心的都是:讓頁面可以放置外部開發者的程式

Page 27: YAP - 認識雅虎應用程式平台

可放置應用程式的容器叫 DropZone

Page 28: YAP - 認識雅虎應用程式平台

II. Open Social 的故事

Page 29: YAP - 認識雅虎應用程式平台

在講 YAP 及 DropZone 前,先講 Open Social 的歷史與概念

Page 30: YAP - 認識雅虎應用程式平台

名詞、混亂的根源!

• Social

• Open

• Open Social

• OpenSocial

• Y! OS

到底他們的定義是什麼!!??

Page 31: YAP - 認識雅虎應用程式平台

Case Study 1:

玩過「碎碎念」嗎

Page 32: YAP - 認識雅虎應用程式平台

Case Study 1:

玩過「碎碎念」嗎

Page 33: YAP - 認識雅虎應用程式平台

• 是個簡單到不行的網站

Page 34: YAP - 認識雅虎應用程式平台

• 是個簡單到不行的網站• 只有一個最多 140 個字的文字輸入框:

What are you doing?

Page 35: YAP - 認識雅虎應用程式平台

Updates就像 MSN 的狀態、暱稱

Page 36: YAP - 認識雅虎應用程式平台

Updates就像 MSN 的狀態、暱稱

Page 37: YAP - 認識雅虎應用程式平台

「Update」狀態

Updates就像 MSN 的狀態、暱稱

Page 38: YAP - 認識雅虎應用程式平台
Page 39: YAP - 認識雅虎應用程式平台

我 Follow 的人

Page 40: YAP - 認識雅虎應用程式平台

目前訊息

Page 41: YAP - 認識雅虎應用程式平台

“Update” 我的訊息

Page 42: YAP - 認識雅虎應用程式平台

別人給我的回覆

Page 43: YAP - 認識雅虎應用程式平台

我的歷史訊息

Page 44: YAP - 認識雅虎應用程式平台

Following : 我訂閱了那些人的訊息。

Page 45: YAP - 認識雅虎應用程式平台

Follower : 哪些人訂閱了我的訊息。

Page 46: YAP - 認識雅虎應用程式平台

簡單幾頁、串起人際網路

這就是 Social

Page 47: YAP - 認識雅虎應用程式平台

Twitter 提供的 Open API 頁

Page 48: YAP - 認識雅虎應用程式平台

TwitterFox在 Firefox 上的擴充元件

Page 49: YAP - 認識雅虎應用程式平台

twhirl跨平台的 Twitter Client

Page 50: YAP - 認識雅虎應用程式平台

Twitterific在 Mac 上的 Client 軟體

Page 51: YAP - 認識雅虎應用程式平台

twittai隨時隨地 twitter手機上的 Client

Page 52: YAP - 認識雅虎應用程式平台

因 Open API 而產生眾多的 Client 與 Marshup,這就是 Open!

Page 53: YAP - 認識雅虎應用程式平台

從 Twitter 學到什麼?

• Following 與 Follower:建立起彼此間的關係。

Page 54: YAP - 認識雅虎應用程式平台

從 Twitter 學到什麼?

• Following 與 Follower:建立起彼此間的關係。

• Updates:每個人的訊息記錄、現在的狀態。

Page 55: YAP - 認識雅虎應用程式平台

從 Twitter 學到什麼?

• Following 與 Follower:建立起彼此間的關係。

• Updates:每個人的訊息記錄、現在的狀態。

• Open API:提供程式介面給外部使用者做存取資料、開發、不斷地有好軟體出現。

Page 56: YAP - 認識雅虎應用程式平台

從 Twitter 學到什麼?

• Following 與 Follower:建立起彼此間的關係。

• Updates:每個人的訊息記錄、現在的狀態。

• Open API:提供程式介面給外部使用者做存取資料、開發、不斷地有好軟體出現。

Social Network / Connection

Page 57: YAP - 認識雅虎應用程式平台

從 Twitter 學到什麼?

• Following 與 Follower:建立起彼此間的關係。

• Updates:每個人的訊息記錄、現在的狀態。

• Open API:提供程式介面給外部使用者做存取資料、開發、不斷地有好軟體出現。

Social Network / Connection

Activity / Vitality

Page 58: YAP - 認識雅虎應用程式平台

從 Twitter 學到什麼?

• Following 與 Follower:建立起彼此間的關係。

• Updates:每個人的訊息記錄、現在的狀態。

• Open API:提供程式介面給外部使用者做存取資料、開發、不斷地有好軟體出現。

Social Network / Connection

Activity / Vitality

Open API / Web Services

Page 59: YAP - 認識雅虎應用程式平台

Twitter 與 Open Social

• 是一個 Social 網站:人與人之間的互動

• 有 Open API( Web Service)

• Open + Social != Open Social

Page 60: YAP - 認識雅虎應用程式平台

Y!OS Stacks

Open API (Web Services)

註:Yahoo! 的最大優勢即在於此,社群及內容資料 的多樣性是其他網站無法匹敵的。

Page 61: YAP - 認識雅虎應用程式平台

Y!OS Stacks

Open API (Web Services)

資料存取的能力是 Open Social 的基礎水電建設

註:Yahoo! 的最大優勢即在於此,社群及內容資料 的多樣性是其他網站無法匹敵的。

Page 62: YAP - 認識雅虎應用程式平台

Open Social 的定義是「讓外部開發者可在此社群撰寫應用程式」

目前 Twitter 還沒有這樣的功能。

Page 63: YAP - 認識雅虎應用程式平台

Case Study 2:

誰開啟了新的歷史

Page 64: YAP - 認識雅虎應用程式平台

Case Study 2:

誰開啟了新的歷史

Page 65: YAP - 認識雅虎應用程式平台

圖片來源:http://www.flickr.com/photos/kk/2327597086/

Page 66: YAP - 認識雅虎應用程式平台

• 2007/5/24:Facebook 創辦人 Mark Zuckerberg 開放了平台: F8

圖片來源:http://www.flickr.com/photos/kk/2327597086/

Page 67: YAP - 認識雅虎應用程式平台

• 開發者可以在 Facebook 建立應用程式、甚至放自己的廣告

• 經典影片:F8 Keynote

Page 68: YAP - 認識雅虎應用程式平台

facebook 的一個應用程式有多種不同的 View

Page 69: YAP - 認識雅虎應用程式平台

Feeds View

Page 70: YAP - 認識雅虎應用程式平台

Profile View

Page 71: YAP - 認識雅虎應用程式平台

Application View

Page 72: YAP - 認識雅虎應用程式平台

Canvas View

Page 73: YAP - 認識雅虎應用程式平台

Facebook 的問題

• 開發人員成本高:• FBML:FaceBook Markup Language

• FBJS:FaceBook JavaScript

• FQL:FaceBook Query Language

• 若每個要 Open 的大網站都自己有一套,開發者的苦難將永無止盡

Page 74: YAP - 認識雅虎應用程式平台
Page 75: YAP - 認識雅虎應用程式平台

Y!OS Stacks

Open API (Web Service)

Social Platform

Page 76: YAP - 認識雅虎應用程式平台

Y!OS Stacks

Open API (Web Service)

Social Platform

以 Open API 為基礎並提供社群資料的存取

Page 77: YAP - 認識雅虎應用程式平台

以標準為訴求的 OpenSocial

Page 78: YAP - 認識雅虎應用程式平台

以標準為訴求的 OpenSocial

Page 79: YAP - 認識雅虎應用程式平台
Page 80: YAP - 認識雅虎應用程式平台

iGoogle:讓開發者寫 Gadget使用者可安裝 Gadget

這跟 YAP 的概念不是很像嗎?

Page 81: YAP - 認識雅虎應用程式平台

但... Google 社群基礎較弱,若只是用 Gadget 做 Open Social 平台,價值較低、跟 F8 比起來也弱了許多。

Page 82: YAP - 認識雅虎應用程式平台

所以 Google 創了新名詞:OpenSocial(注意少了中間的空白)

Page 83: YAP - 認識雅虎應用程式平台

• 開放 Gadget 技術:Gadget Server / Gadget Container

• 另外訂立 OpenSocial API 規格及技術:OpenSocial Container JavaScript / OpenSocial Data Server

整合到 Open Source Project 中、讓每個網站在安裝後皆可顯示以 Gadget 格式所製作的應用程式。

Google 深耕自己在技術領域上的優勢:

Page 84: YAP - 認識雅虎應用程式平台

此 Project 叫 Shindig,有 JAVA 與 PHP 版

Page 85: YAP - 認識雅虎應用程式平台

Shindig = Gadget + OpenSocial

Page 87: YAP - 認識雅虎應用程式平台

OpenSocial API 規格(JavaScript / RESTful)

Page 88: YAP - 認識雅虎應用程式平台

非常多的網站參與 OpenSocial

Page 89: YAP - 認識雅虎應用程式平台

已實作的 OpenSocial Container

Page 90: YAP - 認識雅虎應用程式平台

有什麼好處?

Page 91: YAP - 認識雅虎應用程式平台

有什麼好處?

• 快速建立 Following / Follower 社群功能

Page 92: YAP - 認識雅虎應用程式平台

有什麼好處?

• 快速建立 Following / Follower 社群功能

• 由外部開發者替我的網站寫程式

Page 93: YAP - 認識雅虎應用程式平台

有什麼好處?

• 快速建立 Following / Follower 社群功能

• 由外部開發者替我的網站寫程式• 應用程式流通性高

Page 94: YAP - 認識雅虎應用程式平台

有什麼好處?

• 快速建立 Following / Follower 社群功能

• 由外部開發者替我的網站寫程式• 應用程式流通性高• 開發者負擔減輕

Page 95: YAP - 認識雅虎應用程式平台

Y!OS Stacks

Open API (Web Service)

Social Platform

Page 96: YAP - 認識雅虎應用程式平台

Y!OS Stacks

Open API (Web Service)

Social Platform

Facebook 的技術封閉OpenSocial 是開放標準

Page 97: YAP - 認識雅虎應用程式平台

III. 深入瞭解 YAP

Page 98: YAP - 認識雅虎應用程式平台

III. 深入瞭解 YAP

Page 99: YAP - 認識雅虎應用程式平台

Yahoo! 鼓勵開放,成為了 OpenSocial 的夥伴。將支援 OpenSocial API 的規格、但不採用 Gadget 的技術。http://opensocialapis.blogspot.com/2008/03/opensocial-meet-yahoo.html

Page 100: YAP - 認識雅虎應用程式平台

Gadget 一律採 External XML 的方式,而 Yahoo! 則建立了統一的 Web 開發介面:YAP Developer Studio,希望減少開發者的負擔及提昇程式的穩定度。

Page 101: YAP - 認識雅虎應用程式平台

YAP 開發環境

Page 102: YAP - 認識雅虎應用程式平台

開發工具的特點

• 不走 Gadget 規格:

• HTML/CSS/JavaScript

• YML(Yahoo! Markup Language)

• 顯示模式(Target)有兩種:

• Small Box

• Application Base

Page 103: YAP - 認識雅虎應用程式平台

YML 是 Yahoo! Markup Language。YAP 會將開發者撰寫的 YML 編譯成 HTML,也會視情況將相關的 JavaScript 函式庫引用。藉由 YML,開發者可以:

•取得 Social 資料:例如使用者的朋友列表

•快速產生豐富的互動介面:例如 UI Widgets。

•資料封裝:顯示使用者私人與即時的資料。

Page 104: YAP - 認識雅虎應用程式平台

Small Box 就像是 My Yahoo! 中的一個 Module。最小寬度為 300px、最大高度為 250px。主要目的是顯示使用者的身分、讓其他使用者有興趣點選到資訊更多的 Application Base。

Page 105: YAP - 認識雅虎應用程式平台

Application Base 的寬度為 760px、高度則無限制。開發者可在這種 View 撰寫 HTML、YML、JavaScript、CSS(會經過安全驗證),也可以在此放置廣告。

Page 106: YAP - 認識雅虎應用程式平台

開發完畢之後,可將 YAP 應用程式放到 Gallery 上供使用者挑選。

Page 107: YAP - 認識雅虎應用程式平台

使用者從 Gallery 中挑選喜歡的程式

Page 108: YAP - 認識雅虎應用程式平台

使用者也須選擇放置的區塊、與 Gadget Container 有別,叫 DropZone。也是未來 Yahoo! 要部屬在服務的開放區塊。

Page 109: YAP - 認識雅虎應用程式平台

使用者決定要將此程式放到那些 DropZone

Page 110: YAP - 認識雅虎應用程式平台

Pat Jameson 邀請朋友可共享晚餐

已知的 DropZoneYahoo! ProfilePat Jameson 的部落格

Pat Jameson 的留言板

Page 111: YAP - 認識雅虎應用程式平台

已知的 DropZone:Yahoo! Mail

利用 Mail/Contact API 做 Local 的建議

Page 112: YAP - 認識雅虎應用程式平台

已知的 DropZone:Yahoo! Frontdoor

我的好友們推薦的餐廳

Page 113: YAP - 認識雅虎應用程式平台

未知的 DropZone:Partner 的網站

Page 114: YAP - 認識雅虎應用程式平台

未知的 DropZone:與你的服務整合

結合 Y!Sports 與某家售票系統

Page 115: YAP - 認識雅虎應用程式平台

Y!OS Stacks

Open API (Web Service)

Social Platform

Page 116: YAP - 認識雅虎應用程式平台

Y!OS Stacks

Open API (Web Service)

Social Platform

Application Platform

開發環境部屬區塊

Page 117: YAP - 認識雅虎應用程式平台

Updates 平台:使用者在某服務的任何活動,

可透過此平台分享給他的朋友知道。

Page 118: YAP - 認識雅虎應用程式平台

裝好即時通 9.0 Beta 點選我的 Icon 就會看到此視窗

你明明就不是我 Twitter 的聯絡人,為什麼可以看到我的 Twitter 內容?

Page 119: YAP - 認識雅虎應用程式平台

http://manage.community.yahoo.com/vitality/

原來是我在 MyBlogLog 有設定 Twitter Feed,而且這邊又設了分享,才會顯示在 Y!M 上

Page 120: YAP - 認識雅虎應用程式平台

Y!OS Stacks

Open API (Web Service)

Social Platform

Application Platform

Page 121: YAP - 認識雅虎應用程式平台

Y!OS Stacks

Open API (Web Service)

Social Platform

Application Platform

YDN

開發者統一入口Yahoo! Developer Network

Page 122: YAP - 認識雅虎應用程式平台

Thanks.