Login  |  繁體中文
感謝您對「自由軟體鑄造場」的支持與愛護,十多年來「自由軟體鑄造場」受中央研究院支持,並在資訊科學研究所以及資訊科技創新研究中心執行,現已完成階段性的任務。 本網站預計持續維運至 2021年底,網站內容基本上不會再更動。
也紀念我們永遠的朋友 李士傑先生(Shih-Chieh Ilya Li)。
FOSS Forum 源料同步與分享,以及相關的三兩事

源料同步與分享,以及相關的三兩事

RSS 與 Atom 源料是網頁服務發展上的重要里程碑,讓無數的使用者體驗到網頁內容標準交換格式帶來的好處。源料的用途非常多,許多廠商在這些年來也不斷在嘗試各種拓展源料用途的商業模式:Adobe InDesign 可以把源料當成即時內容來源,整合到出版編輯的作業流程中;MindJet MindManager 可以透過源料來動態組出心智圖的局部內容,提供使用者意料之外的腦力激盪,以及更具彈性的工作與專案管理。

在網頁服務方面,Yahoo! Pipes 可以整合不同來源的源料再加工,Google AdSense 可以在源料內加入廣告,Google FeedBurner 可以增添源料的層次與功能。有間叫 NewsGator 的公司把發展主力放在源料的企業應用,先後併購 Windows 上的 FeedDemon 以及 Mac 上的 NetNewsWire,也提供了一系列不同平台上的解決方案,包括黑莓機、郵件軟體、網頁平台上的源料閱讀及管理等應用。當時 NewsGator 最大的賣點在於各平台間可以「同步」源料閱讀狀態,亦即在一台電腦上閱讀過的文章,在其他電腦(包括 Windows 與 Mac)上、在網頁平台上,也都會是已閱讀的狀態;如果使用者對文章加上了標籤或旗標,這些資訊也會到處同步。更進一步地,NewsGator 提供的解決方案還會計算使用者對不同源料的「關注程度」,並且依此為根據,讓使用者可以徵詢「自己可能會感興趣」的其他源料。

後來 Google 也把業務拓展到這個領域,推出了 Google Reader 服務,讓使用者可以從網頁上訂閱、管理源料。隨著使用者日漸增加,後來 NewsGator 決定終止原本提供的 NewsGator Online 網頁平台服務,轉與 Google Reader 合作,讓使用者可以透過 Google Reader 作為源料同步的中介。

除了 NewsGator 的 FeedDemon 與 NetNewsWire 外,Windows 平台上另外也有一套 RSS Bandit 軟體,可以與 Google Reader 同步,這意味著 Google Reader 八成有一套應用程式介面(API)來處理相關的工作。這樣的推論在 2005 年的時候已經由 Google Reader 的工程師確認,並且當時也說 Google 預計在短期內正式釋出 Google Reader API 文件;很可惜地,到了 2010 年的今日,Google 仍未釋出這份文件。目前僅有一個叫 pyrfeed 的開放源碼計畫,藉由「逆向分析」整理出一份非官方的 Google Reader API 文件,可以作為相關應用的參考。多年來,「缺乏妥善文件」仍舊是 Google 的一大缺失。

與 NewsGator Online 相較,Google Reader 提供了更便於分享的社交功能:你可以「跟隨」其他 Google Reader 使用者,隨時看到他們所推薦的文章;但是 Google Reader 也跟 Google Buzz 一樣,擅自幫使用者決定一開始就要跟隨哪些人──我(因為 NewsGator Online 終止服務)第一次使用 Google Reader 時,尚未訂閱任何源料,就出現了近百篇「未讀文章」,而且還不知道要去哪裡「取消訂閱」(正確的解法是去取消跟隨)。同樣是不尊重使用者,只因為這種「跟隨」並不會危及隱私權,也就較少有人提及這個不當的預設行為。

當年用過 NewsGator Online 作為源料同步平台的使用者,可能會發現 Google Reader 在這方面的設計略有不同。Google Reader 的作法是,每個使用者只有一個分享頻道,然後其他使用者單純只要控制自己要在 Google Reader 裡面「跟隨」哪些使用者,就可以看到由這些使用者所分享出來的文章(至於非 Google Reader 的使用者,則無法在此「跟隨」其他人)。NewsGator Online 則是讓使用者可以任意新增分享頻道,每一個分享頻道實際上都會產生一份源料,不論其他人使用什麼平台或軟體,都可以跟取用其他源料一樣,取用這些分享頻道的源料內容。

Google Reader 採取的方式簡化許多,但是也很封閉,NewsGator Online 的方法則較自由開放,但卻稍微需要一點技術門檻──至少使用者必須要知道「自己做出一份源料」是什麼意思,並且要有辦法公布這些源料網址,像是在部落格上加入超連結語法等。就「分享」的社交行為來說,Google Reader 的策略貼近目前使用者的行為模式,但是也把相關發展限制在單純的「分享」為止,難以繼續更深入地發展下去,實在有點可惜。更可惜的當然是 NewsGator 決定與 Google 合作,終止 NewsGator Online 服務,讓使用者失去了最後的選擇機會(曾經有一段時間,NewsGator 的使用者可以自由選擇要用 Google Reader 或 NewsGator Online 作為同步平台,亦即可以選擇要用上述兩種模式中的何種)。

除了「分享」的設計與實作方式有所不同外,Google Reader 一直以來也還是有些問題,包括可能會逕行刪除使用者還沒閱讀過的文章項目,以及未按照使用者指定的檢查更新頻率,導致實際的源料已更新,使用者卻無從得知等情形,這些都是 NewsGator Online 服務中所不會發生的瑕疵。Google Reader 服務如此不完美,終究還是成為相關領域中的獨大服務,透露著此刻的使用者市場就是不夠大、難以支撐良性競爭,或者暗示著多數使用者仍然崇尚特定品牌,使得原本期待擺脫權威的網際網路,日益受到威權控制。

對於任何想要開發相關軟體的人來說,這個現實不怎麼理想。可行的合作平台剩下 Google 一家,拖了很多年還沒有正式的公開技術文件,而且還會遇到許多 Google Reader 本身的瑕疵,使用者可能會怪罪到你的軟體頭上。

這也是許多軟體開發會面臨到的現實問題,無論一開始的理想如何,早晚會受到現實市場的壓力,從多頭變成寡頭,甚至從寡頭再變成一家獨大。在這樣的年代中,開發軟體專案,尤其是以社群為對象時,便不再能只著眼在功能或技術層面,還必須在宣傳、包裝、行銷上多加著墨;這不是要譁眾取寵,而是要把握短暫的曝光機會,讓使用者認識到不同選擇間的優劣異同,以及讓各種設計與創新能夠有深入發展所需的充分時間──如果夠幸運的話,就能像 Firefox 那樣把市場養大,也讓使用者能探索各自的獨特需求。

實際的情況當然沒有三言兩語這麼簡單,而且會受到種種不定因素的影響,像是群眾的情感變化,相關的產業發展,以及媒體的炒作等,沒有所謂的「必勝公式」;有時候,除了接受現實邁向下一個計畫外,實在沒有別的路好走。源料閱讀與管理的平台如此,時下討論熱烈的 HTML5 Video 亦是如此;孰存孰廢,非戰之罪。

註:pyrfeed 專案整理出來的非官方 Google Reader API 文件




OSSF Newsletter : 第 149 期 OIN 低調努力,專利交互授權保障商用自由軟體的未來發展

Category: FOSS Forum