邁向永續的臺灣桌面應用自由軟體在地發展

 ─ 談跨專案的 L10N 專案、L10N 社群經理 (Community Manager)、和專職貢獻者

(長文慎入)

因為自由軟體的共創共享,不分你我是何人精神而喜歡上自由軟體,因此個人滿在乎桌面應用自由軟體的在地發展的,尤其是 Linux 桌面領域的永續發展。想讓 Linux 桌面有朝一日能飛入尋常百姓家。

然而 Linux 桌面領域的基本中文資訊處理,不管是介面翻譯也好、字型顯示也好、文字輸入也好,總是處在堪用邊緣。每當有不錯的進展後卻又乏人問津,導致實際成品上的支援衰落。

翻譯

以個人翻譯經驗為例,可能軟體前一版有時間大幅度完成翻譯,但之後貢獻時間不足或關注項目轉移後就又開始缺失了,目前最為明顯的例子是 LibreOffice。雖然以往 UI 部分我都能衝上 100%,但如今開始職業生涯後,往往回家不是要準備報告,就是一陣疲累,全無動力、心力再去處理翻譯。只要任何的自由軟體專案越來越成熟專業複雜,每次發表新版都會有大量字串,業餘的有經驗貢獻者已越來越難在有限時間下趕得上進度,更何況同時維護多項專案翻譯?

找不到人維護的專案,或許就只能默默等候有心人的出現了吧!志願者貢獻或許多少會有,但如今各大軟體專案這樣成熟的情況下,即使是使用人數最多的 Ubuntu 來看,本次新版 Yakkety 也多只能見到老面孔的貢獻。現實是 Ubuntu 中文翻譯團隊首頁的加入要求,也只是請有心協助翻譯的朋友「在申請成員資格前,請先寄信到郵遞論壇告知願意遵守目前的翻譯規範」,但卻常常只見到加入要求都沒看的熱心朋友路過,手癢按一下申請鈕而已。

字型

字型顯示方面自從 Adobe 和 Google 合作推出的思源黑體/Noto Sans CJK 推出後,廣被各 Linux 散佈版使用,目前 Fedora、Ubuntu、Chakra 等預設的無襯線體中文對應都已經是思源黑體/Noto Sans CJK。

雖然 Sans-serif 無襯線體已有良好的開放字型對應,但 Serif 襯線體、Monospace 等寬字還沒有。目前即使沒有如思源黑體這樣全尊重各地規範寫法的 Pan-CJK 字型,仍還有開放的中文襯線體如 AR PL UMing/全字庫宋體、等寬字體如思源黑體 HW/文泉驛等寬微米黑/文泉驛等寬正黑可用,一樣可以透過設定檔去套用(註:思源黑體 HW 新推出不久,目前還沒有看到等寬字的套用,依然多透過直接拿中文字型去綁 Monospace 的做法,但這樣無法得到中文字為西文字兩倍寬度的等寬字型效果)。

目前中文字型設定會遇到的最大問題,大概發生在 Fedora 上,因為 Fedora 的 i18n 開發者認為「中文字型不區分有無襯線」,所以將中文的 Serif、Monospace 都對應到 Sans-serif 去,更有畸形的「每個中文字型都附帶 fontconfig 檔宣稱自己是的 Sans-serif、Serif、Monospace 候選第一位」,所以你只要從官方軟體庫裝多個中文字型絕對保證中文字型的顯示混亂,不一定看得到目前擬定的預設中文字型思源黑體… 個人反應後因為無法提出深據説服性的證據,也無多少人懂這塊領域沒獲得多少人支持,因此改善未果。

輸入法

以輸入法應用而言,各大 Linux 散佈版本的預設中文輸入法從 XCIN 後,歷經 IIIMF、SCIM、IBus 等的更迭,也不斷地歷經堪用、好用、堪用的變動。即使是 2016 年的今天,ibus-chewing 仍存在許多輸入問題,即使 Facebook 上的留言欄位打字都十分艱苦。少部分 Linux 散佈版還繼續預設採用 SCIM,例如 Debian 和 OpenMandriva,但輸入表現卻比 ibus-chewing 穩定許多。至於 Fedora 則從 ibus-chewing 轉換到 ibus-libzhuyin 了。

