编者按:本文来自@翟英昌的智慧工场投稿,详细介绍了GitHub上开源翻译《Swift语言》这个项目,发起者是一个90后的大学生,整个翻译团队在9天内完成了近670页的Swift语言文档翻译工作。


6 月 3 日凌晨 3 点,苹果公司在2014年WWDC上向程序员圈投下重磅炸弹——推出全新编程语言 Swift。整个 IT 界顿时一片沸腾。正当大家热议这门新语言的特性之时,一群中国开发者在GitHub 上通过“

《The Swift Programming Language》in Chinese”开源翻译项目,采用众包翻译的方式,整个翻译团队在9 天内完成了近 670 页的 Swift 语言文档翻译工作。



有意思的是,该项目的发起人是北航的 90 后大学生

梁杰(兼 Swift 语言开发者社区

Swiftist.org管理员),而翻译成员更是来自网上各个角落。该项目开始一周左右,在 GitHub 上获得了 1300 多个 Star和 300 多个 Fork,GitHub 周总榜最高排名第 4。



这个项目的成功,给我们带来一个新的思考话题:协同写作,或许是未来写作的趋势。我很有幸参与了这个项目的全过程,同时也因此认识了梁杰。梁杰跟我讲述了很多关于这个项目幕后故事和心得体会,下面请让我带大家简单回顾一下“《The Swift Programming Language》in Chinese 项目”发展的全过程以及这背后的一些思考。但愿这篇文章能给那些关注创新又喜欢写作的朋友们一个值得参考的案例。



几个关键时间点

  • 6月3日,凌晨3点,苹果发布Swift语言;
  • 6月3日,翻译项目启动,项目在GitHub上获得50个Star;
  • 6月4日,开始有人关注,项目在GitHub上获得300+Star;
  • 6月5日-6日, 协同机制基础建立,翻译工作开始步入正轨;
  • 6月7日-8日, 翻译缓慢加速;
  • 6月9日-11日,翻译全速进行,完成全部翻译;
  • 6月12日,完成校对全过程。《The Swift Programming Language》中文版正式发布!

发起原因

据梁杰回忆,“最初其实没想到会做成这样,只是想着既然 Swift 这么火,我也想学一学,不如顺便翻译一下,也算是为大家做点贡献。万万没想到,最后变成了一个这么大的开源协作项目。”



协作形式

整个翻译项目通过 GitHub 进行协作,使用 Markdown 进行文本编辑和排版,使用 Gitbook 制作成静态页面并托管到 GitHub上,供在线阅读。Markdown 文本也可以转换成 Epub、PDF、mobi 等多种电子书格式。



参与翻译的网友首先需要在 GitHub 项目上认领章节,认领成功后只需要不断更新 Markdown 格式的文本文件,直到翻译完成。在某章翻译完成后,再会将网友翻译完成的内容合并起来,通过Gitbook 转换成在线页面并更新到 GitHub。



项目是如何吸引到协同翻译者的?

项目发起之后,梁杰在自己的微博上做了简单推广,开始的时候并没有什么人关注。不过经过一些大号转发后,关注的人越来越多,也就开始有人参与进来。“其实能吸引到这么多人,主要还是因为苹果的影响力太大,再加上我们发起项目的时间非常早,再加上全民Swift 的力量,所以,吸引了很多人参与。”



组织开源翻译需要注意的地方?


1. 让新手也能参与。GitHub 在国内的普及程度还是不够,很多有兴趣参与的朋友都不太会用。刚开始也没有意识到这个问题,后来在朋友建议下迅速在项目首页的说明中添加了详细的贡献代码教程。实践证明很多朋友都是照着这个教程完成了工作。



2. 高效地传达信息。组织开源项目最重要的一点就是保证信息的传达,其实秘诀很简单——重复说。就拿 Swift 这本书来举例,需要一直在项目说明中更新当前进度,按理说大家点进来都会立刻看到。但是仍然有很多朋友会问现在翻译了多少、还有没有未认领章节。之后采取主动通知大家的方式,在所有能通知的地方通知,一旦有新变动就马上通知,慢慢的就没有人问了,因为大家都很清楚项目进度。



3. 重要的信息比如时间节点,一定要多次强调。刚开始的一段时间虽然章节很快被认领,但是完成的人很少。后来通过 QQ 群不断强调,周三完成翻译开始校对,一天说了有十几遍吧,然后从第二天开始完成的人就越来越多。大家参与开源项目时相对来说是比较被动的,如果你希望控制时间的话,一定要多次强调,把这个信息发送到每个人的潜意识里。



4. 最重要的,把握总体方向。很多人会参与进来,但是几乎没人会主动考虑这个项目该如何发展,一定要记住这一点。如果你觉得很多人参与进来你就可以休息的话,那就大错特错了,大家擅长帮忙,但并不擅长主导项目。所以你要时刻提醒自己,下一步的目标是什么?我们应该怎么去做?主动提出一个方案然后和大家讨论,千万不要提出一个问题然后等待答案。



最后内什么,今天早上公开发表翻译完成的消息后,该项目在 GitHub 上今天

总榜已经冲到了第1的位置,本周排行目前在第 3, 并且有向前继续的趋势。



相关链接


  • 3天200个开源项目,Swift编程语言资料大合集