
cjin 因為寫了一篇關於 ptt 的文章與情緒話留言, 所以 ptt 的管理者 in2 也跑來留了言..
之後 cjin 也做了一篇新的回應..
既然有這個機會, 我覺得不如順便以工程師的角度來再解釋一下 cjin 的想法, 也不知道從 in2 或其他 ptt 的站務人員的角度來看, 這些事情是否可行..
請先參閱一下 cjin 的文章吧..
先聲明, 我對 PTT 是否要商業化或能否商業化完全沒看法 (因為 cjin 本來是從 ptt 商業化開始說)..
而我也想要先說的是 ptt 其實已經很開放了 (open source, web 網頁版本, rss, ...),
但, ptt 能否再開放一些, 讓自己能跟現在的網路接軌, 換句話說, 也就是提供 API 與其他的網路服務連接, 進一步讓台灣的網路資訊可以更流通, 是我比較關心也想要呼籲的..
最初與最原始的想法, 就是我們希望能夠有 mashup ptt 的機會, 如:
(1)在我的 blog 上放上幾個 ptt 討論區的最新文章
(2)透過 twitter 公佈我的新貼文章
(3)透過 msn 送水球給好友
(4)將文章推至推推王或 hemidemi
(5)根據某版的資訊做出除了時間排序以外的其他 index, 如依最多人討論的字詞排列, 最多人看的外部連結, 最多貢獻者, ...
... etc.
我相信大家一定還有很多其他的 mashup 想法..
但因為 ptt 的 terminal 環境, 要做上面事情雖不能說不可能, 但難度實在是相當高, 而且不一定是站方接受的方式(機器人)..
若 ptt 也希望能夠讓自己的資訊更流通, 或是鄉民能夠有能力再利用鄉民們的資料打造更具鄉民特色的服務, ptt 推出官方的 api 與 mashup 接口應該是 ptt 的另一個里程碑..
以下是從程式角度來看 cjin 的提議:
1. 保存所有資料
我不知道 ptt 是否自己有在做這樣的事情, 或是有任何第三方在做, 不過現在的儲存成本低, 應該可以透過公開的網站再開放這些資料讓有需要的人查詢與回顧..
另外有人提到 Yousee 的問題, 我覺得根本上的問題應該是因為 bbs 系統並沒有實作好的權限控管, 所以才會有 "以為很難找就不會被看到" 的解決法..
而轉到 web 端, 或許權限控管反而會更容易就可以實作出來, 而能夠真正保護到使用者的隱私權..
但無論有沒有像 Yousee 般做搜尋服務, 我還是很希望在 blog 或其他網頁上放的 ptt 文章連結, 可以能盡量保存下去..
2. ptt 站上文章透過 web 或其他公開介面 (RSS, XMPP 等) 輸出
ptt 現在已經有提供網頁版的 web bbs 服務與 rss 輸出, 所以基本上從文章輸出來看是很開放且容易取得的..
但, 這服務的品質實在是很不穩定呀..
像現在的 web bbs 上一切正常, rss 的功能卻已經都沒有資料, 而某些版則沒有辦法進去 web bbs..
rss 無法再繼續服務, 我想也許問題是因為 rss 的流量負擔太大, 而這方面的話我覺得可以學習 twitter api 的做法, 提供 xmpp 的方式直接 push 資料給想要收集的人..
而現在的 rss 並沒有保證推文會被更新 (因為是 cache 過的資料), 所以也建議能夠單出一個推文的 rss, 或是以上面 xmpp 的方式來發送推文給想要收集的人..
至於某些版沒辦法從 web 進去, 我就不太知道是權限還是怎樣的原因..
3. 為每個文章訂一個 web reference URI (link)
雖然有上面提到的 web bbs, 但是對每個 telnet bbs 板上的文章, 我們沒有辦法直覺或是透過怎樣的轉換對應到實際的 web bbs link..
如現在我看 telnet bbs 八卦版的 43587 篇文章, 並沒有辦法知道怎麼能對應到 http://www.ptt.cc/bbs/Gossiping/M.1195370658.A.531.html 這個 web bbs 文章..
若 ptt 能提供一個統一的方法來對應 telnet 與 web bbs 的文章, 那:
(1) 推推王或是 hemidemi 等書籤服務就可以特別做一個給 ptt 的接口, 或是透過改造 telnet client (如與 PCMan 合作), 直接在書籤服務上面或是 telnet client 上推某篇 bbs 上的文章..
(2) 下面講的要做出正確 referral 就是可能的了..
3. 正確的 referral
如果能夠為每個 web bbs 的 post 訂上 url, telnet client 應該就有機會在每次開啟 ptt 的外部連結時, 順便送出 web bbs 的 url 當作 referral..
若是 PCMan 等 telnet client 願意加入這個功能, 被討論的網頁就可以知道自己的流量是從哪個地方來的..
4. 提供與使用者相關的資訊與貼文, 水球, 訊息等服務
ptt 現在有文章輸出, 但對以使用者為主的資訊提供, 則是都沒有..
而沒有了與使用者相關的資訊, 輸出的文章資料就變成僅是純文字的敘述, 沒有一個信任的環境供 reference..
另外, 現在 ptt 對外部的網站服務, 也是站在輸出的腳色, 而沒有辦法讓資料輸入 ptt..
我很建議可以參考 twitter api 的方式, 供其他外部的服務連結, 包含:
(1) 使用者的最新貼文
(2) 使用者的名片檔
(3) 使用者的信件
(3) 透過 api 貼文
(4) 透過 api 丟水球
(5) 透過 api 發送私人信件
而這個 api 需要對權限做控管, 所以還需要有一套標準的對外認證機制 (SSO)..
其實使用者相關的資料輸出入, 我覺得才是大家最關心的資料, 也會是最常被 mashup 的資訊..
若能提供上面這些 api, 我相信就可以滿足之前提到的大部分 use cases 了..
5. 如 gtalk 般提供 xmpp 的連結
可以設定一個 ptt 的專屬 jabber server, 讓 ptt 上的使用者也可以透過 gtalk 等介面交流, 我想也可以增加大家很多的互動機會..
上面是我的看法, 但因為我對 ptt 的軟硬體架構並不了解, 所以或許有錯, 歡迎大家指正..
不過就自己的感覺, 應該都是可行的, 也很希望 ptt 能夠往這個方向走..
若是 ptt 站務人員並沒有太多時間處理這個 api, 那我覺得也可以 found 一個 open source 的計畫, 讓有興趣的志願者參加, 而我也很有興趣能參加這項計畫..
最後, 當然是希望 ptt 的站務人員能夠考慮一下 api 的可行性, 謝謝~~
tags: topics:[bbs ptt]
Nov 18 2007, 05:48:06 PM CST Permalink 迴響 [2]



