亞馬遜java面試,JavaEye站長對OpenSocial與Facebook平臺的比較

 2023-10-07 阅读 31 评论 0

摘要:2019獨角獸企業重金招聘Python工程師標準>>> 個人觀點:開放平臺=商業生態圈,參與各方要能夠實現自己的利益,實現商業價值的方式要簡單。 ? 亞馬遜java面試,以下原文摘抄: 1、從網站運營的角度來看,facebook是網站成長的翅膀

2019獨角獸企業重金招聘Python工程師標準>>> hot3.png

個人觀點:開放平臺=商業生態圈,參與各方要能夠實現自己的利益,實現商業價值的方式要簡單。

?

亞馬遜java面試,以下原文摘抄:

1、從網站運營的角度來看,facebook是網站成長的翅膀

一個網站站長運營網站最困難的問題是什么?是推廣!特別是在網站剛剛成立不久的時期,你怎么讓更多人了解你的網站使用你的網站這是一個非常困難的事情。即 便是很多已經很成功的網站,在早期的推廣過程當中也是很幸運的遇到了非常好的機遇,才得以迅速成長起來的。推廣是網站早期發展最大的瓶頸。但是由于有了 facebook,你的網站推廣就迎刃而解了。我來舉個例子:

http://friendfeed.com

friendfeed是現在國外非常火爆的一個網站,可以訂閱朋友的最新消息和動態。那么你說friendfeed當初是怎么推廣的呢?怎么才能迅速積累 這么多用戶的呢?其實很簡單,就是去注冊成為一個facebook app就行了。所需要的額外開發工作量只是簡單的登陸驗證,用以和facebook實現統一認證而已,極少的代碼量,如果在RoR里面,只是幾十行代碼的 工作量。

好了,當friendfeed把自身的網站注冊成為一個facebook app以后,在facebook里面的7000萬注冊用戶就可以在facebook里面添加這個app,成為自己在facebook里面的一個tool來 使用了。也就是說作為一個用戶,你既可以在facebook里面使用friendfeed,你也可以直接訪問friendfeed網站。例如我就是通過 facebook才知道friendfeed,進而在facebook里面添加了friendfeed的賬戶,現在我往往直接訪問friendfeed, 而不見得每次都通過facebook訪問friendfeed。

我們想想看,如果friendfeed不借助facebook平臺的威力,他自己一個用戶一個用戶的去推廣,他需要花多少推廣的費用,需要發展多少年的時 間?而通過facebook平臺的威力,你就可以迅速成長為一個大網站。friendfeed具體的用戶數字我不知道,facebook平臺上面的 Friend for Sale這個app的數字是三個月時間從零增長到每天1000萬PV,60萬注冊用戶,而僅僅是兩個人在業余時間開發出來的網站。作為一個對 比,JavaEye網站用了5年時間發展了15萬注冊用戶,每天80萬PV。這就是自己積累用戶,和借助平臺發展網站的巨大差別。

有了facebook,你做網站根本就不需要操心網站推廣的問題,你只需要下功夫把網站功能做好就行了,插上了這樣的翅膀你還擔心網站發展不起來嗎?

2、從商業回報角度看,facebook讓你創業贏利變得很容易

前面提到了Friend For Sale這個app,兩個人業余開發的,但是為了支撐每天1000萬PV的訪問量,他們買了12臺服務器,請了DBA顧問,租用了一個機柜和100MB獨 享帶寬,然后他們兩個人辭職自己成立了公司。這些錢都從哪里來?很簡單,就是廣告費!他們在friends for sals里面嵌入了banner廣告,訪問量越大,點擊量越大,賺錢越多。1000萬PV是什么概念?在中國的網站里面差不多可以排進前50名的網站。

facebook開放平臺以后,到現在一年多涌現了24000個app,這就相當于有24000個網站把他們的訪問入口點注冊到了facebook這里, 從facebook這里分享網站流量、用戶和廣告,也就是說facebook現在養活了24000個網站,這24000個網站要依靠facebook來混 口飯吃。這一成就是Google,Microsoft到現在都沒有做到的,Google賺錢也只是自己一個公司賺到了錢,而facebook賺錢,則是讓 一整個網站產業鏈都賺到了錢。這就是為什么有那么多網站要到facebook去注冊app,為什么有那么多公司要專門給facebook開放app的根本 原因。在這一點上面,只有阿里巴巴有點像,他也是和很多很多網商的切身利益捆綁在了一起,我覺得這種制造一個產業鏈的網站才是真的很難被擊敗的,因為你要 擊敗的不是一個網站,而是千萬萬萬個利益綁定在一起的網站。

