如何正确地处理在自由软件上发现的问题
3月15日的时候,我因为发现了终端里一处自认为比较好笑的中文翻译,就写了这篇《会“吐核”的终端,才是好终端!》。当时纯属想分享给大家娱乐娱乐,却不曾顾及到翻译者的心情。
今天我想向翻译者及其他朋友道个歉,同时借此补充一些文字,关于如何更积极的去协助自由软件项目,而不是像我这次一样自娱自乐。
首先引用Aron Xu的文章《从一个翻译 bug 谈起》,他这篇文章是针对我那篇写的,写的很正确。
一个自由软件的从开发到成功发布的过程,有很大一部分是由不求任何回报的志愿者的功劳,其中翻译者就是很大的一个群体。
据国外的数据显示,Linux的几千万行代码中,有75%是由“Paid Developer”(即在公司工作领薪水的开发者)写成的。但是,我相信不会有75%的翻译者是靠翻译领薪水,他们中大多数是完全义务的。至少我知道,我开发的Ubuntu Tweak所支持的几十国语言,我没有给这些翻译者支付过一分钱。
代码和翻译同等重要,不然我们就无法使用本地化良好的自由软件。即使碰到一些由翻译不好引起的问题,也不能因此就指责或嘲笑自由软件及翻译者。
作为一个自由软件开发者,我能深刻的体会这些。因为曾经也有用户因为Ubuntu Tweak不好的地方而批评的很过头,我感觉很无奈。适当的批评是可以的,但绝不是冷嘲热讽——特别是只知道索取而不知回报的人。
关于这个问题就不多说了,我身为开发者的一员清楚这些,因此今后会更理解翻译者的工作,支持并协助他们。
那么,当发现问题后,究竟怎么做,才比较合适呢?还是从一个“中文翻译”的例子出发。
就是我在3月17日写的《支持中文的计算器,才是好计算器!》,写这篇时我还是想娱乐一把,但是幸好我打住了,娱乐之余,我立马研究了该项目的源码,并汇报了Bug、提交了自己的patch。现在这个Bug已经在Upstream(GNOME)中被修正了:https://bugzilla.gnome.org/show_bug.cgi?id=644980
所以,当你在自由软件项目中发现bug的时候,请尽量将Bug报告给Upstream,即上游项目,而不是该发行版。因为各种原因,不是所有的发行版会立即将修正后的软件回馈给上游,为了能在更广的范围应用新修正的项目,在上游项目报告问题是绝对没有错的。如果你是一个有能力的开发者,就修正该问题,并付上你的patch吧!
一般情况下,大型的自由软件都有名为“Bugzilla”的Bug报告和跟踪中心,如:
- GNOME:https://bugzilla.gnome.org
- Mozilla(Firefox):https://bugzilla.mozilla.org/
或者是像Ubuntu一样,拥有属于自己的:http://launchpad.net/ubuntu。
那么如何具体报告Bug?这里就不具体阐述,请看:如何有效地报告 Bug
如果是纯粹的翻译问题呢?
实际上也一样,自由软件项目的翻译,一般跟源码都处在同一个版本控制当中,可以直接报告成bug。如果要参与翻译、讨论如何更棒的翻译,可以考虑加入这个邮件列表:[email protected],相信在众人的讨论下,就能做出最准确、一致的翻译。
另外,做为使用最广泛的桌面——GNOME,和Linux发行版——Ubuntu。如果你愿意为中文翻译尽一份力,可以根据这两篇Guide加入翻译小组,贡献你自己的力量:
- http://live.gnome.org/TranslationProject/ContributeTranslations/zh
- http://wiki.ubuntu.org.cn/Translations
最后,希望大家一起做一些力所能及的事情,帮助完善自由软件,我为人人,人人为我!