而來自臺灣的 gcin 和中國的 fcitx 也一同發展。gcin 雖仍有許多愛好者,但使用分佈多僅限於臺灣本地,還有並非預設輸入法更使得採用者越來越少;加上缺少軟體打包者,甚至 fedora 上已無法透過官方軟體庫取得 gcin。

至於 fcitx 目前已取得不少 Linux 散佈版預設採用,例如目前最多使用者的 Ubuntu、和開發者 csslayer 本身採用的 Chakra 等都預設使用 fcitx。fcitx-chewing 主要由 csslayer 開發,雖不及 Windows 平臺上的新酷音或 PIME 好用,但輸入文字上幾乎不會遇到問題。

但這裡我還只是提到新注音類輸入法而已,更別提倉頡、行列、無蝦米的使用者了,我認為長期忽略的情況下,很可能不是「開機即用」或「點個滑鼠幾下就行」的方便程度。

談永續發展與得到的回饋

為何如此多年來桌面應用端的中文環境上仍會持續遇到這些問題?等這批時常貢獻者倦了、累了、或忙了而離去之時,後續要怎樣長期維持住基本程度的中文支援呢?

當然,志願貢獻,投入時間長短都看緣分,後繼無人有的是。因此常聽人說「反正自由軟體本來就是這樣,你又不能要求什麼」,但我認為是整體生態不夠成熟,一個「無法永續經營的在地自由軟體發展」才是這樣。當一個自由軟體專案夠成熟,廣受使用,就會有力量驅動它永續發展,去守護最低限度專案運作的人力、物力,以免未來無以為繼。例如有 Blender 基金會在維護 Blender 的發展、GNOME 有 GNOME 基金會、還有 The Document Foundation 在維護 LibreOffice 等。

而就在地化 L10N 這件事情上來看,是沒有區分自由軟體專案的。即使某個自由軟體專案乏人問津消逝了,若有新的、同地位的自由軟體專案誕生,我們都依然需要在地化以確保它可以符合在地使用需求。我認為這可以將這整體視為一個「追求永續發展的臺灣桌面應用跨自由軟體專案」,我將之名為「l10n-tw」,粗略發想的專案宗旨為「幫助讓任何自由暨開源軟體專案對臺灣使用者來說更加好用、友善」 ,以及 l10n-tw 宣言。但畢竟根本還沒成型,所以也還沒和大家討論這樣的宗旨是否合適,或許等到同意、理解這個理念的人到達一個程度再說也不遲。