我們試想一下,如果全球有幾十萬個網站都注冊了facebook app,從facebook那里分享流量、用戶和廣告的話,這個互聯網究竟是誰說了算? 當然誰是衣食父母誰說了算。即便facebook崛起之前,Google也沒有統治互聯網,網站并不受Google的直接威脅,但是facebook對網 站的控制力要超過Google,這一點很好理解:用戶通過Google搜索快速進入網站就脫離了Google的控制范圍,但是通過facebook訪問 app,則一直在facebook的控制之下。

從今年年初開始,我就一直在說,現在最好的互聯網創業就是開發facebook app,特別是開發一些web game類型的app,很容易就積累大批用戶了,你有一個好的創意和好的開發執行力,已經可以成功了,大伙看看現在facebook上面火爆的火炬接力這 個app就可以明白。

我為什么唱衰OpenSocial?

有人說我只研究了一個晚上的OpenSocial,沒資格否定OpenSocial,說我根本不了解OpenSocial可以跨域進行AJAX調用,胡亂下結論。

1、從技術角度來說,OpenSocial限制的太死

其實我不需要學習OpenSocial一個月才能下結論,我只需要確定一點,即OpenSocial本質上是在用戶的瀏覽器端通過JavaScript來 運行,這就足夠了。那些做過復雜企業應用,特別是用EXT/dojo做過One Page One Application應用的人,應該比我更清楚用純AJAX做網站,和傳統的服務器端web方式究竟有什么不同吧。

理論上來說,AJAX調用可以完成大多數網站服務器端同樣的功能,如果開發商自己架設服務器,在widget的JS里面調用自己服務器暴露出來的服務的話,也可以做很多事情。但問題是成本不一樣,用戶體驗不一樣。

打個比方來說吧:eBay網站扔掉全部的JSP頁面和Web框架,全部都改成靜態頁面,只在服務器端通過DWR提供AJAX調用接口,然后靜態頁面里面的 JS在瀏覽器端執行,通過DWR調用服務器端的服務,全部頁面渲染都在瀏覽器端完成。最后做成一個One Page One Applicaion的網站。

你說從程序角度有沒有實現的可能性呢?答案當然是可以,但問題是eBay不會這樣去做,任何一個成功的互聯網網站都不會這樣去做,因為這樣做其開發成本太高,其用戶體驗太差,只有一些操作非常復雜的企業應用才會采用這種OPOA方式。

OpenSocial 要做復雜的交互性應用,他也只能通過這種One Page Oone Application方式,這種方式是非常受限的。如果說Facebook給了開發人員無限的可能性,僅僅要求你實現登陸驗證的話,那么 OpenSocial則個開發人員施加了強大的限制,逼你只能在JavaScript里面翻筋斗,練梅花樁,其結果就是很多創造性的應用無法實現或者很難 實現。事實上我現在看到的稍微復雜的高交互式OpenSocial應用示例都是用flash做出來的。你都被逼得用flash的時候,那就已經是另外一回 事了,和OpenSocial沒啥球關系了。你不用你OpenSocial,我一個flash也可以隨便哪個網站去部署沒一點問題。就是JavaEye的 發貼也可以嵌入flash,是不是也可以算一個OpenSocial容器阿?

2、從網站運營角度來說,OpenSocial不能給開發商帶來推廣效應

還是拿friendfeed舉例,我們設想一下,friendfeed怎么去使用OpenSocial才能帶來同樣的好處呢,答案是impossible!

friendfeed 必須按照OpenSocial的規范去寫這樣一個XML文件,把這個XML文件發布到某個OpenSocial容器網站,例如MySpace上面去。好 了,現在問題來了,MySpace的用戶能不能僅僅通過MySpace頁面嵌入的這個friendfeed的widget來使用friendfeed網站 的全部功能呢?答案當然是不可能,除非Friendfeed的開發人員在這個xml里面用JavaScript來重寫一遍整個friendfeed網站的 功能,嘿嘿,用一句通俗的話來說就是: 你必須把一頭大象給我裝進冰箱里面去。

3、從商業利益角度來說,OpenSocial無法保護開發商的利益,代碼剽竊沒有任何障礙

OpenSocial開發出來的gadget是在XML里面寫JS和HTML,而這個XML還是一個在互聯網上面可以訪問到的URL,不需要任何授權就可 以訪問,這等于是代碼完全暴露在光天化日之下。我們可以假設一下,某個公司投入研發力量開發出來的一個優秀的gadget很受歡迎,在很多 OpenSocial容器網站都有很多人使用,那么一個很可能出現的后果就是別人可以把你的源代碼直接拿過來,稍微改改,也發布為一個gadget去賺 錢,而你沒有任何辦法去阻止他。

