2015年2月,馬里蘭州運輸管理局(MTA)推出一個追蹤巴爾的摩巴士的基本網頁應用程式——同時告訴開發者,若要把資料開放給第三方應用程式使用,大約要花60萬美元:其已有25年歷史的 CAD/AVL 系統不會輸出交通應用程式所需的 GTFS 格式。該局自家的應用程式是一個沒有地理定位、錯綜複雜的網頁,而它背後的資料則被鎖住,無法供 Google 地圖以及該局新聞稿愛掛在嘴邊的「應用程式經濟」使用。

幾天之內,地理資料開發者兼開放資料倡議者 Chris Whong 打開該網頁應用程式的網路流量,發現它每10秒就向 MTA 伺服器輪詢 JSON——而且是以 GTFS 編碼,正是開發者被告知生產成本過高、難以產出的那種格式。經過幾小時的反覆嘗試,他確認了這個資料饋送;他與一小隊公民黑客組成團隊,打造出一套框架,讓任何應用程式都能免費取得這些資料,並以 Heroku 上的即時追蹤網站加以示範,還把所有東西都放上 GitHub。

採用速度極快。蒙特婁開發商 Transit App 利用這個資料饋送推出巴爾的摩即時追蹤,「只花了一個下午的工作——比預算少了60萬美元」,自行產生預測的巴士到站時間,並與 MTA 的追蹤器比對以驗證準確度。

該局聲稱生產成本過高、難以產出的資料饋送,其實早已在它自家的網頁應用程式裡上線,每10秒輪詢一次 JSON——只要讀取網路流量並重新發布即可。

昂貴的部分——把 CAD/AVL 的輸出格式化——早已為該局自家的網頁應用程式解決過一次,因此存在一份任何瀏覽器都能讀取的機器可讀副本。

把抓取到的資料饋送當作開源基礎設施發布,讓一名開發者的黑客手法,變成商業開發者同一週就能採用的東西。

該局的成本估算從未拿便宜的路徑來檢驗:它自己的前門。

在接受六位數的資料開放報價之前,先檢查資料是否早已流向你能觸及的系統;昂貴的部分往往早已為該局自家用途建好了。

MTA 回應 Transit App 的貼文時解釋,60萬美元這個數字反映的是在網頁介面存在之前,把其 CAD/AVL 資料轉換為即時 GTFS 的成本,並表示一套全新的即時 GTFS 系統已在進行中,還宣布工程師已花了數週尋找方法,把資料移入一個安全環境,讓第三方開發者能安全使用——並補充:「公民黑客幫我們加快了這項宣布。」Ars 指出,底層資料仍有限制:巴士透過無線電從 GPS 回報,因此在 MTA 修好資料饋送之前,位置會出現缺漏。

追溯依據

參考來源

  1. Bus pass: Civic hackers open transit data MTA said would cost too much to share Ars Technica · arstechnica.com ·