不设防的交换 ———— 如何为自由/开源软件付‘费’

不设防的买卖其实在中国的古代是蛮常见的事情,即使是现代的熟人社会中也会出现类似所谓的‘看着给’这样的场景,也就是将定价权交给购买方,但是这样的社会对于大规模的工业化交易是不靠谱的,凡事必有价,一手交钱一手交货乃天经地义。而自由/开源软件所采用的这种不设防的生意,而这也是其最大的魅力所在。想为自由/开源软件付费吗?本文会事无巨细的帮助你。

Mon Aug 9, 2021 | 10100 Words | 大约需要阅读 21 分钟 | 作者: Mary Gardiner |

天下没有免费的午餐。

​ ————西班牙谚语

介绍

这是一份可以让你为自由/开源软件付费的指南。有很多人为生产高质量的自由/开源软件投入了大量宝贵的时间,但是他们所选择的许可协议,是允许人们可以修改和再分发,他们还在提供程序的时候不会要求你付款,而你也可以获得程序和代码。

当人们在使用自由/开源软件的时候,如开发、测试、维护,在此过程中觉得成本低廉,可事实上未必,这些软件等成本是不可忽视的部分。但是,与专有的商业软件不同的是,你除了支付现金之外,还可以有很多的方式进行支付。

你可以通过为自由/开源软件项目捐助时间、金钱或资源来支付自由/开源软件的费用。

其实自由/开源软件的这些开发者是有着足够的动力去开发和生产的,而动机是多种多样的,比如,有的坚信软件的知识产权必须是自由分享的,而有的开发者则认为自己享受创建软件的过程。

本文档面向的用户,是那些看到自由/开源软件价值的人们,并且能够认识到软件所解决问题的价值,然而又希望自由/开源软件可持续性发展,甚至能够有更多的创新,换句话说,不仅关注自由/开源软件的过去和现在,还要关心其未来。当然,我们更加关注的用户,是那些注意到自由/开源软件特别优势的人们,相信自由/开源软件的质量,而且能够进行学习、修改和继续分发的魅力。更有甚者,对撰写自由/开源软件背后共同体的关注。

本文档还特别针对那些对contribute有顾虑的自由/开源软件用户,他们之所以顾虑大部分的理由是自己没有掌握编程技能,或者对自己的编程技能没有信心,也有的顾虑是不知道该如何参与到共同体当中,或者是面对大型自由/开源项目无从下手。本文档旨在让你打消这些顾虑,只要你愿意,任何contriube,我们都是非常欢迎的。

另外,本文档也希望那些认为自由/开源软件项目压根不需要捐助的人看看,他们可能认为自由/开源软件社区已经足够成熟,可以在没有他们参与的情况下满足他们对高质量自由软件的需求。本文档希望能够让持这类看法的用户知晓:自由/开源软件在你们的参与下,会变得更好,而你也会获益更多。

自由/开源软件是免费的,对不对?

重新分发和修改,这毫无疑问是自由的。人们可以自由的分发程序,人们也可以自由的修改源代码,并再次分发自己的修改,大多数时候保持和原来的项目一致的许可证,当然,有的时候也会更改许可。

但是软件本身的一些过程,并非是不消耗资源的,如开发、测试、维护、分发,总是会消费一些人或组织的时间、金钱、带宽、计算和存储空间的。

实际它们也是不需要付费的,对不对?

大多数时候,自由/开源软件提供给大众的时候,普罗大众在大多数时候是不需要付费也能获得软件和源码的,这样就导致了一种人们认知上的误区,以为这些软件开发是不需要付出的,甚至认为软件是一种静态的成品,而不是真实的状态:软件的维护费用是很高的。

但是,捐助自由/开源软件是有蛮多积极的方式的,对于那些没有找到共同体和工作激励到人,可能是希望有更好的软件可用;其实,蛮多自由/开源软件的用户,无论是个人还是来自企业,对于现有的软件是有更多需求的;退一万步讲,哪里有什么软件是满足所有人的所有需求的?

