昨天我提議政府應該以開放源碼方式,開放安心出行的源碼。本意希望大家以正面的方法,讓政府和社會共同解決爭議。
我對昨晚政府資訊科技總監辦公室(OGCIO)透過 facebook 專頁回應筆者和業界要求時,所寫的技術知識感到震驚,同時對政府沒以正面的技術方向回應業界和社會要求感到失望。
就 OGCIO 回應的第一段,指出 Google 和 Apple 的 Exposure Notification(GAEN)的源碼並不開放。筆者認為這回應並不對應業界要求開放安心出行的源碼。一來,業界要求開放安心出行本身的源碼,並非安心出行所使用的第三方程式庫(3rd party library)。二來,開放源碼定義(The Open Source Definition)第九點寫明:授權並不能限制其他軟件(License Must Not Restrict Other Software),意思是連同開放源碼一同發佈的第三方軟件時,不能限制第三方軟件的授權方式。
所以從技術來說,假如日後安心出行開放源碼版使用 GAEN 的 API Calls 時,明顯不需要開放安心出行所呼叫的外部 API 背後第三方程式庫的源始碼。
OGCIO 回應的第二段,指出安心出行使用某大學夥伴研發團隊提供的軟件,亦是 OGCIO 認為不能開源的理由。一來,筆者上述說法亦可套用在這點,就算安心出行必需把大學提供的軟件源碼結合,都只會透過 Function calls 來做,可以無需公開大學提供的軟件源碼。只需在說明文件列明程式需要購買某大學提供的軟件,該大學團隊名稱和聯絡方法。這更可以幫助該團隊宣傳他們的研發產品,增加應用和獲得資金機會,可見開放源碼亦可帶動非開放源碼的創科發展。
至於開放源碼與資訊保安之間的討論,已是一個很古舊的討論。國際業界早在十幾年前已認同開放源碼與否跟資安無關,而且開放源碼與其no vendor lock-in更能幫助產品擁有人(product owners)和用家更快修補臭蟲(bugfixes)。
在 OGCIO 回應前,筆者亦留意到香港01的報導,訪問承接安心出行開發的創奇思(Cherrypicks)創辦人趙先生。當時趙先生透露他知道局方將在短期內提出新建議,並表示由局方宣布新建議更為合適,而未提及更多新建議詳情。筆者不知道 OGCIO 回應前,有否詢問作為業界一份子創奇思的技術意見呢?
筆者呼籲政府機構正確了解開放源碼,並繼續以開放源碼協助社會正面發展。亦希望政府機構繼續並加強宣傳(promote)開放源碼。
筆者提議政府再向業界了解,重新考慮以開放源碼方式,開放安心出行的源碼,希望各方早日以正面的方法共同解決爭議。