千里之行,始于足下 ( The journey of a thousand miles begins with one step ) —— 老子
参与开源工作有很多好处,可以帮助你优化和加速技术生涯,包括但不仅限于提高现实中的技术经验和拓展你的专业人脉。有很多你能做贡献的开源项目,无论是小型、中型、大型,还是不知名或知名的项目。在这篇文章里我们将专注于如何为网上最大、最有名的开源项目之一 ,Mozilla ,做出贡献。
为什么要向 Mozilla 做贡献?
现实经验
Mozilla 是网络上最大的开源项目之一,其也托管了许多其他的开源项目。所以,当你为像 Mozilla 这样的大型开源项目做贡献时,你能真正接触到技术领域中的事物是如何工作的,能增长关于技术术语和复杂系统功能的知识。最重要的是,你能理解如何将代码从本地系统移动到实际的代码仓库里。你将会学习在管理大型项目时,贡献者们使用的许多工具和技术,如 Github 、Docker、Bugzilla 等。
社区联系
社区是任何开源项目的核心。向 Mozilla 做贡献将你与 Mozilla 的员工和顾问、资深 Mozilla 贡献者(又称 Mozillians)以及你当地的 Mozilla 社区相互联系在一起。社区里有着同样关注并致力于改善开源项目的志趣相投的人们。
你也能有个机会来建立在 Mozilla 社区里的专属身份,激励其他 Mozillians 同伴。如果你想的话,最后你也能指导其他人。
活动和酷物件
没有点充满乐趣的活动和小礼品的社区是不完整的。Mozilla 也不例外。
向 Mozilla 做贡献能给你机会参加 Mozilla 的内部活动。一旦你成为熟练的 Mozilla 贡献者,你将能主持你当地的 Mozilla 活动(Mozilla 或许会予以资金支持)。当然,会另外提供些小礼品 —— 贴纸,T恤,马克杯等。
根据 CC BY-SA 4.0 协议分享,印度 2016 Mozilla 聚会, Moin Shaikh 提供。
如何向 Mozilla 做贡献
不管您是编程人员、网页设计师、品质控制测试者、翻译,或者是介于之间的任何职业,都有许多不同的方式向 Mozilla 做贡献。让我们看看以下两个主要方面:技术贡献和非技术贡献。
根据 CC BY-SA 3.0 协议分享, Mozilla.org 供图。
技术贡献
技术贡献是给那些喜欢编程,想要用他们的代码来弄出点动静的人。有不同的用特定编程语言的项目可供施展能力。
- 如果喜欢 C++ ,你能向火狐的核心层和其他 Mozilla 产品做贡献。
- 如果喜欢 JavaScript、HTML 和 CSS ,你能向火狐的前端做贡献。
- 如果你懂得 Java ,你能向火狐移动端、火狐安卓版和 MozStumbler (LCTT 译注:MozStumbler 是 Mozilla 开源的无线网络扫描程序)做贡献。
- 如果你懂得 Python ,你能给网络服务,包括 火狐同步 ( Firefox Sync ) 或者 火狐账户 ( Firefox Accounts ) 做贡献。
- 如果你懂得 Shell、Make、Perl 或者 Python ,你能给 Mozilla 的编译系统和发布引擎和自动化做贡献。
- 如果你懂得 C 语言,你能给 NSS、Opus 和 Daala 做贡献。
- 如果你懂得 Rust 语言,你能给 RustC、Servo(一个为并行、安全而设计的网页浏览器引擎)或者 Quantum (一个将大量 Servo 转化为 Gecko 的项目)做贡献。
- 如果你懂得 Go 语言,你能给 Heka 做贡献,这是一个数据处理工具。
要获取更多信息,可以访问 Mozilla 开发者网络 Mozilla Developer Network (MDN)的开始部分来了解不同的贡献领域。
除了语言和代码,积极测试火狐浏览器的各个部分、火狐安卓浏览器和 Mozilla 的很多网络组件,例如火狐附加组件等,这样也能贡献你的品质保证(QA)和测试能力。
非技术贡献
你也可以给 Mozilla 提供非技术贡献,专注于以下领域:品质保证(QA)测试,文档翻译,用户体验/用户界面(UX/UI)设计, Web 识别 ( web literacy ) , 开源宣讲 ( open source advocacy ) ,给 Mozilla 的火狐用户、雷鸟用户提供支持等。
品质保证(QA)测试: Mozilla 的 QA 团队遍及全世界,有着庞大且活跃的社区,他们深入参与到了火狐及 Mozilla 的其他项目中。QA 贡献者早期介入到各种产品,探索新的特性,记录漏洞,将已知漏洞分类,编写并执行测试用例,进行自动化测试,并从可用性角度提供有价值的反馈。想开始或者了解更多 Mozilla QA 社区资源,请访问 Mozilla QA 社区 网页。
用户体验设计: 如果你是个有创意的设计者或是个喜爱折腾色彩和图形的极客,Mozilla 在其社区里有很多位置提供给你,在那里你能设计好用易理解的、美妙的 Mozilla 项目。去看看 Mozilla GitHub page 上的 开放设计仓库 Open Design repository 页面。
用户支持(论坛和社交支持): 这是成千上万像你我这样的火狐、雷鸟用户访问和发帖询问关于火狐、雷鸟问题的地方。这也是他们从像我们这样的 Mozilla 贡献者获取回答的地方。这不需要编程才华,不需要设计技能,不需要测试能力,作为火狐用户支持贡献者,你只需要有点儿火狐的知识即可上手。点击 SUMO 的“参与其中”的链接来加入用户支持。从做支持开始或许是你着手开始你的 Mozilla 旅程中最简单的部分。(注:三年前,我从社区支持论坛开始我的 Mozilla 旅程)
编写知识库和帮助文章: 如果你喜欢写作和传授知识,知识库对你来说是个好地方。 Mozilla 总是在寻找能给火狐和其它产品用英文撰写、编辑、校对文章的志愿者。每周有成千上万的用户浏览这些知识库文章,通过分享你的智慧和编写帮助文章,你也能产生强大的影响力。访问 Mozilla 知识库 页面来参与其中。
本地化,又称 “L10N”: (LCTT 译注:L10N 是 localization 的缩写形式,意即在 l 和 n 之间有 10 个字母) Mozilla 的产品,例如火狐,被全世界数百万讲着不同语言的人们所使用着。人们需要这些产品以他们的语言显示。语言本地化是个非常需要志愿者的领域。需要你的翻译和本地化能力的项目包括:
- Mozilla 产品,例如火狐
- Mozilla 网页和服务
- Mozilla 市场活动
- SUMO 产品支持文档
- MDN 开发者文档
你可以访问 Mozilla 本地化页面来参与其中。
教授和 Web 识别 ( web literacy ) 能力: Mozilla 基本使命目标之一是使所有人都可访问网络。为了实现这个目标使命,Mozilla 通过提供 web 识别工具和技术来致力于教育和帮助 Web 用户。这是可以用你的教授技能来帮助他人的地方。如果你是一位喜欢分享知识、给民众展示关于互联网相关东西的热情的老师,来看一下 Mozilla 发起的 Web 教育活动。将互联网和 web 识别教给你当地社区、学校孩子、你的朋友和其他有关的人。
宣讲: 如果你对 Mozilla 的使命充满热情,你能通过倡导 Mozilla 的使命来传播使命内容。当倡导 Mozilla 的使命时,你能做出如下来贡献:
- 捍卫公共规则,为开放的互联网和用户隐私做斗争。
- 跟网站管理者在兼容性方面合作,提高网站的互操作性。
- 帮助网络作者提升在开放网络方面的文章写作。
- 成为 火狐朋友 ( Firefox Friends ) ,展示你作为 Mozilla 和火狐贡献者的自豪。
想要开始帮助宣传 Mozilla 使命,看一下 Mozilla 宣讲 页面。
如果你还有疑惑,我来帮你开始!
我知道,作为一个新来的贡献者,这篇文章或许给你太多的信息。如果你需要更深入的方向、更多的资源资料,你可以在下面的评论中问我,或者在 Twitter 里私信我,我很乐意帮助你开始向 Mozilla 做出第一次的贡献(或者更多!)
作者简介:
Moin Shaikh 是一个开源科技极客,职业是网页分析,有着 7 年多的 IT 工作经验。主要贡献领域:火狐网络 QA ,火狐技术支持,本地化和社区指导。除了开源贡献,还学习并身体力行于用户体验、物料设计和电子商务分析。
via: https://opensource.com/article/17/1/how-get-started-contributing-mozilla
作者:Moin Shaikh 译者:ypingcn 校对:jasminepeng
本文由 LCTT 原创编译,Linux中国 荣誉推出