对于专有软件的开发人员的激励,无论是开发新产品,还是在产品添加新的特性,都是较为直截了当的。即给钱就好了,毕竟大多数人是相信赚钱本身要比开发时间、各种风险重要的话,他们都会选择开发闭源软件的。

然而,激励开发人员开发自由/开源软件却没有那么的直截了当,尽管售卖自由/开源软件也是条路径,但不是主要的选择,取而代之的是一种智力上的挑战,对于软件本身的功能产生兴趣,并愿意挑战,或许不会花很多的时间,又干脆是为了帮忙。

有一部分自由/开源软件用户似乎没有意识到:自由/开源软件开发人员对他们的用户没有更多的义务来开发或支持软件,正如专有软件开发人员不会无偿支持或开发的义务一样。在没有任何帮助的情况下,坐等高质量的自由/开源软件是徒劳无益的,事情只会变得更糟糕。

希望本指南可以为大家指明方向,捐助自由/开源软件,以达到自己的目标需求。当然,以尽可能多的形式来完成这一目的。

如何捐款

并非所有的自由/开源软件都需要金钱的捐助,有一些自由软件就是某个人茶余饭后闲暇之余撰写的,有的甚至是一小组已经有人发工资的开发者,这些人都非常乐意花时间来撰写代码,当然,还有一些项目,已经得到了颇有实力的个人、组织或公司的支持。

还有另外一些情况,有些项目已经发展到超出一个人业余时间来做的范围,而且这些人还不能放弃付费工作而全身心的投入到自由/开源的开发中来,还有一些更加特殊的情况,就是一些自由/开源软件的项目维护者本身就是没有薪水的,他们的生活是蛮贫穷的,他们太需要别人的捐助了,而这个时候,如果有人捐助些金钱,那真是太感激了。

还有一些做法,就是创建商业公司,通过售卖自由/开源软件或是提供支持来获得利润,这些公司还会雇佣自由/开源软件的开发人员,从而确保对公司业务至关重要的自由/开源软件能够可持续的发展。

也许作为个人,你负担不起购买太多自由/开源软件,或者是为自由/开源软件捐款。尽管如此,你还是有机会去说服他人购买的,你也可以做一些咨询工作,尤其是那些从购买自由/开源软件并受益的公司;如果你是在一家广泛使用自由/开源软件的公司任职的话,那么说服公司给予自由/开源软件财政上的支持,进而让公司受益。

不过要说明一点,那就是当人们为自由/开源软件做出捐助时,是明确可以得到回报的。最直接的莫过于你所使用的自由/开源软件项目得以延续,更近一步的会有诸如获得支持、维护、甚至是定制等。

给开发者、项目或公司一些钱

绝大多数自由/开源软件项目的开发者都会在自己的项目主页上提供接收捐赠的方式,通常是非常方便的,你只需要按照指示,捐出自己力所能及的一笔钱就好。

尽管现在已经有很多的捐赠通道,无论是GitHub这样的商业托管平台,还是Linux 基金会这样的非营利组织,都会提供为自由/开源软件项目捐赠的通道,但是即使这样,仍然有一些项目是不怎么关注这个的,这个时候就需要你来主动的去联系作者,然后提供一笔捐赠,当然,需要遵守当地的法律,非常有必要和作者进行沟通。

直接为项目提供捐赠,项目所获得的益处是最为显而易见的。

购买自由/开源软件产品,或者是关联产品

购买自由/开源软件产品,其实蛮考验人的,这意味着你不只是单纯的从项目主页下载软件,而是要付费后再下载/获取,之所以比较考验,是因为自由/开源软件允许你在没有付费的情况下就可以下载到完整的软件和代码。通过付费购买,你可以让售卖方维持自由软件的业务,特别是这些公司可以维持的话,旗下撰写自由/开源软件的员工也有工资可拿。