有人會說,我的gadget會通過AJAX調用我自己服務器的資源,你抄走了gadget,抄不走我服務器提供的Web服務,那我就要說了,如果你的 gadget真的有商業價值,別人直接拿走你的gadget代碼,然后自己架一個服務器,把你提供Web服務的接口也實現一遍,這并不什么困難的事情,而 我相信一個有商業價值的gadget,在gadget本身的研發投入已經非常巨大了,這些投入被別人白白的拿走,毫無障礙的利用OpenSocial網絡 到處發布,一定會對你造成巨大的商業損失。

所以一個稍微有點理智的開發商,都必須慎重考慮投入到OpenSocial是不是值得的問題。


4、從商業模式的角度來說,OpenSocial無法形成一個簡單有效的價值鏈,忽視了app開發商的利益

facebook的商業模式是簡單而清晰的,參與商業博弈的就是facebook和app網站,1:n的關系,而且是利益共同體,互相依存。但是 OpenSocial的商業模式參與博弈的關系過于復雜,是一個m:1:n的網狀關系,m彼此之間還有強烈的競爭關系,而n和m的對應關系還不是線性的, 你需要針對不同的m開發不同版本的gadget,而這個1是Google,他還分別和兩邊發生關系。我們知道商業模式越簡單越有效,這個商業模式當中環節 實在太多,而且彼此相互制約,哪一個環節出了問題,整個商業模式就走不下去。這一點在前面文章當中已經分析過了,不詳細剖析了。總之關于這個問題我只想強 調一點:

別看facebook平臺上面有那么多活躍的開發商貢獻app好像花團錦簇的樣子,你深入研究一下facebook的app就會發現,facebook上面真正火爆的app根本就不是程序愛好者寫的,全部都是專門的公司開發出來的。

你做開放平臺,永遠也不要指望軟件開發人員作為業余愛好給你開發app,指望像開源社區那樣踴躍的程序員貢獻者,這些東西根本就不靠譜。真正靠譜的就是你 的開放平臺本身是具有商業價值的,能夠給開發商帶來商業利益,那么自然就會吸引大批的公司、網站和創業者專門給你開發app。而facebook之所以能 夠有今天,也就是因為這個原因。

Facebook戰略之所以正確,是因為他從一開始就是立足于讓app開發商賺到錢,所以app開發商就會趨之若鶩、前仆后繼;而OpenSocial戰 略從一開始就是錯誤的,是因為Google搞OpenSocial的出發點不是讓app開發商賺錢,而是讓app開發商可以實現:“開發一次,處處部 署”。

OpenSocial這個出發點就錯了:只要能讓我賺到錢,別說開發一次了,讓我開發n次都愿意;但是賺不到錢的事,你就別指望我白白給你開發了,所以說 程序員開發量多大根本就不重要,重要的是你Google有沒有為app開發商設計有效的賺錢方式。而遺憾的是OpenSocial整個戰略的側重點都在拉 攏SNS網站對抗Facebook上面,根本就沒有關注app開發商的利益。所以現在的OpenSocial對于開發商來說,沒有任何商業吸引力,你光指 望在程序員社區推廣推廣,搞搞編程大賽,拉幾個程序員作為興趣愛好給你開發gadget,不如趁早洗洗睡了吧。

?

另一篇文章:

360站長平臺,一、OpenSocial只不過是一個widget,離app還差10萬8千里

OpenSocial和Facebook的f8雖然都可以稱之為平臺,但實際上的差異非常巨大。f8是真正的App platform,而OpenSocial僅僅只是一個widget容器而已。打個比方來說,Facebook平臺就好像一個功能很強勁的Java應用服 務器,你可以在上面開發各種各樣的程序,而OpenSocial平臺就好像一個簡單的個人主頁服務器,你只能在上面發布一下個人主頁而已。

Facebook自己并不托管你開發的代碼,你需要自己找服務器來運行你的應用程序,從這一點上面來說,Facebook上面的app實際上是獨立的第三 方網站,因此你可以做你想做的任何事情,你可以安裝自己的Oracle數據庫,跑自己的Tomcat應用服務器,本來就是你自己的網站,和 Facebook沒任何關系。

