rss|編程|互連網
2001年有關於肯德基的炸薯條斷頓的事件報道。從中可以看到一種更高效的管理體系:對於快餐店這樣全球性企業來說:要保證各地提供的薯條品質基本一致,成本最低的方法肯定是依靠機器而不是廚師,如果薯條機處理的馬鈴薯形狀不一,機器的複雜程度和維護成本都會很高。所以馬鈴薯必須嚴格符合工業標準才能讓結構比較簡單的薯條機生產出符合標準的薯條。RSS和肯德基的馬鈴薯標準是一樣的,體現了社會分工的細化:簡單/可靠的規格意味更低高效的分工和更豐富的應用。
什麼是RSS: Real Simple Syndication最能體現RSS的本意
對於應用服務的開發人員來說:應用和應用之間,企業和企業之間交換的資料好比就是馬鈴薯,白菜,按照嚴格的XML標準設計的介面的確能大大簡化下遊開發的後期加工機器成本:可以比較一下處理HTML網頁的瀏覽器,比如:IE和FireFox等軟體安裝後大小都在10M以上,但一般處理XML的解析器工具包一般都在幾百K就夠了。這點在未來2,3年,隨著移動終端的發展,像手機這樣的硬體設定比較低的裝置環境中顯得尤其重要。
套用生產/代理/零售模式:而將這各個環節高效聯絡起來的:正是RSS/XML相關標準。
生產商:RSS生產者包括Blog / 新聞網站等;
代理商:RSS彙總服務: FeedBurner/ RSS搜尋服務 TechnoRati
零售商:RSS閱讀器(RSS Reader/Browser)
從中也可以看到一些MVC(The Model-View-Controller)模式的影子。
下面一些例子:看看RSS如何讓互連網變得更加豐富
RSS的可程式化性:以線上書籤服務del.icio.us為例
從自身介面上看,del.icio.us是非常簡樸的:
點擊查看詳細圖片
但del.icio.us為其他應用準備了各種RSS介面:
最簡單的RSS應用:del.icio.us提供的RSS首先可以被其他網站進行遠程同步:比如我將我的書籤當成一個LinkBlog: 和我自己的常看的幾個BLOG彙總一起,同步在我的個人門戶上:一頁天下曉。
更有其他人利用del.icio.us開放的RSS介面發展了更豐富的應用,比如:extispicious則可以根據你收藏的書籤的分類tag的個數展現你的“腦圖”;
點擊查看詳細圖片
HubLog: Graph del.icio.us related tags更是將del.icio.us所有使用者收藏用的tag進行了匯總分類,可以看到不同使用者收藏的Tag之間的“立體”聯絡:
點擊查看詳細圖片
從這些應用中可以看到:如果基於傳統的HTML,同樣的功能實現將變得非常複雜和不穩定,資料的再生產和交換成本是很高的。所以:RSS這個標準最終要的貢獻就是使得互連網的大部分網站變得可程式化:類似的例子還有Blog中的:TrackBack Ping等機制,這些機制都是依賴XML/RPC實現的。當初為Lucene設計一個RSS/XML的介面也是為了這個初衷,它使得全文檢索索引服務可以輕鬆的嵌入到各種應用中,通過關鍵詞將各種內容之間實現更豐富的關聯(Well Referenced)。
其他的一些RSS擴充服務介紹:
RSS閱讀:線上服務 Vs. 用戶端
用戶端的確是可以方便一些將RSS做為日常工作高端使用者:
點擊查看詳細圖片
很多工具(RadioUserLand NewzCrawler)可以設定BLOG發布系統的帳號:MT Blogger在閱讀過程中邊看邊發布評論,非常適合網路“蜜蜂”使用。
但是和EMail一樣:習慣基於WEB介面的Email還是要佔大多數,所以線上服務還是會勝出的。而RSS閱讀功能最後會被大多數EMail用戶端所整合,比如目前的ThunderBird。
點擊查看詳細圖片
RSS作為XML彙總再發布工具:RSS代理商
如果你同時用del.icio.us的Link Blog,還喜歡用FlickR的photo blog,同時寫自己的MovableType/WordPress網誌和Blogger.com的服務,如何方便使用者通過一個RSS訂閱你所有的資訊源呢?FeedBurner的功能原不止:它可以在RSS中組合多種資料來源。
原先需要進行多次訂閱的資料來源:現在用http://feeds.feedburner.com/blog2這一個URL即可,並且還添加了XSLT,可以比較高版本的IE瀏覽器中直接看到可讀性較好的內容:
點擊查看詳細圖片
Feedburner還提供一些商業性內容的嵌入,比如:Amazon的廣告推廣和最近推出的Google AdSense支援等。
很多RSS上面都有Add My Yahoo! / Subscribe with BlogLines這樣的串連:
都是由原來的分布式的使用者間RSS訂閱變成了一些半中心化的服務:中心化的服務的好處在於代理分工,可以節省BLOG發行者的RSS頻寬,由於很多RSS軟體每隔一定時間就來伺服器上,這樣對於一些受到頻寬節流設定的虛擬機器主機使用者來說,經常就會出現頻寬不夠的情況,轉向到中心的大的代理服務商,的確是一個解決辦法。而中心的代理商由於為很多RSS訂戶服務,因此可以充分利用本地的緩衝提高派送效率:同時也減少了對RSS資料來源的訪問壓力。因此:對於RSS中心服務商來說:主要要解決就是一個緩衝機制問題:
USER1 \ / RSS1
USER2 -[Rss Cache] - RSS2
USER3 /
雖然有一些中心化的風險:但是就像大家已經很少自己做饅頭一樣,更多豐富的功能添加還是應該由專業代理服務商進行的。
其他一些特色服務,RSS的死鏈檢查和容錯性設計:
如果RSS資料來源出現錯誤,BlogLines會進行一些提示。RSS瀏覽器如果真的非常依賴嚴格的XML解析器,我想最終勝出的仍然會是RSS容錯性最好的工具和提供校正服務的平台。現在不規範的RSS真是太多了,RSS的URI設計也需要注意盡量避免使用動態網頁:這樣在OPML匯出中可以避免很多&沒有轉移導致的XML解析錯誤。
基於點擊統計的使用者行為分析:
Attention.XML這個標準專門基於使用者點擊的統計輸出:類似與Windows案頭上的動態開始菜單。可以根據使用者的點擊行為(時間,URL,內容統計)反饋給內容的發行者。
RSS之間的SNS分析:
RSS的出現也降低了搜尋引擎抓取的難度:TechnoRati是一個BLOG搜尋引擎(後台也是Lucene),資料來源是通過使用者提交BLOG實現的:還會提示在TechnoRati會員之間的相互參考關聯性
RSS的自動分類:
RSS是草根新聞,為了提高很多使用者約定俗成都用一些組合詞表達一些特殊的主題,形式很像Wiki用的CamelWord:10PlacesInMyCity 10BooksIRead Yahoo360Share。非常的SearchFriendly 可以將RSS背後的個人和他們之間的參考關聯性可以交織出一個更複雜的人際關係網路視圖,這之間的連結關係和信用機制和搜尋引擎對網頁Ranking機制是非常近似的。
RSS做為線上書籤:
如果你收藏了上百個RSS後,RSS的書籤管理就是很大的問題了,OPML就是相應的XML標準格式,一般RSS閱讀工具都支援OPML的RSS書籤匯入和匯出。我自己的OPML:http://www.chedong.com/cache/opml.xml。
小結:
我覺得RSS是目前線上新聞媒體的進化:內容的生產者(blogger)和內容的分發者(feedburner/bloglines)和內容的接收者(rss reader/瀏覽器)都因為RSS這個標準而有了更多的選擇和展現方式。和以往的新聞模式不同,基於RSS的新聞傳播:資料來源更廣泛(BLOGGER),使用者的可選擇餘地更多(代理商),使用者的可定製化程度更高(瀏覽器) ,而不一定都要去忍受目前很多新聞網站過大的首頁:Amazon的Lite版就是很好的例子。
內容的供應商會更加專心於內容的開發,有了簡單的API後,很多網站可以將原來介面比較複雜的網站都可以做得更LITE點,成為更好的分銷商。不過RSS也使得網站內容的複製/鏡像變得非常容易,這對於搜尋引擎來說可不是什麼好訊息。