牙牙窩

          BlogJava 聯系 聚合 管理
            8 Posts :: 21 Stories :: 10 Comments :: 0 Trackbacks

          什么是 Web 2.0 ——下一代軟件的設計模式和商業模式 (全文翻譯 —5

          ?

          〖原文作者:提姆·奧萊理( Tim O'Reilly ),奧萊理媒體公司( O'Reilly Media Inc.) 主席兼 CEO

          〖翻譯: SeeSunshine

          ?

          4. 軟件發布周期的終結

          如上文在對 Google Netscape 的比較中談到的,互聯網時代軟件的代表性特征就是它應該被作為服務來交付。這種事實導致這類公司的商業模式上很多根本性的變化。

          ?

          1. 運營必須成為一種核心競爭力。 Google 或者 Yahoo! 在產品開發方面的專門技術,必須同日常運營方面的專門技術相匹配。從軟件作為制造品到軟件作為服務的變化是如此地根本,以至于軟件將不再能完成任務,除非每日加以維護。 Google 必須持續抓取互聯網并更新其索引,持續濾掉鏈接垃圾和其他影響其結果的東西,持續并且動態地響應數千萬異步的用戶查詢,并同步地將這些查詢同上下文相關的廣告相匹配。

          ?

          所以, Google 的系統管理、網絡、和負載均衡技術,可能比其搜索算法更被嚴加看管,也就不足為奇了。 Google 在自動化這些步驟上的成功是其同競爭者相比更有成本優勢的一個關鍵方面。

          ?

          同樣也不足為奇的是, Perl Python PHP 和當前的 Ruby 這樣的腳本語言在 Web 2.0 公司中扮演著重要角色 Sun 公司的第一個網管哈桑·施羅德( Hassan Schroeder )曾對 Perl 有一個著名的形容:“互聯網的管道膠帶”( the duct tape of the internet )。事實上,動態語言(常常被稱為腳本語言,并被軟件制品時代的軟件工程師所貶低),是系統和網絡管理員,以及創建可經常更新的動態系統的程序開發者們所喜愛的工具。

          ?

          2. 用戶必須被作為共同開發者來對待,這是從對開放源碼開發實踐的一種反思中得出的(即便所涉及的軟件不太可能以開放源碼授權方式來發行)。開放源碼的格言“早發布并常發布”( release early and release often )事實上已經演變成一種更為極端的定位“永遠的測試版”( the perpetual beta )。其中產品在開放狀態下開發,新的功能以每月、每周、甚至每天的速度被加入進來。 Gmail Google Maps Flickr del.icio.us ,和其他類似的服務,可能會在某個階段打著測試版的標識多年。

          ?

          故此,實時地監測用戶行為,來考察哪些新特性被使用了,以及如何被使用的,將成為另外一種必須的核心競爭力。一位工作于一個主要在線服務網絡商的開發者評論道:“我們每天在網站的某些部分提供兩到三個新的特性,而且如果用戶不采用它們,我們就將其撤掉。如果用戶喜歡它們,我們就將其推廣到整個網站。”

          ?

          Flickr 的總開發師卡爾·亨德森( Cal Henderson ),近來 透露了他們是如何在短至每半個小時就部署一個新版本的 。顯而易見,這是同傳統方式有天壤之別的開發模式。雖然不是所有的網絡程序都以像 Flickr 這樣的極端方式來開發,但幾乎所有網絡程序都有一個同任何 PC 或者客戶 - 服務器時代截然不同的開發周期。正因如此, ZDnet 雜志才 論斷 Microsoft 不會打敗 Google :“ Microsoft 的商業模式依賴于每個人在每兩到三年都升級他們的計算環境。 Google 的模式則依靠任何人每天在其計算環境中自行探索新東西。”

          ?

          ?

          雖然 Microsoft 已經體現了從競爭中學習并最終做得最好的強大能力,但是毫無疑問這一次的競爭要求 Microsoft (可以擴展到任何現存的軟件公司)來成為一種在深入層面上顯著有別的公司。天生的 Web 2.0 公司在享受自然而然的優勢,因為它們不需要去擺脫陳舊的模式(及其相應的商業模式和營收來源)。

          ?

          5. 輕量型編程模型

          ?

          一旦網絡服務的觀念深入人心,大型公司將以復雜的網絡服務堆棧來加入到紛爭之中。這種網絡服務堆棧被設計用來為分布式程序建立更可靠性的編程環境。

          ?

          但是,就像互聯網成功正是因為它推翻了許多超文本理論一樣, RSS 以完美的設計來取代簡單的實用主義,已經因其簡單性而成為大概是應用最廣泛的網絡服務,而那些復雜的企業網絡服務尚未能實現廣泛的應用。

          ?

          類似地, Amazon.com 的網絡服務有兩種形式:一種堅持 SOAP(Simple Object Access Protocol ,簡單對象訪問協議)網絡服務堆棧的形式主義;另一種則簡單地在 HTTP 協議之外提供 XML 數據,這在輕量型方式中有時被稱為 REST Representational State Transfer ,代表性狀態傳輸)。雖然商業價值更高的 B2B 連接(例如那些在 Amazon 和一些像 ToysRUs 這樣的零售伙伴之間的連接)使用 SOAP 堆棧,但是根據 Amazon 的報道, 95% 的使用來自于輕量型 REST 服務。

          ?

          同樣的對簡易性的要求,可以從其他“樸實的”網絡服務中見到。 Google 近來的 Google 地圖的推出就是一個例子。 Google 地圖的簡單 AJAX Javascript XML 的結合)接口迅速被程序高手們破譯,被隨即進一步將其數據混合到新的服務之中。

          ?

          地圖相關網絡服務已經存在了一段時間,例如像 ESRI 那樣的 GIS (地理信息系統),以及從 MapQuest Microsoft MapPoint 。但是 Google 地圖以其簡潔性而讓世界興奮起來。雖然從前銷售商所支持的網絡服務都要求各方之間的正式約定,但 Google 地圖的實現方式使數據可以被捕獲,于是程序高手們很快就發現了創造性地重用這些數據的方法。

          ?

          這里有幾條重要的經驗:

          ?

          1. 支持允許松散結合系統的輕量型的編程模型 。由企業開發的網絡服務堆棧的復雜設計是用來促成緊密結合的。雖然這在許多情況下是必須是,但是許多最重要的應用程序可以事實上保持松散結合,甚至是脆弱的結合。 Web 2.0 的理念同傳統的 IT 的理念迥然不同。

          ?

          2. 考慮聚合( syndication )而不是協調( coordination 。簡單的網絡服務,例如 RSS 和基于 REST 的網絡服務,是用來向外聚合數據,但并不控制其達到連接的另外一端時發生的事情。這種想法是互聯網本身的基礎,一種對所謂 端到端原則 的反映。

          ?

          3. 可編程性和可混合性設計 。像最初的互聯網一樣, RSS AJAX 這樣的系統,都有此共同點:重用的障礙非常低。許多有用的軟件事實上是開放源碼的,而即便它不是,也沒有許多東西來保護其知識產權。互聯網瀏覽器的“查看源文件”選項,使得許多用戶可以復制其他任何用戶的網頁; RSS 被設計得使用戶能夠在需要的時候查看所需要的內容,而不是按照信息提供者的要求;最成功的網絡服務,是那些最容易采納未被服務創建者想到的新的方向。同更普遍的“保留所有權利”( all rights reserved )相比,隨著創作共用約定而普及的“保留部分權利”( Some Rights Reserved )一詞成為一個有益的指路牌。

          ?

          ?

          裝配中的創新

          ?

          輕量型商業模型是對輕量型編程和輕量型結合的一種自然產物。 Web 2.0 的理念善于重用。一種像 housingmaps.com 這樣的新服務,是通過將兩個現存服務抓取到一起來簡單地創建起來的。 Housingmaps.com 還沒有商業模式(目前為止),但對于許多小規模的服務, Google AdSense (或 Amazon associates fees 計劃,或者兩者都是)為同類服務提供了營收模式。

          ?

          這些案例為 Web 2.0 的另外一個關鍵原則提供了啟發,我們將之稱為“裝配中的創新”。當商品組件充裕時,你可以通過以新穎的或者有效的方式來裝配這些組件來創建價值。很像 PC 革命為硬件商品裝配提供了許多創新的機會,其中像 Dell 這樣的公司創造了這種裝配的科學,并從而打敗了那些商業模式上要求產品開發方面的創新的公司,我們相信 Web 2.0 為各個公司提供了,通過在利用和整合由其他人提供的服務方面逐漸完善,來贏得競爭的機會。

          ?

          6. 軟件超越單一設備

          另外一個值得一提的 Web 2.0 特性是 Web 2.0 已經不再局限于 PC 平臺這樣一個事實。在對 Microsoft 的告別建議中,長期的 Microsoft 開發者戴夫·斯塔茲( Dave Stutz )指出:“ 超越單一設備而編寫的有用軟件 將在未來很長一段時間里獲得更高的利潤”。

          ?

          當然,任何的網絡程序都可被視為超越單一設備的軟件。畢竟,即便是最簡單的互聯網程序也涉及至少兩臺計算機:一個負責網絡服務器,而另一個負責瀏覽器。而且就如我們已經探討過的,在將網絡作為平臺的開發中,把這個概念拓展到由多臺計算機提供的服務而組成的合成應用程序中。

          ?

          但是如同 Web 2.0 的許多領域一樣,在那些領域中“ 2.0 版的事物”( 2.0-ness )并不是全新的,而是對互聯網平臺真正潛能的一種更完美的實現,軟件超越單一設備這一說法賦予我們為新平臺設計程序和服務的關鍵性的洞察力。

          ?

          迄今為止, iTunes 是這一原則的最佳范例。該程序無縫地從掌上設備延伸到巨大的互聯網后臺,其中 PC 扮演著一個本地緩存和控制站點的角色。之前已經有許多將互聯網的內容帶到便攜設備的嘗試,但是 iPod/iTunes 組合卻是這類應用中第一個從開始就被設計用于跨越多種設備的。 TiVo 則是另外一個不錯的例子。

          ?

          iTunes TiVo 也體現了 Web 2.0 的其他一些核心原則。它們本身都不是網絡程序,但都利用了互聯網平臺的力量,使網絡成為其體系中無縫連接的、幾乎不可察覺的一部分。數據管理顯然是它們所提供的價值的核心。它們也是服務,而非打包的程序(雖然對于 iTunes 來說,它可以被用作一個打包的程序來僅僅管理用戶本地的數據)。不僅如此, TiVo iTunes 都展示了一些集體智慧的方興未艾的應用。雖然對于每個情況,其實驗都是同網絡 IP 入口的周旋。 iTunes 中只有有限的參與體系,雖然近來增加的播客( podcasting )將這一規則規律性了不少。

          ?

          這正是我們希望看到偉大變革的 Web 2.0 領域中的一個,隨著越來越多的設備正連接到這個新的平臺中來。當我們的電話和汽車雖不消費數據但卻報告數據時,可能會出現什么樣的程序呢?實時的交通監測、快閃暴走族( flash mobs )、以及公民媒體,只不過是新平臺的能力的幾個早期警示。

          ?

          ?

          一篇 Web 2.0的投資論文

          ?

          風險投資家保羅·科德羅斯基( Paul Kedrosky 寫道 :“關鍵在于去尋找一種你共識相左的,具有可操作性的投資”。有趣的是,我們注意到 Web 2.0 的每個方面都涉及到同共識的分歧:每個人都在強調保持數據隱私的重要性,而 Flickr/Napster 等等,卻使其公開化。這并非只是為了分歧而分歧(比如追求寵物食在線),而是在可以從中創建出一些東西的地方發生分歧。 Flickr 締造了社區, Napster 創造了收藏的廣度。

          ?

          另外一種看待這種現象的方式,就是成功的公司都放棄了一些昂貴但被認為重要的東西,以便免費獲得一些有價值的曾經昂貴過的東西。例如,維基百科全書放棄了集中的編審控制,以作為對速度和廣度的回報。 Napster 放棄了“目錄冊”的想法(列出所有銷售商正在銷售的歌曲),并因此獲得了廣度。 Amazon 放棄了用于一個實體店面的想法,卻從而服務于整個世界。 Google 放棄了大宗用戶(開始的時候),卻得到了 80% 的,其要求從前未被滿足的用戶。下面的說法很有一些合氣道(借力打力)的精神:“你知道,你是對的——整個世界的人都絕對可以更新這篇文章。而且你猜怎么著,這對你是個壞消息”。

          ?

          ——內森·托克英頓( Nat Torkington

          posted on 2006-12-11 11:10 大牙 閱讀(170) 評論(0)  編輯  收藏 所屬分類: Web 2.0頻道

          只有注冊用戶登錄后才能發表評論。


          網站導航:
           
          主站蜘蛛池模板: 眉山市| 平利县| 旬阳县| 溧水县| 上犹县| 清水县| 临邑县| 遵义县| 承德县| 桦甸市| 睢宁县| 大竹县| 百色市| 宿松县| 栾川县| 临沂市| 广宁县| 莆田市| 原阳县| 泸溪县| 邹城市| 明溪县| 台南县| 安仁县| 玉田县| 泾源县| 玛多县| 沂南县| 班玛县| 仙游县| 平果县| 甘肃省| 江阴市| 东明县| 遂宁市| 科技| 池州市| 永德县| 元谋县| 思茅市| 西畴县|