好了,突然有這么一天,你眼紅Facebook 7000萬注冊用戶的資源,你想把自己的網站和facebook集成起來,于是你研究了一下Facebook開放出來的REST接口,你根據他的接口,實 現了登陸驗證,然后在facebook上面注冊了你的網站入口頁面,好了,一切搞定!等著Facebook給你帶流量和用戶吧。我不是開玩 笑,Friends for Sale這個網站通過和Facebook的整合,在三個月時間內流量從零增加到每天1000萬訪問量,注冊用戶增加60萬。

那么OpenSocial是怎么回事呢? OpenSocial僅僅是一個xml文件而已!這個xml你既可以上傳到提供OpenSocial容器的SNS網站上面,你也可以放在自己的網站上面。 當然你也需要到這個SNS網站上面去注冊一下xml文件的URL地址。于是這個SNS網站就會在顯示指定的頁面的時候,讀取這個xml文件進行解析執行, 把結果嵌入進來。如果你還沒有明白這是怎么回事的話,你可以跟著我的步驟往下走:

1、復制我寫的xml文件的URL地址:http://ftp.javaeye.com/download/my-helloworld.xml

2、打開iGoogle主頁(我假定你在Google注冊過賬戶,并且此時已經登陸):http://www.google.com/ig?hl=zh-CN,點擊導航條最右邊的鏈接“添加內容”

3、在添加內容頁面的左下角有一個類似RSS訂閱的鏈接,叫做“添加供稿源或小工具”,點擊它

4、在彈出的框里面把前面的xml文件的URL地址粘貼進去,確認,然后關閉這個對話框,最后返回iGoogle主頁。

現在你看到了什么? 是不是一個頁面框里面顯示“Hello,JavaEye!”,恭喜你!你已經開發了第一個OpenSocial應用了。

當然OpenSocial的這個xml沒有那么簡單,你可以在這個xml里面寫html,javascript,引用圖片,JavaScript 庫,CSS樣式文件,甚至可以引用flash,你當然也可以通過OpenSocial提供的JS庫通過AJAX調用來訪問SNS網站給你暴露出來的 API,但是它終究只是一個xml文件,終究只能訪問SNS網站的資源,而不是一個獨立的網站:他本質上是JavaScript,他本質上是在用戶的瀏覽 器端執行的(服務器端有一個簡單的xml解析操作,但沒有業務邏輯),因此沒有任何服務器端運算能力,也沒有能力充分利用服務器資源進行復雜的操作。

說到這里你應該明白了吧,facebook的app是在app作者自己的服務器上面運行的,而OpenSocial的widget是在瀏覽者的瀏覽器里面 運行的,facebook就好像用Java來做一個全功能的web應用,而OpenSocial則好像用html/javascript寫一個純靜態 web應用。

因此OpenSocial根本就沒有辦法做復雜的應用,他頂多只算是一個可以嵌入頁面的widget,可以搞點花哨的頁面效果,可以用AJAX方式抓點數 據來顯示,或者增加點錦上添花的AJAX搜索什么的小功能,但你想用OpenSocial來做類似Friends for Sale那樣復雜度的應用的話,沒門!除非你有用JavaScript開發星際爭霸的高超JS編程水準,否則只能干瞪眼。


二、OpenSocial僅僅只是一個接口規范,提供OpenSocial的SNS網站不知道在什么地方飄呀飄

OpenSocial讓我無可避免的聯想起來臭名昭著的JCP以及Java EE專家委員會。JCP是一個很有意思的組織,專門負責制訂標準,然后讓廠商們根據標準來寫自己的實現。就拿應用服務器來說 吧:Glassfish,Tomcat,Resin,Jetty,WebLogic,WebSphere一大串號稱符合某些標準的應用服務器實現,但是你 絕對無法把一個war隨意部署,這是因為:

1、應用服務器廠商總會因為自己的某些需要提供一些標準之外的東西,或者有些標準就是總支持不好,比如說WebSphere
2、有些應用服務器廠商沒有能力提供全部標準的實現,只能打個折扣,比如說Tomcat就不支持EJB
3、Java EE標準也是有版本區別滴!不同的應用服務器分別支持的標準版本也各自不同。

所以Java EE標準當初也想的很好,讓大家開發Java項目,一次開發,處處部署嘛,應該沒麻煩的,但是做Java企業應用的人都知道,遷移應用服務器絕對是一個體 力活。遺憾的是所有這些曾經在Java EE領域出現的問題,現在在OpenSocial這里照樣的重復著歷史:

1、大的SNS會不會出于自己的商業利益,往里面添加私貨,就像WebSphere那樣,這幾乎是必然的。

2、iGoogle雖然號稱支持OpenSocial v0.7,但是很多地方的功能已經打了折扣,我們可以聯想一下,國內的小SNS們,都有能力實現全部的功能嗎?

