Firefox 附加元件:JS 注音輸入法

這兩個星期的下班時間,除了玩星海爭霸以外,另外的娛樂就是把之前獨立成 library 的 JS 注音包成 Firefox 附加元件。

Firefox 使用者:安裝 JS 注音輸入法

安裝之後啟動的快速鍵是 Ctrl+Alt+1(Mac 為 Command+Option+1),想要幫忙開發的話原始碼在 Github。很久沒有碰 Firefox add-on 才發現現在的 tool 好進步呀,Add-on SDK(原本叫 Jetpack)把常用的都包成可以任意取用的 CommonJS module,再也不用什麼東西都跑去 XPCOM/XUL 裡面挖。

不過也是因為 SDK 的版本在 Firefox 附加元件網站上架有點問題,這之後再解決。另外就是因為要對輸入框發出 keyboard event,我還是寫了需要 chrome 權限的 module。這部份抄了一些同事在 Virtual Keyboard API 的 code。也發現了一些自己在 JS 注音設計的 IME Engine API 不合理之處,「有空」的話要一併檢討,回去改善 Gaia 的 Keyboard App。

另外可以開發的是可用在 Chrome 的輸入法:Chrome 早就有為了套件設計的 chrome.input.ime API 了。希望在我「有空」之前這個就被別人做完。That’s the power of open source。

(用自己寫的輸入法打字感覺滿奇怪的 ^^:)

 

Re: 如果想要免費實習,就去參加 Open Source 活動吧

揭露:Gasolin 是我同部門的同事,我們在同一個 Project

Gasolin 發表了一篇「如果想免費實習,就去參與 Open Source 活動吧」的文章,結果在某第三地意外引發了檢視邏輯的討論。從文章的起頭,我想這篇文章的發想,是從目前的就業環境來為畢業生就業的 bootstrap 問題提出一個答案。我自己的經驗就不用再度長篇大論了:我在第一份工作前所累積的實力都是在學校工讀的專案與 Open Source 社群專案中累積的,在這之中累積的溝通、合作、工程、規畫實力我還真的想不到哪裡能有同樣強度的機會。

至於這適不適合所有人呢?我也不敢說,至少不敢說的跟 BobChao 或是 Gasolin 那樣肯定。就如人與所有團體的關係一樣,所謂正確的位置或是發揮的空間都是要自己爭取的,也沒有某個型態的組織模式可以跟你保證你一定找的到自己的位置與空間。

談到組織模式,就不免又要提一些 Open Source 專案與活動治理。某個場合才跟另一個強哥 Legist 聊到一個與我原本信念相反的現象:大部分的 Open Source 軟體專案的治理,最終不是落入慈愛的獨裁者(benevolent dictator)的 BDOL 決策模式(例如 Linus Torvalds 之於 Linux Kernel),不然就是由某公司直接掌握方向(例如 Canonical 之於 Ubuntu)。社群最後也常常演化出慈愛的獨裁者。當然人們都會說 Open Source Licensing 直接從法律的層次保障了你「不爽就 fork,開新專案」的權力,但實質上這個權力在大型專案能有效實行的機會渺茫,就跟台灣的公民投票法一樣 XD

岔開了,內文與標題不符 … 總之我想說的是,如果這是 Open Source 活動組織與治理不可避免的走向,在其中的我們要如何確定我們給畢業生的 offering 一定是比起「企業免費實習」還要好的機會(例如,如果參與 Ubuntu 的開發很明確的只是為了某天要拿到 Canonical 的工作,那跟免費實習有什麼不一樣)?前述的確定,能否從組織結構與治理上保障?如果找的到這兩個問題的答案,大家就可以毫不猶豫的認證蓋章 Gasolin 的文章,我們對就業市場的衝擊也是對台灣社會很大的貢獻。

PS. 澄清一下,Canonical 公司與 Ubuntu 專案不必然是前述的樣子,請大家把這兩個字換成 X 公司與 x 專案 … 如有冒犯敬請見諒,畢竟我不能用另一組公司和專案的組合 😛