购买相关产品意味着购买由开发人员或维护人员提供的附加服务:例如,支持或文档。许多自由/开源软件公司的商业模式主要依赖于销售相关产品,特别是支持。

批量购买自由/开源软件产品或相关产品(例如发行版)将有助于支持生产或支持自由/开源软件的公司以及大型项目(内核、桌面环境等)的开发人员。从单个项目购买产品直接支持该项目,但可能不会支持到其他的项目。

聘请自由/开源的开发者

如果贵司对于某个自由/开源项目特别的依赖,那么就要考虑聘请一些该软件的开发人员了。这些开发人员也将非常适合定制和开发项目扩展以满足贵司的需求。当然,还有一种情况,就是贵司可以选择将自己的软件也成为自由/来源软件的一部分,或许这其中有遵循开源许可证的要求,无论如何,将自家的项目从专有变为自由/开源软件,是换了一种方式的捐助。

即使贵司可能不需要永久的雇佣开发人员,但是考虑一下临时雇用开发人员也是个不错的主意。如果贵司需要将特定功能添加到您使用的项目中,贵司可以聘请其中一名开发人员来处理该功能。

选择开发自由/开源软件的原因有很多,其中包括享受软件开发本身,以及金钱的奖励,你不可能做到让所有人都满足,但是,用户使用自由/开源软件,并付费,那一定是这些软件很好的满足了自身的需求,而用户希望这些软件能够很好的发展下去。

支持自由/开源的大型研讨会

研讨会能够让自由/开源的开发者欢聚一堂,平日里可能都是天各一方,尽管是在同一个项目上,但是他们通常都散落在地球的各个角落,很少能够和同行们进行会面,因此,研讨会是难能可贵的,所有人都非常珍惜这样的机会。

这些大型的自由/开源软件会议通常会支付演讲者和研讨会参与者的差旅费和住宿费。他们还经常补贴学生和没有工作的参加者。他们通过向与会者收费和接受捐款来支付费用。举办一场大型的会议可不是一件简单的事情,最大的问题在于,其成本可能非常的高。

如果自由/开源软件会议上的某些演讲对您有用,请考虑付费参加会议。如果您不想参加,请考虑捐赠。如果会议与您使用的特定项目有关,请考虑赞助该会议或有关该项目的研讨会。

在会议上和同行们聊天、谈话只是参加的原因之一。还有可以亲身见到项目的用户、开发者,如果您想成为自由/开源软件共同体的一员,与共同体成员面对面交流的最佳方式之一就是参加会议。

赞助自由/开源软件会议,会为贵司和你赢得可观的大家的善意,以及共同体成员的认可。

生产自由/开源软件

如果贵司有开发软件的需求,无论是自己内部开发,还是委托外部资源进行开发,那么请考虑这个项目以自由/开源的方式发布,如果是后者的话,在合同中指定以自由/开源软件方式发布。

任何事情都是双向的,这不仅意味着贵司为世界贡献了自由/开源项目,贵司还可能从外部开发人员那里获得对项目的贡献。

购买那些对自由/开源软件支持的硬件公司

一些公司出售运行或旨在运行自由/开源软件的硬件。在购买硬件时,不妨考虑支持他们的产品。不过在此要特别提醒,一定要先做一些调查工作——许多公司才刚刚开始支持自由/开源软件,需要你前期的支持。

如何提供资源

捐赠硬件/云服务

许多自由/开源软件项目旨在以多种不同的规模在多种不同类型的硬件上运行。

然而,这些项目的开发人员很少能访问他们的项目应该运行的所有不同种类的硬件,如Linux kernel做支持的各种计算机架构。如果您有未使用的带有不寻常组件或不寻常架构的硬件,自由/开源软件项目想要支持,那么请捐赠硬件到项目是个非常不错的主意。如果您需要一个自由/开源软件项目在您拥有的特定配置上运行,您可能希望捐赠一个相同的系统用于开发和测试。

