“看源软件”:是什么、为什么、为什么不

看源软件,即 Source-available software。所有源代码随软件分发的软件,都是看源软件。换言之,这是一个比“开源软件”和“自由软件”更广泛的概念。自由软件包含于开源软件,开源软件包含于看源软件。

看源软件(中文维基页面较简陋,此处给出英文维基页面):源代码随产品分发。

开源软件:用户可以学习、分享源码,可以出于任何目的再分发源码。

自由软件:在上述基础上,保障用户的“四大自由”,允许用户自由地执行、复制、传播、研究、变更和改善。

近年来,一些软件选择“看源”而非“开源”。一个常见的理由是,大型公司免费地使用开源软件(例如 AWS、GCP、Azure 等提供数据库托管服务),从中获取上亿利润,却不向作者提供任何报酬。对于绝大多数开源协议(AGPL 除外)的情况,他们也可能修改源码、在自己的服务端托管,但并不向任何人公开修改后的源码,也不向上游贡献代码。

这对开发者很不公平,不是吗?所以,我们有必要采取更严格的协议,以强迫这些 Big Tech 们把它们从开源软件中获得的收益分一部分给开发者——从而开源软件变成了看源软件。这样一来,才是公平的——一些协议确实以“公平”自称

但是且慢:这个场景,是广泛存在的事实,还是很大程度上脱离现实的空想?

政治课上,老师说“以物易物很不方便,于是产生了一般等价物”,这时我的想象是:几个住在不同山洞里的原始人,彼此交换自己的劳动成果。然而实际上,商品的诞生必定晚于私有制的诞生,从而货币也至少也要到这以后才能被发明。更不用说人类从狩猎采集时代起就不太可能过独居生活,那种完全架空的个体交换关系在任何历史时期都不可能发生。

不可否认,有不少开源软件确实由独立开发者维护,例如 curl 和 core-js 这样的基石。但看源协议并不适合这些项目,恰恰相反,看源协议更适合大公司的项目需要,大公司的项目们也更多地使用看源协议。

如果一个独立开发者从一开始就使用看源协议开发项目,那这个项目很可能不会得到大公司的青睐,从而“从大公司手中分一杯羹”就成为了无稽之谈。而如果先开源、后看源,大公司们就会停留在旧版本,可能会 fork 一份,也可能直接抛弃。

反过来可就不是这样了。大公司有更强的开发能力,可以维护规模大得多的项目。这些项目的竞争者更少,更难被替代。此外,由于它们的庞大规模,即使它们采用 AGPL 这样的自由软件协议,外部贡献者也很难贡献,更别提 fork 并持续维护。大公司的看源项目更少有替代品。在最极端的场合,看源协议甚至是一种施舍:原本闭源的项目,在生命周期临近结束时,提供源代码给社区查看。

这样一来,所谓“从软件中获得的收益,开发者有权分一杯羹”,实际上更多是一个大公司从另一个大公司手上获得收益。这只是它们之间的利益分配,和前面那种想象中的、采用小资产阶级生产方式的“独立开发者”并没有关系——除非“开发者”是采用公有制经济的、按劳或按需分配的实体,换言之,资本主义中的社会主义飞地。

即使真的如此,这种飞地的性质也是值得怀疑的:当这一实体从项目中获利时,项目的外部贡献者是否按贡献比获得了同样的收益?著名的“蒙德拉贡合作社”就存在这个问题:正式工有分红,外部雇佣者却只是典型的雇佣劳动。这样一来,正式工就成了食利者,凭借着自己“拥有的”生产资料而剥削外部雇佣者,他们的“分红”就是按生产要素分配,而不是按劳分配了——当分红占据收入大头时,这些正式工与资本家无异。

另一种情况是,少数几个“老师傅”享有声誉、获得报酬和捐助,而外部贡献者在相当大程度上打白工,就像老教授与牛马研究生那样——这的确不是资本主义的生产方式,而是更加落后的封建社会中的行会制度。这不光发生在看源软件中,因为自由软件协议也同样无法阻止这种情况的发生。著名的 Linux 内核项目就是一个例子——尽管更多数情况是大公司往内核里提交自己的代码。

归根结底,当整个社会都在按资本主义的模式组织生产生活时,不可能构建出这样一个体系:它以市场原则参与竞争、获得收益,而在内部采取社会主义的分配方式,并长期稳定如此。无论是自由软件、开源软件还是看源软件,都没有例外。从自由软件、开源软件再到看源软件,这三种运动,其兴起时间从先到后,共产程度却依次下降,某种程度上也反映着计算机行业资本主义发展程度的加深。

