當 80% 的人類不說英語時
雖然自由軟體的生態系統非常以英語為主,但在單一軟體中支援多種語言可以讓潛在使用者的數量倍增 5 或 10 倍。 這代表了高度的複雜性與成本,但這是一次性的,而且一旦完成後,在自動化的前提下,就能允許無限數量的語言。
非常講英語的生態系統
自由和開源軟體的世界非常多樣化,從與硬體的互動層面到我們每天在電腦和手機上使用的軟體。所有這些工具都只為其使用者而存在。有些人會對該工具感興趣並為其做出貢獻,而其他人只是想盡快實現他們的目標。
在自由軟體的世界裡,英文是預設的工作語言,書面文字是最廣泛使用的管道。 這種運作模式是事實上的標準,被所謂的自由軟體社群所接受,沒有太大的困難,自由軟體社群是一個通用名詞,包含所有對一個或多個自由軟體產品有貢獻的人。
為了自己的方便,製作軟體的人通常使用英文而非母語。 因此,他們很少瞭解翻譯中遇到的困難(句子分割成幾個片段、未命名的變數、無法翻譯的技術術術語等)。
更糟的是,這些人可能會因為無法控制實際顯示給使用者的內容而感到不舒服。
世界人口中說英語的人很少
使用者的母語很可能不是英文。 鼓勵開發人員使用他們的母語並沒有解決問題,因為這個母語很有可能不是負責工具的開發人員的母語。
無論使用何種語言,使用者都會喜歡使用自己的語言來達成目標,因為這樣可以增加使用的舒適度和效率。 如果您的英語不流利,使用自己的語言也可能是使用軟體的先決條件。
詳細來說,Unicode 聯盟,特別是 CLDR,提供了按語言和領域劃分的人口估計。 這些估計顯示有 21% 全世界的居民都說英語。 但在這裡,會說英語包含了很廣泛的情況,如果我們考慮到具有母語或流利程度的人,我們的比例就降到了 9%。
嘗試增加使用者人數的挑戰在於增加潛在的貢獻者人數,這些貢獻者將透過修正翻譯或進行完整的翻譯來踏出第一步,然後可以繼續進行或多或少的技術活動 (溝通、支援、文件、測試、編碼等)。 有可能不知道軟體的原始語言,但可以使用另一種語言作為樞軸來進行翻譯。
為了增加潛在使用者的數量,我們需要增加語言支援。 這就是我們所說的國際化。
國際化的複雜性
支援多種語言需要:
- 使用提供必要功能的工具(標記要翻譯的內容、翻譯和發佈內容)
- 更改其軟體設計流程,以整合翻譯工作(當程式碼完成時,您必須通知進行翻譯的人員,並整合他們的工作)
- 滿足翻譯業務的需求。 這意味著要研究編碼、翻譯格式、複數、適當的工具等。
除了使用者介面之外,您還需要包含命令列介面、簡報網站、通訊、線上文件、man 頁、發行說明…
國際化非常耗時,需要先進的技術能力。 不幸的是,有些軟體使用的工具並不提供任何協助,因此專家必須自求多福或更換工具。
好消息是,這項工作只需針對理論上數量不限的語言進行一次。 這是個好消息,因為目前有 7,000 到 9,000 種語言,其中將近 2,500 種語言有瀕臨滅絕的危險。 如果我們必須針對每一種語言做專門的工作,很少有開發人員願意在使用人數極少的語言上花費精力。 而在這個時代,不存在於數位工具上是很危險的。
語言夾雜的角色
在此背景下,Languages-in-floss 倡議旨在與您分享我們在法語、阿拉伯語、卡比爾語和奧克蘭語領域的經驗。
無論您是語言倡導者或開發者,您都會發現在任何與自由及開放原始碼軟體相關的活動中,多語言都是可行的。 我們會盡力讓您在這個複雜的世界中生活得更輕鬆。