在数字化时代的今天,云计算服务已经是现代IT设施的首选,所以如果能够为自由/开源软件项目提供一些云服务,如主机、容器、IP地址等还是非常受欢迎的。

捐赠带宽

自由/开源软件诞生和发展于互联网,无论是开发者,还是用户,都是必须依赖于互联网,我们可以使用名词“带宽”来指代这个意思,带宽其实是一个用于计费的名词。

既然是基于互联网,自由/开源软件项目的基础设施,如网页、源代码仓库、wiki、bug跟踪、邮件列表、新闻组以及 IRC 等都是必须项,另外一个需要特别指出的是,自由/开源软件的分发,是需要大量的镜像站点的,而且为了保证速度,是需要大带宽的支撑的,镜像站点对于美国以外国家/地区的开发人员和用户特别有用,因为跨国际的流量不仅很慢还很昂贵。当然,有了镜像站点,也会减少主站点的负担,以及昂贵的带宽费用。

如果贵司可以访问可靠的高带宽连接,并且负担得起流量费用,则不妨考虑一下托管镜像站点。就目前国内的情形来看,很多镜像站点,还是高校来承担,也是一个很独特的现象。

当然,庞大的镜像站点并不是唯一的捐赠方式,刚才我们提到的网页、源代码仓库、wiki、bug跟踪、邮件列表、新闻组以及 IRC 都是需要帮助的,如果可以的话,为自由/开源软件提供这些基础设施的带宽,而这是发展的基石。

如何捐助时间和技能

撰写自由/开源软件

如果没有某个地方的某个具体的人撰写了代码,自由/开源软件就不会存在。如果你是一名懂得编程,或者说掌握了编程技能的开发者,那么为这些项目编写代码就是对自由/开源项目的最大捐助,如果能力突出的话,发起自己的项目更佳。

去哪里contribute代码、为哪个项目contribute,都是比较难的决定。大型的项目通常需要花时间和精力才能有所了解,有的时候还需要导师的指导,才有可能进行contribute,大型项目往往已经有了很多的开发人员,而且他们的开发计划也在有条不紊的进行着,他们不会因为某个新手而改变现有的计划。但是,也不用担心,越是大型的自由/开源项目,模块化往往做的非常好,新手也不是必须知道全部才能进行contribute,局部也可以。

不是所有的自由/开源软件项目都是大型项目,大多数还是较小的项目,这些小项目更有可能迫切需要新的开发人员。在小型项目里,作为新手的你更有可能开发出产品的关键部分,并对开发方向有一定的发言权。另外,小型项目的共同体规模也是较为小的,你的付出更容易被识别,社会资本也更加的较为容易的累积。

对于发起自身的项目而言,其实是风险最大的,除了开发本身的工作之外,你还需要构建开发者共同体,用户社区等工作,而后者往往更具挑战性,而项目可以随时舍弃,但是共同体就不是说建就建,说放弃就放弃的,这会牵扯到很多人的利益,所以一旦开始了,就最好坚持到底。当然,最佳局面是你发起的项目,在市场上有很多需求,那么潜在的追随者和contributor就会更多。

撰写文档

伴随着软件的高速发展,自由/开源软件项目越发的需要文档,让新手更快的上手、不同模块团队的沟通、用户手册、不同平台的指南,都是文档的缺口,所以开源项目大量的需要文档撰写人员。主要是文档可能是上手最快的方式。

做一些美工、编曲的工作

现代软件项目,都需要作一些和精美的美工相关的内容,如图标、背景图像、配色方案和徽标。目前自由授权的艺术品相对较少,而且美工作品,最好还是保持独特性,能够有着显著的区别,如果您是一名有美术背景的工作者,是非常抢手的,大多数自由/开源软件项目都缺少美工,当然,你不仅可以为某个项目做事,你也可以将自己的作品授权其它自由/开源软件项目使用。

许多项目还需要作曲家的技能,无论是为他们的节目创作短片还是大量的配乐。同样,也可以自由许可您的音乐进行分发和修改。

