跳到主要内容

为什么选择开源?

开源

开源一词最早始于互联网行业中的自由软件运动,指软件的源代码公开,是一种软件的发布方式。因为软件的源代码公开,任何人都可以阅读和检查其代码,甚至可以将其代码修改后发布成自己的软件并闭源。软件源代码公开并不完全等于免费或无需商业授权,这主要取决于源代码所有者在发布源代码时所采用的开源协议或其声明。通常有以下几种情况,简述如下:

  • 源代码所有者声明只能用于个人学习用途,商业用途需要其授权并支付费用。
  • 代码使用者可以修改代码并发布自己的软件,也可以用于商业用途,而无需支付任何费用,但该软件必须采用相同的开源协议公开其源代码。(GPL协议)
  • 代码使用者可以修改代码并发布自己的软件,也可以用于商业用途并闭源,而无需支付任何费用,但必须要对修改的地方放置声明。(Apache协议)
  • 代码使用者可以修改代码并发布自己的软件,也可以用于商业用途并闭源,而无需支付任何费用,只需载明原许可协议的声明。(MIT协议)

目前我们所访问的网站,其所使用的服务器大部分都是基于Linux内核的操作系统,因为其开源和免费(使用GPL协议),被广大企业和服务器运营商所采用。如果没有Linux,企业可能会被迫使用需要商业授权且支付高昂费用的服务器系统。Linux开源项目降低了服务器相关的部署成本,可以说当今社会基于网络发展起来的各类服务可以繁荣发展,Linux系统的开源功不可没。而各类服务的繁荣发展,也会进一步推动社会各方面的进步。

Linux系统也比Windows系统更安全,这是一个无需证据仅从逻辑上就可以推导出来的结论,Linux系统源代码公开,意味着任何人都可以阅读和检查其代码,当系统存在安全问题或bug时,任何人都可以根据其源代码检查出问题的所在并向项目方反馈、提交解决方案,当系统更新升级时,任何人都可以通过查看其源代码真实地了解系统改动的内容。相比于Windows系统,其系统源代码只有Windows相关工作人员才能查看,当系统更新时,用户只能得知更新内容的简述,但无法得知其底层源代码的修改内容或真实的改动情况。

感受

开源也并非一定就比闭源好。就我个人认为而言,对于基础设施开源比闭源更好,对于商业项目闭源比开源更好。

本人也是各类开源项目的受益者。得益于相关开源项目,我可以轻松地搭建网站服务、部署定制智能家居系统、方便地编写各类实用程序。一个好的开源项目,受益的人会越来越多,建议和反馈也会越来越多,这会促进项目的发展和改进,形成一个正向循环。同时也会推进项目关联事物的发展和进步。

开源可能在传统行业并不常见,但是在互联网行业已是广泛的存在。开源代表着开放、共享,同时也是一种协作模式。援引中国工业和信息化部 《“十四五”软件和信息技术服务业发展规划》解读 一文对开源的描述:开放、平等、协作、共享的开源模式,能够集众智、采众长,加速软件迭代升级,促进产用协同创新,推动产业生态完善,已成为全球软件技术和产业创新的主导模式。

开源的核心是什么?有人说是开放,有人说是免费。但开源最主要的核心其实是自由,同时也是开源的第一驱动力。如果你有热情、有余力,可以随时参与开源项目的建设,贡献你的力量,你可能仅希望学习和使用开源项目的内容,在遵守项目开源协议的前提下也可以,这没有特别的限制,大部分开源协议都会给予极大的自由度。

希望开源运动(精神)可以从互联网行业传递到传统行业中,擦出一些火花,改进相关工作方式、促进有关事物高速发展。