@pockry
2017-11-20T17:16:11.000000Z
字数 1886
阅读 1483
开源
11月18日,由开源社主办的中国开源年会COSCon17在上海召开。前Apache基金会副总裁Niclas Hedhman在大会上分享了《Apache软件基金会的故事》以及《The Evolution of Homo Nerdis-软件宅神进化史》,在会上,InfoQ记者对他进行了采访。
InfoQ:请介绍一下您自己,在Apache基金会的工作是什么?
Niclas:我是Niclas Hedhman,参与并贡献Apache基金会超过20年,参与了6到7个项目并是活跃贡献者。目前是Apache基金会董事会成员。
InfoQ:为什么有这么多开源项目想要加入Apache基金会?
Niclas:我并不能知道他们心里是怎么想的,只能进行一番猜测。运行并维护一个开源社区是很困难的,不是所有技术人都擅长这个,而这恰恰是Apache的长处,我们会对我们的项目成员进行培训和教育,教他们怎么去建立和维护社区,怎么进行开源项目的协作,正因为我们在这方面有良好的口碑,所以开源项目作者会愿意找我们。
InfoQ:Apache基金会欢迎什么样的开源项目?
Niclas:所有的开源项目(笑),严格来说的话,需要他们使用Apache开源协议,并且愿意遵守Apache基金会的规则。
InfoQ:开源项目加入基金会的一般流程是怎样的?
Niclas:这个问题要展开来讲需要很长时间,我做过无数次40分钟左右的演讲,就是专门告诉别人怎么加入Apache的。简短来说的话,就是有Apache内部人员推荐背书,经审核加入Apache孵化器,然后Apache会帮助它建立社区,一般经过3个月到两年的时间考察社区的运转状况,如果良好的话就能从孵化器毕业成为正式项目。
InfoQ:是否所有从Apache孵化器毕业的项目都会成为顶级项目TLP?
Niclas:大部分是,少部分会由于一些原因未能走到最后,比如JStorm合并回了Storm项目成为它的Java版本。这种情况我们也是允许的。
InfoQ:在您上午的演讲提到,中国参与Apache的基金会和其它国家不一样?
Niclas:这个不一样并不是行为不当,我更愿意称为文化差异。中国参与Apache项目大多来自同一个公司,因此关于项目发展的讨论和决定很多时候在内部进行,但开源协作不是这么做的,因此我们教育他们通过公开的邮件列表来进行项目的讨论,以便所有人都能看到进展。
InfoQ:您如何看待中国某些公司的『KPI开源项目』的现象?
Niclas:我不太了解这种现象的背景,所以可能不能回答得很准确。在西方,公司之所以会有动机去为开源项目做贡献或者捐献,是因为这么做能够体现公司的技术实力,开发者们也更喜欢去这样的公司。另外,部分开发者希望通过开源项目体现自己的实力,以在招聘市场获得更好的议价,这也是无可厚非的。
InfoQ:Github的开源项目很多,但并没有很好的维护,您怎么看这种现象?
Niclas:Github的开源项目已经超过100万了,但是很多都是个人项目,它们的生命周期就是开发者对项目的兴趣支持期间,一旦开发者不感兴趣了,项目就死了,所以这些项目大家都不敢用。
正是因为这样的情况,Apache才有存在的价值,Apache帮助开源项目去共同参与协作、运营社区,不是个人项目,因此Apache的开源项目通常都会一直存活,即使不活跃了,也会保存项目的历史。
Github在流程方面做的很好,甚至比Apache还好,所以Apache集成了Github的流程。
InfoQ:您在2016中国开源年会-COSCon'16发表了一个题目为“房间里的大象”的演讲(InfoQ最近曾刊登),今年在COSCon'17的讲题是 [新人类-软件宅神进化史],二次演讲都对软件开发人员的素质日趋低下,而且对软件人员的未来忧心忡忡,能否进一步阐述?
Niclas:我认为工业界的整个发展都是不对的,在过去我们一天就能写出来的项目,现在同样的人需要两周才能完成。这个原因是有太多的框架、依赖库等等了,这些东西你不了解就不可能用的很好,以及去解决bug,所以需要长时间学习这些东西以让他们工作在一起。完成同样工作的时间变长了,这显然是不对的。
就这个问题,我认为的解决方案就是Smaller、Smarter和Smoldering,Smaller指的是尽量减少依赖,Smarter的意思是程序员应该不能太依赖框架和库来开发应用,能解决编程中的困难之处,Smoldering就是程序员不应夸大其词,要切实的解决实际问题。(此处更多解释可看PPT)