翻译项目

软件项目是用英语开发的,在过去的半个世纪里,计算机编程语言默认使用英文占据绝对的主流,而且从业人员将英语是作为基础技能的。但是这个世界使用者,远远不止懂英语的人,所以翻译的需求是大量存在的,所谓的i18n也是每款软件发布时默认自带的。自由软件同样需要大量的翻译工作。如果你是一位思路清晰的文字工作者并且可以读写多种语言,那么提供将程序中的文档或文本翻译成另一种语言是非常受欢迎的。

翻译,如果仅仅指的是语言的话,那么我们也未免有点对这个词的理解有点狭隘,它们包括文本的方向、所使用的任何标志或符号的文化意义和适当性,以及可能需要修改项目中使用的语言或图像的当地谦虚或体面标准。这也就是说,除了文本之外,我们还要注意符号,如果你是一位和开发人员处于完全不同的文化中,那么你的反馈是特别有意义的。

提交bug

所有的软件都会发生错误,甚至是功能的不完善,自由/开源软件项目,bug跟踪系统都是公开可访问的,如GitHub 的issue、Mozilla的bugzilla 等,允许所有人提交发现的问题以及描述,也接受用户提交的需求。

在报告软件中的错误时,你需要提供问题的清晰描述,包括程序给出的任何错误消息的确切措辞,以及导致错误发生所需的确切步骤。

要去了解项目的运转方式,在合适的地方小心的报告错误,从而能够让开发人员注意到并跟踪,在报告之前,最好是搜索一下是否已经有人做了类似的工作,以免做重复的工作,如果已经有人报告过了,那么基于他人的报告进行信息的补充即可。

在提交bug之前,要去了解自由/开源软件项目的开发流程,以及相对应的系统,而且绝大多数项目都会提供如何提交bug的指南,按照项目的要求去做。

如果没有报告错误的具体说明,你应该尝试将它们报告给开发人员的组、论坛或列表(如果有),如果没有,则应尝试报告给特定的开发人员。不要将错误发送给特定的开发人员,除非您找不到其他方法来报告它们,因为他们可能太忙而无法确保你的错误受到关注。

清晰的错误报告是确保错误得到调查和修复的最佳方式。你的错误报告描述越是清晰准确,修复的可能性就越大,时间也会节省很多。有些项目,特别欢迎那些已经包含了修复建议的错误报告。

做些许测试工作

软件产品都通过广泛的测试得到改进,自由/开源软件也不例外,不妨下载项目的体验版,然后想方设法把它搞崩溃,然后将过程反馈给上游项目(具体操作,请参阅上面的错误报告撰写)。

一些较大的项目是有专门的测试团队。尝试加入这些团队并主动要求分配一些测试。

为自由/开源软件贡献专业技能或知识

自由/开源项目需要各式各样的技能的人才,无论你会什么技能,绝大多数时候都能用得上,前提是你确实是掌握了一些技能,当然,即使没有掌握也没有关系,自由/开源项目会提供给你练习的机会,但是,推广项目是所有人都可以做的事。

让我们来找一些实例,比如某位朋友的专业背景是会计或者是法律,大型自由/开源软件项目通常需要有关法律问题或财务问题的建议,包括知识产权问题、接受捐赠或税收问题。要知道这些平日里都是非常昂贵的服务,项目如果能够获得这些专业的帮助,是相当的利好。

像世界上所有的好东西一样,优秀卓越的自由/开源软件项目、会议、共同体需要向媒体和公众推销,如果你有营销、广告或公共关系方面的技能,这些对许多项目来说都是无价的。许多项目都有负责营销的团队,因此即使您不能承担项目营销的责任,您也可以发挥同样重要的作用,与团队成员分享您的建议和经验。

其实,即使是项目管理这样的专业技能,在自由/开源项目中也是稀缺的,软件项目是一个趋于不断增长的工程,随着项目的日渐增长,项目管理可以发挥非常有益的作用。与营销技能一样,将这些技能教授给项目的其他成员与成为项目经理一样是同等重要的。