每个党派都向后踢那挤着它向前的党派而向前伏在挤着它后退的党派身上。无怪乎它们在这种可笑的姿势中失去平衡,并且装出一副无可奈何的鬼脸,奇怪地跳几下,就倒下去了。革命就这样沿着下降的路线行进。

——《路易·波拿巴的雾月十八日》,卡尔·马克思

  • 开源

    Open Source, Open Mind, Open Sight, Open Future!

    421 引用 • 3610 回帖
  • 互联网

    互联网(Internet),又称网际网络,或音译因特网、英特网。互联网始于 1969 年美国的阿帕网,是网络与网络之间所串连成的庞大网络,这些网络以一组通用的协议相连,形成逻辑上的单一巨大国际网络。

    99 引用 • 367 回帖 • 1 关注

相关帖子

欢迎来到这里!

我们正在构建一个小众社区,大家在这里相互信任,以平等 • 自由 • 奔放的价值观进行分享交流。最终,希望大家能够找到与自己志同道合的伙伴,共同成长。

注册 关于
请输入回帖内容 ...
lixiang810
我们致力于了解我们所生活的这个世界。 We must know. We will know. 上海

推荐标签 标签

  • Access
    1 引用 • 3 回帖 • 13 关注
  • jsoup

    jsoup 是一款 Java 的 HTML 解析器,可直接解析某个 URL 地址、HTML 文本内容。它提供了一套非常省力的 API,可通过 DOM,CSS 以及类似于 jQuery 的操作方法来取出和操作数据。

    6 引用 • 1 回帖 • 517 关注
  • Lute

    Lute 是一款结构化的 Markdown 引擎,支持 Go 和 JavaScript。

    29 引用 • 202 回帖 • 54 关注
  • uTools

    uTools 是一个极简、插件化、跨平台的现代桌面软件。通过自由选配丰富的插件,打造你得心应手的工具集合。

    9 引用 • 75 回帖 • 1 关注
  • OpenStack

    OpenStack 是一个云操作系统,通过数据中心可控制大型的计算、存储、网络等资源池。所有的管理通过前端界面管理员就可以完成,同样也可以通过 Web 接口让最终用户部署资源。

    10 引用 • 9 关注
  • Elasticsearch

    Elasticsearch 是一个基于 Lucene 的搜索服务器。它提供了一个分布式多用户能力的全文搜索引擎,基于 RESTful 接口。Elasticsearch 是用 Java 开发的,并作为 Apache 许可条款下的开放源码发布,是当前流行的企业级搜索引擎。设计用于云计算中,能够达到实时搜索,稳定,可靠,快速,安装使用方便。

    117 引用 • 99 回帖 • 191 关注
  • 单点登录

    单点登录(Single Sign On)是目前比较流行的企业业务整合的解决方案之一。SSO 的定义是在多个应用系统中,用户只需要登录一次就可以访问所有相互信任的应用系统。

    9 引用 • 25 回帖 • 9 关注
  • Sphinx

    Sphinx 是一个基于 SQL 的全文检索引擎,可以结合 MySQL、PostgreSQL 做全文搜索,它可以提供比数据库本身更专业的搜索功能,使得应用程序更容易实现专业化的全文检索。

    1 引用 • 259 关注
  • Excel
    32 引用 • 29 回帖 • 1 关注
  • NGINX

    NGINX 是一个高性能的 HTTP 和反向代理服务器,也是一个 IMAP/POP3/SMTP 代理服务器。 NGINX 是由 Igor Sysoev 为俄罗斯访问量第二的 Rambler.ru 站点开发的,第一个公开版本 0.1.0 发布于 2004 年 10 月 4 日。

    316 引用 • 547 回帖 • 4 关注
  • Electron

    Electron 基于 Chromium 和 Node.js,让你可以使用 HTML、CSS 和 JavaScript 构建应用。它是一个由 GitHub 及众多贡献者组成的活跃社区共同维护的开源项目,兼容 Mac、Windows 和 Linux,它构建的应用可在这三个操作系统上面运行。

    16 引用 • 143 回帖 • 6 关注
  • 域名

    域名(Domain Name),简称域名、网域,是由一串用点分隔的名字组成的 Internet 上某一台计算机或计算机组的名称,用于在数据传输时标识计算机的电子方位(有时也指地理位置)。

    43 引用 • 208 回帖
  • 禅道

    禅道是一款国产的开源项目管理软件,她的核心管理思想基于敏捷方法 scrum,内置了产品管理和项目管理,同时又根据国内研发现状补充了测试管理、计划管理、发布管理、文档管理、事务管理等功能,在一个软件中就可以将软件研发中的需求、任务、bug、用例、计划、发布等要素有序的跟踪管理起来,完整地覆盖了项目管理的核心流程。

    11 引用 • 15 回帖 • 1 关注
  • 知乎

    知乎是网络问答社区,连接各行各业的用户。用户分享着彼此的知识、经验和见解,为中文互联网源源不断地提供多种多样的信息。

    10 引用 • 66 回帖
  • Vue.js

    Vue.js(读音 /vju ː/,类似于 view)是一个构建数据驱动的 Web 界面库。Vue.js 的目标是通过尽可能简单的 API 实现响应的数据绑定和组合的视图组件。

    269 引用 • 666 回帖 • 1 关注
  • Solo

    Solo 是一款小而美的开源博客系统,专为程序员设计。Solo 有着非常活跃的社区,可将文章作为帖子推送到社区,来自社区的回帖将作为博客评论进行联动(具体细节请浏览 B3log 构思 - 分布式社区网络)。

    这是一种全新的网络社区体验,让热爱记录和分享的你不再感到孤单!

    1449 引用 • 10092 回帖 • 489 关注
  • 宕机

    宕机,多指一些网站、游戏、网络应用等服务器一种区别于正常运行的状态,也叫“Down 机”、“当机”或“死机”。宕机状态不仅仅是指服务器“挂掉了”、“死机了”状态,也包括服务器假死、停用、关闭等一些原因而导致出现的不能够正常运行的状态。

    13 引用 • 82 回帖 • 75 关注
  • LeetCode

    LeetCode(力扣)是一个全球极客挚爱的高质量技术成长平台,想要学习和提升专业能力从这里开始,充足技术干货等你来啃,轻松拿下 Dream Offer!

    209 引用 • 72 回帖 • 1 关注
  • Kotlin

    Kotlin 是一种在 Java 虚拟机上运行的静态类型编程语言,由 JetBrains 设计开发并开源。Kotlin 可以编译成 Java 字节码,也可以编译成 JavaScript,方便在没有 JVM 的设备上运行。在 Google I/O 2017 中,Google 宣布 Kotlin 成为 Android 官方开发语言。

    19 引用 • 33 回帖 • 87 关注
  • Telegram

    Telegram 是一个非盈利性、基于云端的即时消息服务。它提供了支持各大操作系统平台的开源的客户端,也提供了很多强大的 APIs 给开发者创建自己的客户端和机器人。

    5 引用 • 35 回帖
  • 千千插件

    千千块(自定义块 css 和 js)
    可以用 ai 提示词来无限创作思源笔记

    32 引用 • 69 回帖 • 1 关注
  • 京东

    京东是中国最大的自营式电商企业,2015 年第一季度在中国自营式 B2C 电商市场的占有率为 56.3%。2014 年 5 月,京东在美国纳斯达克证券交易所正式挂牌上市(股票代码:JD),是中国第一个成功赴美上市的大型综合型电商平台,与腾讯、百度等中国互联网巨头共同跻身全球前十大互联网公司排行榜。

    14 引用 • 102 回帖 • 261 关注
  • Notion

    Notion - The all-in-one workspace for your notes, tasks, wikis, and databases.

    10 引用 • 80 回帖 • 1 关注
  • 星云链

    星云链是一个开源公链,业内简单的将其称为区块链上的谷歌。其实它不仅仅是区块链搜索引擎,一个公链的所有功能,它基本都有,比如你可以用它来开发部署你的去中心化的 APP,你可以在上面编写智能合约,发送交易等等。3 分钟快速接入星云链 (NAS) 测试网

    3 引用 • 16 回帖
  • OpenShift

    红帽提供的 PaaS 云,支持多种编程语言,为开发人员提供了更为灵活的框架、存储选择。

    14 引用 • 20 回帖 • 687 关注
  • OkHttp

    OkHttp 是一款 HTTP & HTTP/2 客户端库,专为 Android 和 Java 应用打造。

    16 引用 • 6 回帖 • 99 关注
  • flomo

    flomo 是新一代 「卡片笔记」 ,专注在碎片化时代,促进你的记录,帮你积累更多知识资产。

    6 引用 • 144 回帖