远程工作者和管理人员,都应该能够从开源软件的整个发展经历学习到很多经验。了解开源软件运动在过去的十几年中是如何对抗一些大型商业收费软件的。这是异地协作和交流的里程碑,而且大部分人在这方面还不是很了解。
在开源软件刚出现的时候,人们都认为这是一个不可能完成的任务。软件开发在传统观念下是这样的,旧的代码+新功能需求+不同的开发人员=一团糟。那时候,开发软件本身就已经足够复杂。而且大型商业软件公司内部,需要管理来自全球各个国家上千名员工,这里面光时差就会带来很大问题。
然而我们现在来看,从Linux操作系统,MySQL数据库,PHP语言,Ruby on Rails框架,一些开源软件已经给了类似Microsoft,Oracle等大型公司直接的回应。
这些经典的开源软件案例,高复杂度,并且拥有广泛的应用人群。如果人们已经证明通过远程的方式,能够开发出一流的操作系统,数据库,编程语言,Web框架,你是不是也应该好好关注下背后具体是如何操作的呢?
以Ruby on Rails,由37Signals开发的Web框架举例。我们从开始开发到现在已经超过10年了。至今,我们仍然在不断增加新的功能,同时保持代码质量。来自全球10多个国家,100多个城市的3000多名开发人员参与过RoR项目,并贡献了代码。并且,他们中的大部分彼此从来都没有见过面。
事实上,远程开发非常高效。我们指的不仅仅是流程运转良好,而是整体结果超乎我们的想象。其中的经验,大部分在之前的章节中我们已经提到。这里再简单总结下:
- 兴趣:大部分参与开源软件开发的程序员,都是有自发的驱动力。更多追求的是兴趣,而不是金钱。当然,适当的回报还是需要的。但是驱使他们参与的源动力,还是兴趣。
- 透明:大部分开源软件的沟通,都是靠邮件组服务,或者类似Github的代码托管服务维系的。只要你对项目感兴趣都可以参与,因为所有的项目信息都公开透明。
- 聚会:大部分成功的开源项目最终都会走向一个阶段,就是他们能够自发组织一些线下的交流沙龙,甚至一些大型的技术会议。这给予了项目参与者一些很好的线下交流的机会。
所以如果在尝试远程协作的过程中遇到了挫折或问题。需要想要,你是在尝试一种全新的,更加适应潮流发展的方式在工作。
版权声明:
译文版权属于作者,并受法律保护。没有作者本人的书面许可,任何人不得转载或使用整体或任何部分的内容。本翻译仅供学术交流,请勿用于商业用途。
网友评论