许多自由软件项目正在开发为特定领域的专业人士设计的软件 - 如果您在该领域工作,您作为用户、设计师和测试人员的建议将特别有用。

如何捐助(Contributing)支持工作

自由/开源项目是一种基于共同体为核心的生产方式,其价值体现之一就是共同体的大力支持。在共同体内部,大家各司其职,可以有效的减轻开发者和维护者的支持负担,从而让他们能够将更多时间用于开发和思考。换句话说,如果你还没有达到能够为项目的开发和设计做contribute的话,不妨试试在使用方面的支持工作,这对于整个项目是非常有帮助的。

对于支持工作,绝大多数的原则是和开发工作是一致的,例如这些成员大部分也是没有领取薪水的,甚至很多都是具备潜力做contributor的,他们没有亏欠任何人,说白了,就是在自由/开源的共同体里是讲究一种互助原则的,想从别人那里获得帮助的最佳方式是在别人需要帮助的时候伸出援手。另外在提出帮助之前,一定要做大量的调查研究工作,非必要尽力不要提要求。

关于如何提问,Eric S. Raymond 和 Rick Moen 写作一篇经典指南:如何智慧的提问 ,非常值得借鉴!

加入(或启动)自由/开源软件用户组

自由/开源软件一般都拥有本地的用户组,尤其是大一点的城市,例如我国的北京、上海、深圳等城市,流行而大型的项目更是用户组相当的活跃,基于地域的本地用户组,通常会举办定期的meetup,有成员进行主题分享,或者是案例演示等,当然,这些用户组一般也会起到宣传的作用,并鼓励大家使用项目,甚至有的还提供支持。

许多项目都有在线用户组,通常采用邮件列表的形式。这些用户组通常提供支持,不过是偶尔为之。

如果已经有了相应的用户组,你不妨选择加入他们,加入之后,就可以提供一些力所能及的事情,当然能够提供演讲等是最好的了。其实,这些用户组大多数时候都缺少人手,总而言之,有什么需要的就去做吧,如果你具备领导力,不妨就发起一些更适合当地文化和习俗相关的活动,这样更能够融入本地。

如果你所在的城市或地区,还没有对应的用户组,那么是时候考虑建立一个了,不过要三思,启动用户组需要投入时间和资源。首先要做的将你的想法广而告之,争取到一些帮手最好不过,并确保自己有足够的兴趣。另外,你也可以联系项目的开发人员,看看在核心团队里是否有本地的朋友,如果有的话,争取到他们的帮助会是一个很好的开始。

为(或启动)在线支持小组做捐助

在线支持论坛与在线用户群非常相似,而且两者经常重合。在线支持论坛专门用于回答有关安装和使用产品或一组产品的问题。许多问题和答案都已存档以备将来参考。

这个时候你就可以做一些事情,比如引导新手,回答一些已经被问过很多次的问题,这样就可以节省开发人员的时间和精力。

如何表达谢意

表达您对开发人员的感谢。

很多的负面反馈来袭是自由/开源软件项目的家常便饭,面对这样的情形,有一部分开发者,会觉得委屈、气馁、被低估。甚至有的开发者会出现严重的心理问题,如愤怒、倦怠,最坏的结果甚至是带来人生的伤害,当然,项目也就夭折了。这并不是我们所有人希望看到的结果。

所以要去对自由/开源项目开发者进行鼓励,进行积极、客观的反馈,做出力所能及的赞赏,哪怕是微不足道的小事,也是显得弥足珍贵。

想要直接表达谢意,其实没有那么困难,开发者的邮件通常都是很容易找到的,如源代码、文档和邮件列表中,或者是GitHub 的id,或许他会将你感谢信过滤到垃圾箱,但是这是你应该做的:表达自己的感谢!当然,在一些开源的meetup或大型研讨会上,当面感谢也是一种非常不错的方式。