3、目前號稱支持OpenSocial的這些網站列表,支持的標準是各自不同的,有支持v0.5的,有支持v0.6的,也有支持v0.7的。你當網站是搞 企業開發阿,你Google升級一個版本,我們一定能很快的升級代碼,支持上去嗎?萬一我平臺上面好多老版本的widget已經在跑了,我一升級不兼容咋 辦?


三、這也是最關鍵的問題:OpenSocial能給SNS網站帶來什么好處?能給開發者帶來什么好處?

facebook的f8推出一年多來,已經涌現了24000多個第三方app,為什么這么多公司和開發者這樣踴躍開發app,踴躍的把自己的網站和 facebook集成? 無它,唯鈔票爾!我集成了facebook可以給我帶來流量,我在app里面可以加廣告,流量大廣告點擊多,鈔票嘩嘩的來,誰不干勁十足阿。

那么開發者開發OpenSocial的widget有什么好處?現在Google只是告訴你,你開發一次,可以處處部署!但是我上面已經告訴過你了,這句 話是狗屁!就好像Java一次編譯,處處部署那樣扯淡。而且更扯的是,就算我處處部署,我真能賺錢嗎? 基本沒戲!因為widget太簡單,難以開發高交互性的應用,因此無法粘住用戶和病毒式推廣用戶,而且widget本身往往是頁面的一個小小的frame 框,你還能有啥地方加廣告?

開發facebook的app也不見得只能通過廣告賺錢,通過facebook給自己網站帶來大量的注冊用戶,基于這些注冊用戶本身就可以挖掘商業模式 了。但是OpenSocial widget是靜態頁面阿,你自己沒有服務器沒有后臺程序,widget只能給OpenSocial提供者帶流量,無法給你帶來注冊用戶阿!

所以開發者你從頭到尾就是白忙活一場,撈不著一點鈔票,當然也許SNS網站看在你貢獻了這么多OpenSocial widget的面子上,給你點啥紀念品也說不定。

然后我們反過來說提供OpenSocial的SNS網站能得到啥好處呢?答案是nothing but cost!你開發OpenSocial的容器要投入大量開發力量吧? Google升級版本了,你要跟著改代碼吧? 弄了一個平臺出來,不像網頁,人家要寫程序攻擊是不是太容易了點?安全性要考慮吧?你的OpenSocial平臺推出以后,怎么也得推廣一下吧?所以這鈔 票就嘩嘩的出去了。但問題是我們前面說過了OpenSocial根本不能給開發者帶來利益,因此無法像facebook平臺那樣涌現那么多app出來,那 么零星三五個,甚至要SNS網站自己開發widget,這種模式你能運營的起來嗎?

而且還有一個特別容易被忽視的關鍵問題:你的網站究竟是做什么的?你是做平臺的?還是做社區的?

facebook網站壓根就是一個做平臺的網站,他的網站架構全部都是為了app服務的,除了app它啥都沒有了,就連facebook自己網站提供的所有功能也全部是以app形式出現的。也正因為如此,facebook做平臺才能成功。

現在這些號稱支持OpenSocial的網站全部都是做社區起家的網站,社區是他們的老本行,而開放平臺對他們來說,只不過是一個錦上添花的東西,有固然好,起碼卡一個領先的身位,但是沒有對我來說也不是滅頂之災。

因此這些網站斷然不會扔掉目前網站積累的所有社區資源,孤注一擲的做平臺。也正因為沒有這樣和facebook一樣的決心,網站開發和運營的中心還是必然 圍繞社區展開,其結果就是開放平臺永遠不會成為他們網站的核心,永遠只是錦上添花的功能。因此也就注定了他們的開放平臺不會成功。

總之,OpenSocial就是一個Google的公關騙局,是Google為了抵抗facebook推出的一個防御性策略,一個從技術層面,從商業層面 完全經不起推敲的壞主意,OpenSocial目前和Facebook之間的差距完全不在一個層面上。有空的話多研究研究facebook,比浪費錢在 OpenSocial上劃得來。

轉載于:https://my.oschina.net/newidea/blog/2599

版权声明:本站所有资料均为网友推荐收集整理而来,仅供学习和研究交流使用。

原文链接:https://hbdhgg.com/5/124641.html

发表评论:

本站为非赢利网站,部分文章来源或改编自互联网及其他公众平台,主要目的在于分享信息,版权归原作者所有,内容仅供读者参考,如有侵权请联系我们删除!

Copyright © 2022 匯編語言學習筆記 Inc. 保留所有权利。

底部版权信息