序
开源之迷
开源是如此的迷人,以至于被现代的信息技术从业人员所拥护,甚至进入了大众的视野。它的迷人之处在哪里?我们不妨在此列举一番:
● 来自全球的开发者,仅仅通过互联网协作就可以完成操作系统、编译器等复杂而庞大的巨型软件项目;
● 很多相互竞争的商业公司,竟然在开源项目中进行合作;
● 在美国,开放源代码属于言论自由范畴,受美国宪法第一修正案保护;
● Apache软件基金会20多年了没有一间实体办公室,却创造了价值200多亿美元的项目;
● 曾经视开源为最大敌人的微软,现在却公开对开源“示爱”;
● ……
那么开源究竟是什么,能引得无数人的争相拥抱?
一千个读者心中就有一千个哈姆雷特。这里不妨以笔者在2018年由开源社主办的中国开源年会(COSCon'18)上的演讲来为大家呈现出现实中人们对开源的不同看法。当人们在谈论开源时他们认为:
开源是具体的计算机技术细节,包括算法、数据、语法等;开源是具体的开源项目,如Linux、Kubernetes、Hadoop等;开源是软件的开发方式,是软件工程的一种;开源是公共物品,任何人都可以轻易地获得、使用、修改,以及再分发;开源是经济学,是生产力,是可以有经济效益的;开源是乌托邦式的利他主义精神,更多的是讲伦理与道德;开源是与知识产权相关的内容,许可仍然受法律约束;开源是获取机会、搭便车的天然通道;开源是公共服务组织;开源是商业模式;开源是一种社会现象;开源是企业实施生态战略的手段……
可以看出,对于开源,不同的职业背景,不同的目的,不同的视角就会有不同的解读。一位企业法务,看到开源的场景是知识产权、专利、商标归属权;一位计算机技术人员,看到的是这段代码实现了何种功能,实现方法的优劣;一位IT业务架构师,可能想的是如何以最低的预算解决公司现有的问题;一位管理者,可能思考的是如何从开源共同体中学习到方法,以激励自己的员工;一位经济学家,想到的是全景式的经济模式如何在不封闭的情况下获得利益;一位市场营销人员,看到的是如此大规模的流量。
而这些也恰好构成了开源最有魅力的地方。于是,将这些有魅力的地方呈现给每一个人,就有了非凡的意义。希望本书能带给你不同的视角和体验!当然,无论如何笔者在写作时是带着自己的成见的,本书中的错误和纰漏之处,还望读者不吝指正。
本书没有采用常见的从开源的历史角度编写是基于一个简单的原则:只尝试带领读者认识当下的开源。笔者以为,如果仅仅从开源项目或历史发展角度来写,会漏掉很多重要的内容。尤其是基于时间轴来写的设想,会让读者产生一种开源是自然生长的误区,这不仅对于理解事物没有丝毫的帮助,而且会给年轻人带来很深的误解。所以,本书试图将时间暂时抛开,或者是将时间的追溯留给读者独自探索。本书不以某个独立的线索去阐述,而是综合所有线索进行横向、纵向、斜切面的编织,希望能够将开源的立体世界鲜活而生动地呈现给读者您。
本书将采用一种由向导带领读者游览开源世界的方式来介绍开源的迷人之处,而这也会是“开源之道三部曲”的整体创作方式。这种方式能够很好地体现开源文化中重要的导师制,笔者也希望这种方式能够达到由浅入深讲解开源的目的,尤其是照顾到从未接触过开源的读者。
提问:“你怎样吃掉一头大象?”
回答当然是:“一次吃一口。”