所以我在 github 上開立了 l10n-tw 的 team 和 repo ( https://github.com/l10n-tw ),目的就是要以專案的模式去實現這樣的想法。

為了方便即時對話溝通,也在 Telegram 上設立了對應的 l10n-tw ( https://telegram.me/l10n_tw ) 群組、和 Linux 桌面應用中文事業 (https://telegram.me/linux_desktop_tw) 群組。

郵遞論壇方面,可能繼續沿用既有的 chinese-l10n@googlegroups.com 來溝通。IRC 則是 #l10n-tw channel on freenode。

「能不能想個辦法讓臺灣桌面應用自由軟體的在地化可以永續發展下去?」這是我從畢業後這幾年來一直在思索的、試著解決的問題。因此曾經反復讀了《社群藝術》兩遍,就是為了瞭解國外的經驗、一位前 Ubuntu Community Manager ─ Jono Bacon 帶領 Ubuntu 專案社群的經驗。

他的經驗概略可以簡單整理成:找出專案明確宗旨、設立實作目標、降低參與門檻、定期檢討貢獻流程、吸引貢獻。

我覺得當時最需要的就是降低參與門檻,於是和朋友一起構思了 L10N 支援站,想要做成靜態網站放上所有已經參與各大桌面應用自由軟體專案的相關 L10N 參與知識、貢獻流程,甚至是維護一份術語「參考對照表」,讓翻譯者斟酌時都有個依據,期待最終能讓任何人只要會查表、看得懂句義,就能把句子翻得差不多。然而因個人入伍服役、加上退伍後馬上投入工作,時間因素使這些構思都還沒一撇,弄不出個樣子來。chinese-l10n 上的朋友們如果看到這裡,還請見諒,我空口說白話了好多年…

除了這個支援站外,我也陸續寫了一些發展目標,但可惜的是當前只有我本人在意我所列出的目標。畢竟在臺灣,熱門的自由軟體應用都是可以商業化的東西,看看今年 COSCUP 的議程對此已無著墨太多,反應出當今重視「自由軟體桌面應用」這塊領域的人大概已少數。除了得不到共鳴外,當然也不乏提出疑問的,例如「L10N 不包括軟體的中文支援吧?那應該是 I18N」、「寫這麼多目標讓看得人壓力這麼大,看到有這麼多東西等待發展怎麼會有意願參與」、「所謂他人的實務經驗代表的是別人會成功你不見得會成功啊」等。至於跑去 ubuntu-tw 談了一下我改善整體臺灣 l10n 環境的想法後,得到「有必要弄個 l10n-tw 嗎?這些事情不就是 tryneeds 在做的?」、「為什麼要把 ubuntu-tw 拉到你構想的 l10n-tw 下?這樣可能打散原有社群結構吧,我覺得應該要凝聚社群本身的參與而不是打散社群開來。」等等回應,無疾而終。

最後,因為確實只有我個人對這件事特別執著,開始想如果我未來真的沒時間弄自由軟體貢獻,那這些目前的貢獻成果如何接手?如果無法競爭到貢獻者的時間,不如想想在現有環境下要怎樣爭取到既有貢獻者參與的時間?除了學生這類相對不需要擔心生活資金的貢獻者外,若想獲得其他業餘貢獻者投入,或許長期的基金贊助、或額外的貢獻賞金會是個辦法。
畢竟臺灣的工作環境不是很友善,工時長、假日少,下班後其實不見得有心力、有興趣再做貢獻(如本人的案例);正是因為競爭不到在乎這些層面的貢獻者之時間,所以才會想怎樣去爭取其他貢獻者的時間,或是利用僱用的方式去請有經驗的貢獻者持續貢獻而不用擔心沒錢生活。

其實自由軟體只是種軟體的開發模式、授權方法,自由軟體並不反商,而是很需要商業支持。太多認為「自由軟體就該免費」或「反正就是可以免費使用的軟體,別跟我提什麼這是自由軟體的不是免費軟體的,那不是我的重點」等錯誤觀念與想法,反而遏阻了自由軟體的發展,也讓不少自由軟體專案募不到可以繼續發展下去的資金。如果有周邊商品、或相關贊助方案能讓使用者、支持者知道,自由軟體的開發其實是有成本的,而成本需要大家的支持。我認為這會是一件好事,能讓臺灣的自由軟體推廣往正常的方向發展,而不是到處流傳的「自由軟體可以降低成本,但卻是沒有支持的測試版」這種錯誤見解。

於是我把資金想法去和我認為可能有辦法的朋友分享,最後得到一些像是「這些想法都很好,只是沒有人去做」、「我總是呼籲大家不要只是想想,盡量動手做。也可以說是千里之行始於足下」這類的回饋。畢竟「誰在乎,誰痛苦」,而目前這檔事似乎就只有本人在乎,要麼就是完全算了乾脆用 MacBook 作桌面花錢讓商業公司幫我煩惱在地化問題,一如 Dolphin 貢獻者的離去 (http://ppenz.blogspot.tw/2012/06/dolphin-21.html);要麼就是業餘狀況下,繼續花時間花心力,從我能做的一步一步做做看,即使我所能貢獻的時間有限、我所擁有的能力與資源很少。

所以我自行開設了 l10n-tw 組織 BountySource 計劃 ( https://www.bountysource.com/teams/l10n-tw ),徵集賞金,期許哪天可以透過賞金的方式解決多項亟需解決的中文問題。我自身每個月會投入 10USD 在這個計劃上。此外,也和軟體自由協會談能不能協助社群募款供社群使用,例如 fedora-tw ( http://fedora.linux.org.tw/donate/ ) 的部分,就是我以 fedora 大使的身份去談的,這一年多來在各場合上推廣這個贊助管道,至此 fedora-tw 約募集了六千元,已有二千拿去壓製 f24 的推廣用 Live 光碟;另外 l10n-tw、libreoffice-tw 的部分各集到了二千元。 

最後,不管我兩年 PGY 訓練完成後的未來到底還有沒有時間繼續貢獻自由軟體,都來談一談我對這塊領域永續發展的根本想法吧!一切隨緣了。而寫下這篇,只是當純紀錄本人這段歷程與想法,供有興趣的人看看,或許甚至笑笑我的虛妄吧!我只是懷抱著希望不管你的身份背景為何,任何人都能自由應用開箱即用的 Linux 桌面系統的一廂情願。到時如果真不行的話,還請有為、有熱誠、對此有興趣的後進,能協助這個理想走下去。
 

期願中的永續運作模式

一個跨自由軟體專案的 L10N 專案、L10N 社群經理 (Community Manager)、和專職貢獻者,這三者我認為缺一不可。

有了跨各桌面應用自由軟體的 L10N 專案,就可以集中資源去處理各 L10N 領域,包括共享的參與流程記錄、共同的討論平臺、共通的術語參考表等,有興趣的人也只要到一個站臺學習相關背景知識、一個討論平臺就能和所有相同領域的 L10N 貢獻者討論。剩下那些不能通行四方、專案自身獨有獨享的貢獻項目,就回到專案自身的溝通管道與既有園地去,例如專案內的工作協調、參與流程討論、相關活動舉辦等。

既然跨多個自由軟體專案,就會有許多協調或收入專案中為其籌劃的事情要做,總需要有個人出面,而這個人約莫是 L10N 社群經理的角色。他去找尋熱門的、有潛力的自由軟體專案,和專案既有的貢獻者分享目前有的共享資源,或是和 l10n-tw 下的貢獻者推薦有個自由軟體專案不錯可以關注。他去找手邊可用的資源,去協助各個自由軟體專案的在地發展;他去找可能的人,談談能不能幫忙填各種陷落的坑。他定期去和貢獻者一同探討各種貢獻上的瓶頸,去改善各項參與環境。他協助舉辦活動、不時分享社群訊息提高大眾關注。諸如此類的事情。(註:有興趣請參考《社群藝術》,原著為 Art of Community, by Jono Bacon)

在當今的工作環境下,要爭取到業餘貢獻者的貢獻時間甚是困難,尤其 L10N 領域更是一項耗費時間、精力的長期工作。常見的自由軟體專案「投入時間」惡性循環就是:作者用閒暇時間開發,以自由軟體授權發佈 => 但只用閒暇時間開發,因此程式的臭蟲問題無法迅速處理,而且自由軟體的特性讓作者幾乎無法獲得額外收入 => 一些使用者因為程式問題久久未修而失去興趣甚至口出惡言,也因為忿恨心起當然無意樂捐給作者 => 作者只能用正職養活自己再說,有閑暇時間再把自由軟體開發當副業;或是累了倦了就此離去。這就是為何許多專業的自由軟體專案,都需要有公司、有基金會、不斷籌募資金,才能守護住最低發展人力物力,並且長遠發展下去的主因。

而隨著各桌面自由軟體專案規模越來越大、越來越複雜,單打獨鬥的業餘貢獻越來越難以支應現在的發展,大家有各自的工作、家庭、生活,能勉強維持住現況已經是最好的,只差不要一直走下坡而已,我是這麼認為的。如果說想要用一句話來表達當下的臺灣桌面應用自由軟體在地發展,我所體會到的感覺類似「困獸猶鬥」。或許能夠有專職的、有經驗的貢獻者協助,去補目前社群的不足會是最好的。

以上個人淺見,酌供各位參考與思考。最後,期許臺灣能有個永續的臺灣桌面應用自由軟體在地發展。

閱讀更多

0. 自由軟體:不只是軟體,更是一群人
1. 完善的 Linux 桌面電腦應該如此
2. Linux 桌面推行的基本條件
3. 臺灣自由軟體社群在地發展 - 困境與提案
4. 桌面應用自由軟體在地貢獻提升專案
5. 世上沒有免費的軟體,自由軟體亦如是(上)
6. 世上沒有免費的軟體,自由軟體亦如是(中)
7. 世上沒有免費的軟體,自由軟體亦如是(下)
8. 觀 COSCUP 2016 有感
9. 寫在 COSCUP 2015 之後
10. 一年
11. 社群的二三事
12. 真心徵求《中日韓越資訊處理》絕版書

留言

這個網誌中的熱門文章

直行橫列,以及 line (列/行), column (欄), row (列)

正體中文、繁體中文?

Permission 權能/取用權; Permission denied 取用遭拒; Ask for permission 請求權能/取用權; Don't have the right permission to 沒有權能/無權