个人使用自由开源软件的若干理由

2023-06-24
Header: use-foss

自由开源软件与其说是一种信仰,不如说是对软件使用者更友好的一种模式。之所以选择自由开源软件,主要是一般来说,自由开源软件是合理价格的最好选择,本文将详细阐述这一观点。同时也会有一些例外,本文也会加以说明。

头图来自 https://www.techadvisor.com/article/724761

题目中的“个人”,是指的 personal use,不过也可以理解为我个人的一些看法。

自由开源软件(FOSS) #

自由开源软件确实可以说是一种信仰,它描绘了作为会编程的软件使用者所希望的理想的软件世界。很多人也的确被这种理想主义的精神所感动,开始愤世嫉俗地大骂商业软件,着手把大量商业软件换为开源替代。但靠软件盈利的商业公司就不这么想了。(你甚至可以看到一些专门骂 Stallman 的网站。)

不过到一些具体的软件选择上,实用的理性必然会压倒信仰的无脑。我们如果再把众多会编程的软件使用者的选择归为信仰恐怕就不太合适了。所以与其说是信仰,不如说自由开源软件是一种与商业公司不通的模式和流派。开源软件由社区驱动,有着自己的迭代模式和管理哲学,也更贴近使用者的关切。很多商业公司是在做产品,但开源社区却是在专心做软件。

这些不同也就决定了为什么对于一些会折腾的软件使用者来说,在一般情况下,自由开源软件是合理价格的最好选择。你或许会觉得是它的某项功能或特点而非自由开源吸引了你,但可能正是自由开源使得它独特地实现了这样那样的功能。

合理价格的最好选择 #

合理价格 #

为什么说是合理的价格?自由开源软件当然是免费的,但不要忘了还有折腾的时间和捐助的金钱。一些开源软件由于精力所限,不能提供方便而精美的用户界面,这也使很多缺少计算机知识的用户望而生畏。但对有一定计算机知识的人来说却不算什么困难。至于捐助多少钱,那就更是由自己来评估一个合理的数额了。

那商业软件呢?对于国际化的商业软件,目前仍然以美元或欧元计价为主流,且对全球其他地区的价格基本都是直接由汇率换算的,这就导致在中国,以人民币购买会更吃亏。因为同样的美元在美国的购买力显著低于换算成人民币后在中国的购买力,所以在美国看起来合理的软件价格到中国就变得很高了。能做到对不同市场实行不同定价的公司还是少数,毕竟一般的公司也没有动力做这个区分,这里点名表扬一下 Apple Music 在中美分别(约)为 5 元和 5 刀的定价,虽然我没买。

啥?你说中国的商业软件?往下看就知道了。(其实不看也能猜个八九不离十。)

至于为什么说是最好选择,有以下几个方面:

软件质量有保障、契合用户 #

代码质量是软件质量的底层保障。既然是专门搞开放源代码的,那代码质量一般不会太差,至少比商业公司内部的代码会好一些。

同时,开源软件的社区驱动的模式,也让它有更高的道德底线,对用户的隐私会更加友好,关注用户(核心)体验,吃相也不会太难看,最多也就是经常“要饭”而已。至于突然收费,加入广告或者奇奇怪怪的功能,是几乎不可能出现的。这里也点名批评一下 Microsoft Edge 在近期的一系列流氓操作,包括但不限于在 Chrome 下载页面推广自己、静默安装电脑管家等。

而中国本土的软件,尤其是移动端,质量参差不齐,很多吃相难看,一言难尽。这里再点名批评一下开屏广告和无节制消息通知。也许是中国互联网太卷了吧。

社区生态好 #

都是由社区驱动的了,生态不好就活不了了😂

一方面是透明的、有管理的 issue tracker,使得用户可以方便地报告和跟踪问题,了解维护者的态度,并第一时间获知进展。另一方面,社区具有分享精神,用户可以得到很多信息和帮助。反观部分中国互联网,社区分裂且孤立,搜索难度大,平均质量也不高,对用户造成了不小的困扰。

容易集成与修改 #

这一点就更好解释了。自由开源软件使用标准的规范和数据格式,也往往预留一些自定义接口,使得插件开发以及与其他软件合作变得容易。不像一些商业软件甚至会绑架用户数据,只有开通会员才能导出。

而且有编程基础的用户也可以对中等规模程序进行简单修改,从而达到自己的简单需求。在这同时也推动了软件的进步。

例外 #

既然说了是一般情况,那就必然有例外。

操作系统 #

操作系统当然是指 Windows, MacOS, iOS, 各类 Android 等。

价格方面,一般购买整机就包含了操作系统使用的授权,无须单独付费,也不会直接觉得有多贵。

而且由于操作系统足够复杂,一般人没有能力修改。而大公司有能力做操作系统,而且可以做得比一些开源系统更稳定。

生态方面,每个计算机与智能手机用户都需要一个操作系统,它的生态足够大,其中也包括了大量会折腾的用户。而且各类绕不开的商业软件都只对主要的操作系统做适配,很难完美运行在 Linux 这类操作系统中。

在集成方面,也是因为其生态够大,所以会有很多官方或第三方的自动化脚本的解决方案,降低了集成的难度。

而我选择使用 Manjaro 发行版 + KDE 的主要原因其实也不是在上一节中所列的几条,而是直接基于 Linux 做开发更方便。

办公软件 #

Microsoft Word 等 Office 软件从设计层面就给仿品出了一个兼容性难题。但微软又以其强大的实力使得 Office 套件成为办公的规范,很难绕开它。

大型软件,如多媒体处理软件 #

同样地,由于软件的复杂性,除非是资深程序员,否则很难做修改,尤其是用 C 语言写就的软件。

同时,之所以成为大型软件,是它涉及大量的功能和算法。商业软件拥有更强大的人力和财力,可以包含更多的功能和强大的专有算法。

而且这些大型软件的用户大多相当专业,很少会活跃在开源领域,更让这些开源软件在专业性上会有所欠缺。

不过对于需求不高的一般用户,专业性不是大问题,所以不太影响他们的使用。

总结 #

总的来说,自由开源软件由于其不同于商业软件的、对了解计算机的使用者友好的模式,提供了在一般情况下合理价格的最好选择,虽然会有一些例外情况。你可能会觉得是它某项独特功能吸引了你,但又何尝不是自由开源造就了它的独特呢?

👍
1
Leave your comments and reactions on GitHub