给项目或开发人员一份礼物

一些项目会在文档中提到开发人员或项目会喜欢特定的礼物。这些礼物通常很便宜,例如明信片或 CD。可以考虑赠送他们。如果他们没有说出明确的礼物的种类,不妨多问一嘴。

使用自由/开源软件之前要多做调研工作

对于较流行的开源项目,作为项目的维护者和开发者,会收到大量的求助邮件,甚至有些问题会被经常问到,此时,我们作为用户需要同理心原则来思考:为了节省这些开发者的宝贵的时间,以及可能会造成的挫败感,为了能够让他们有更多的时间处理项目中更为重要的问题。所以,作为自由/开源软件的用户,在寻求帮助之前,请酌情查阅相关的 HOWTO、常见问题、邮件列表档案和手册。最好是能够做到Google搜索、在StackOverflow上搜寻答案等。

要在确定自己已经穷尽了所有办法,然后在做出求助。这应该是一种做人的美德,值得大力提倡。

为你喜欢的项目添砖加瓦

在你喜欢的项目的用户群体中积极发挥作用,积极确保给潜在用户和开发者留下良好的印象,这里指的是广义上的项目,不仅是你所使用或关注的项目,也包括其它相关的自由/开源项目。要去做些力所能及的事情,为其他的自由/开源软件用户提供帮助,诚实地说明贵项目的优势和劣势。建设性地批评自己关注的项目和其他项目。

要对自己的项目进行口碑式的积极宣传,研究其他竞争项目并进行合理、公平的比较,并突出显示拥有的任何优势。一定要在自己的头脑中形成,开源的显著优势就是拥有活跃的共同体:由开发者和用户所组成的职业共同体。要以你的项目共同体为荣,并建立归属感。

致谢

本 HOWTO 的灵感来自对 LinuxChix 邮件列表的广泛讨论。感谢 LinuxChix 以及悉尼 Linux 用户组和 Advogato 成员的反馈。

感谢 Rebecca Walter、Jenn Vesperman、Dancer Vesperman、Telsa Gwynne 和 Alan Cox 提供了一些具体的想法,和 Akkana Peck 建议需要专门解决需要功能而不提供贡献的用户。感谢 David Merrill 的批判性眼光和 Jeff Waugh 的热情。

特别感谢对开源之道一直以来关注的人们!

自由的释义

我的语言的边界意味着我的世界的边界。

​ ———— 路德维希·维特根斯坦

咬文嚼字这个事情显得尤其重要,但是符号带给普罗大众的理解,在命名的时候还是很重要的。不过,鉴于汉语和英语的不同,自由软件是没有任何歧义的,开源软件更加明确。所以,误解是可以消弥的,不过需要一些时间和大量的知识传递。

自由软件的确切含义很难概括。自由软件通常是自由分发的,但术语“自由”指的是使用的自由、重新分发的自由和修改的自由。

关于自由软件的原始定义和解释,请参阅:自由软件定义

关于开源软件的原始定义和解释,请参与:开源软件定义

关于本文档

本文原作者:Mary Gardiner。本文最初创作于 2002-2003 年,本打算提交到Linux文档计划,但是Linux文档计划本身也搁浅了,此事就不了了之,本文除了排版修复或链接目标修复外,没有计划进一步修订。Markdown 源文件托管在GitLab 上,用于在知识共享署名-相同方式下复制、分叉和发布衍生作品。

本文档的最原始的链接地址:https://files.puzzling.org/wayback/pay-for-foss/

读者刚刚读完的,是开源之道根据现实情况进行的二次衍生的作品,文章结构遵循于原文,但是在一些细节的地方做了修改,其中最大的更改就是将原文中的“自由软件”替换为“自由/开源软件”。开源之道认为让更多用户为自由/开源软件付费是一件极为重要的事情,所谓的提高消费者认知的艰难工作。所以基于本文其实只是一个起点,未来会有更多为自由/开源软件付费的文章。