开源必须不仅仅是 Linux

目前还没有读者喜欢这篇文章。
open here

Opensource.com

欢迎回来,女士们先生们,欢迎收看我的第四期六度专栏。感谢大家自从我开始撰写以来给予的巨大支持、建议和反馈。这一切都帮助我写出一些希望能值得一读的东西。

如果不是,请继续浏览;互联网上还有很多其他内容可供阅读。最后的选择?试试 Buzzfeed。

好了,让我们开始吧。

虽然自由软件的概念自理查德·斯托曼在麻省理工学院的办公桌下睡觉时就已存在,但协作和开放许可软件的全面发展真正始于 Linux 的出现。

Linux 采用了一个原则,并填补了一个重要的技术空白,从而启发了其他数千个空白的填补。这导致了受人尊敬的 Linux 发行版的兴起,其数量之多,从 Ubuntu 和 Fedora 等消费级平台,到 CentOS 和 Debian 等服务器级平台,再到像 RebeccaBlackOS 这样彻头彻尾的怪异平台。

对于我们这些在 Linux 的盐水中出生的人来说,开放性和对生活和呼吸开放性的承诺一直是常见的社会组成部分。在 Linux 世界中,使用 Linux 发行版和完全开源的应用程序,但有一些例外,例如 Skype 和 Steam,这并不罕见。

尽管有一些非常出色的项目,但桌面 Linux 始终难以占据市场,市场份额徘徊在 1.5% 左右。虽然 Linux 桌面的服务器、云和基础设施同类产品已经占据主导地位,但桌面却一直落后,尽管 GNOME、KDE、Elementary 和许多其他项目付出了充满激情和高质量的努力。

社区中的永恒学生

当我第一次发现开源时,说它扼住了我的脖子还是轻描淡写了。我立刻变得痴迷。吸引我的不是软件——软件很酷——而是人们齐心协力创造比任何个人都更伟大的东西的理念。我喜欢它提供的让任何人都有机会发挥作用的方式。它赋予了力量。

我毕生致力于理解社区和领导力、它的运作方式以及我们如何帮助社区和组织取得成功。我的目标是了解成功社区或组织的地图上的标记,并能够在其他社区和组织中重现这些标记。

不过,在这段时间里,我的总体目标有所改变。

当我刚开始时,我的唯一重点是 Linux。我希望 Linux 取得成功,并努力在全球努力使其成为 Windows 和 Mac 等平台的真正替代品的过程中发挥至少一小部分作用。我之前提到的开放性是这里的连接组织:像许多其他人一样,我认为正确的方法是使用完全开放的平台并帮助使其变得更好。

我的观点本质上是,从内核一直到应用程序,堆栈的每一层都需要开源。

虽然我将永远是 Linux 的热情粉丝和用户,并且我相信这种全面的开放性仍然非常重要,但我确实认为这里的机会比 Linux 本身更广泛:它是关于社区协作,无论它可能存在于何处、哪个角落和哪个缝隙。

一切始于一个黑客行为

开放协作具有巨大的潜力。它有能力教育、启发、解决重大挑战并带来文化赋权。

它有助于想法和创新浮出水面,由聪明人而不是夸夸其谈的人带头。如果做得好,开放协作可以产生改变世界的效果。

在试图理解成功协作社区中的神奇成分是什么时,关键似乎在于将创造力技术以及协作联系起来。这是关于授权创作者去创造

多年来我学到的一件事是,实际的创新通常不是从宏伟的愿景开始的——它始于一个黑客行为。愿景很重要,它可以激发对话,证明能量的投入是合理的,并朝着正确的方向铺设轨道,但黑客行为使火车走上轨道并开始滚动。

任何人都可以有愿景,但黑客行为是真实的。它提供了有形的材料,可以扭曲、变形、试验和探索。它为工程、科学和实际评估提供了重点。它可以被拆开、改进和抛光,从一个黑客行为变成一个真实的东西。

无论是 Linus Torvalds 的第一个内核、维基百科的第一个版本、第一个 Raspberry Pi 板,还是其他任何东西,世界上最伟大的创新都始于一个人创造了一些东西

将黑客行为转变为具有潜力的东西是它 (1) 被自由共享,(2) 使用任何人都可以访问的免费工具制定,以及 (3) 邀请其他可以使黑客行为更好的人参与。

因此,如果我们想释放世界各地的创新,赋予人们创造不可思议的事物的能力,并进一步推动技术发展和解决问题,我们需要确保每个人都能获得工具和知识,以便 (a) 创建他们的第一个黑客行为,以及 (b) 能够与其他人的黑客行为互动。

跨平台

为了实现这一目标,我们需要确保我之前提到的三个要素——共享、工具和协作——在创作者所在的地方可用。

虽然我希望全世界都在使用 Linux,但很大一部分创作者都在其他平台上。他们在使用贴满书呆子贴纸的 Mac、运行 Windows 的 Thinkpad,甚至还有一些 Chromebook 散落在各处。

人们很容易被诱入这样一种观点,即 Mac 或 Windows 之上的开放性并不是真正的开放性。

当我参加开源会议时,我经常看到这种情况,许多 Linux 粉丝对开源人士使用 Mac 等非开源操作系统感到沮丧。我认为对于某些人来说,这感觉有点像背叛,如果不是背叛,只是感觉这些人“让团队失望了”。

这并不像看起来那么重要。

大多数人只是不关心操作系统。对于这些人来说,操作系统就像电力、水管或煤气管道一样有趣:它是成功运行的关键,但不是他们的兴趣中心。操作系统只是必要的管道。

相反,他们关心他们的数据、他们的应用程序和他们的工作。在许多情况下,人们只是想要一台可靠的计算机和一个尽可能少分心的操作系统,以便继续运行。

这就是为什么这么多人使用 Mac。您可以走进商店,购买硬件和软件的组合,它们在很大程度上只是可以工作。是的,选择较少,并且在某些方面更加封闭,但这些人中的许多人并不关心这些特定的选择,他们只是希望他们的东西能够工作,而他们的东西是数据、应用程序和他们的创造性抱负。

因此,为了真正培养开放性和创新,专注于开放数据标准和格式的跨平台应用程序至关重要。这将允许每个人都在开源协作沙箱中玩耍,无论您是在 Linux、Mac、Windows 还是其他任何地方。

这方面的一个很好的例子是 LibreOffice。它完全是跨平台的,并且其核心是一组开放标准。LibreOffice 不仅可以防止供应商锁定,还可以确保您的数据可以从不同平台的不同用户处获得和修改。在这一点上,如果您的数据采用 OpenDocument 格式,谁在乎用户是在 Linux、Mac 还是 Windows 上?重要的是他们可以协作,工具可用,并且数据可以以开放的方式共享。

我的论点的关键是,我们需要保护以确保创新和协作的关键要素是开放且可访问的创建工具以及开放且可访问的数据。重要的是我们要确保开放访问

现在,这并不是说 Linux 在这里不是一个关键部分。虽然我提倡应用程序和数据层面的跨平台世界,以确保创作者可以不受其平台限制地进行游戏,但我确实认为 Linux 对这些跨平台应用程序的支持是必不可少的。我不认为这里的跨平台仅仅是 Mac 或 Windows。

提供 Linux 版本的应用程序对于确保那些预算最紧张的人(无论是个人、学校、社区中心还是其他人)始终拥有免费工具可以从头开始进行协作非常重要。Linux 也很重要,因为它最终可以在整个平台上进行破解,并且它为汽车、无人机、嵌入式设备和其他领域的创新铺平了道路。

现在,我确信一些没有读到这一点的人会在评论中大喊大叫。他们会指责我是个叛徒,说我不再关心 Linux,并且我反对自由软件。

这纯属胡说八道。

Linux 确实至关重要。开放性应该从上到下地在我们计算机、设备和其他地方进行设计。我仍然是 Linux 的热情用户,并且始终会将 Linux 放在首位推荐给人们。

我改变观点的地方在于,Mac 和 Windows 世界也充斥着像我们这样的人。他们是聪明人,也想创造有趣的东西,让世界变得更美好。他们只是不喜欢 Linux,这完全没问题。

让我们鼓励一个 Linux 成为一种选择而不是社会义务的世界。这将帮助我们接触到更多人,开启更多创新,使我们的跨平台工具和数据变得更好,并扩大开源和开放协作的更广泛的影响力和潜力。

你们觉得怎么样,伙计们?认为这有道理吗?认为我满口胡言?请在评论中告诉我!


本文是 Jono Bacon 的“六度”专栏的一部分,他在该专栏中分享了他对开源文化、社区和趋势的看法和观点。

User profile image.
Jono Bacon 是一位领先的社区经理、演讲者、作家和播客主持人。他是 Jono Bacon Consulting 的创始人,该公司提供社区战略/执行、开发人员工作流程和其他服务。他还曾担任 GitHub、Canonical、XPRIZE、OpenAdvantage 的社区主管,并为众多组织提供咨询和建议。

13 条评论

我原则上同意,但请注意...封闭平台顶层的开放性是守门人赋予的特权,而不是固有的权利。封闭平台的拥有者在平台层面有多种选择(合法和非法),使开放工具不如他们自己的封闭产品那么受欢迎。过去就发生过这种情况...

我喜欢您的文章,并且完全同意最初吸引我开源的地方。“吸引我的不是软件——软件很酷——而是人们齐心协力创造比任何个人都更伟大的东西的理念。”这仍然激励着我在开源领域的工作,并且让我兴奋的是,这个原则可以应用于其他地方。

的确,并且借助 ReactOS 和...嗯...好吧,Darwin 已经死了,但让我们说 HaikuOS,选择不仅成为 Linux 内部的事情,而且成为操作系统开放版本的真正花束和竞争,这导致了跨平台更轻松和更可共享的解决方案,并有助于 wine 和 darlinq 等项目,最终使开发人员和用户都受益。

我真的不明白您的文章的重点。互联网上实际上有数千个开源项目。即使是商业产品也有其社区版本,其代码以开源许可证发布,例如流行的 Java、Python IDE :)

在我看来,开源的真正价值在于大型商业产品。您可以在任何地方找到 OSS - 在每个专有软件中,这真是太棒了。这表明 OSS 仍然活跃!
OSS 倡议真正支持专有项目,即使它们不将自己的份额回报给社区。而且大公司年复一年地对回馈 OSS 越来越感兴趣。

开源存在于非 Linux 平台上。

但这并不意味着这些平台是开源的。

这意味着如果我正在为 Linux 编程,并且我想包含对其他平台的支持,我该怎么做?我不会为封闭源代码许可证付费,以便我可以将封闭操作系统加载到我的计算机上(或者在一家供应商的情况下,购买一台新的计算机,该计算机将合法运行他们分发的操作系统)。这不是一个学术问题;我使用 Qt 和 C++ 和 Python,所以堆栈是跨平台的,但在测试方面,我感到茫然。

是的,跨平台可移植性是理想的,但目标平台正在积极使其难以实现。

这是一篇令人费解的文章。看看 sourceforge 或 google code。始终有数千个用于非 Linux 平台的开源项目。

或者您是说 opensource.com 需要开始涵盖更多 Linux 主题以外的内容吗?因为如果真是这样,那么我会去找另一个网站,因为我来这里是为了获得我在 Linux 上的开源解决方案。我可以去网络上的任何其他地方找到有关其他平台上的开源的信息。

或者您只是公开宣布您要切换到 Mac 或 Windows?

真的不清楚这里的信息是什么。

与水或电不同,操作系统会监视您并做其他事情,就像它声称要做的那样。
因此,操作系统(或任何其他通用硬件/软件)不能仅仅与水管相提并论,应该被所有人认为更重要。

作为 Linux 和开源的相对新手,这真的引起了我的共鸣

“虽然我将永远是 Linux 的热情粉丝和用户,并且我相信这种全面的开放性仍然非常重要,但我确实认为这里的机会比 Linux 本身更广泛:它是关于社区协作,无论它可能存在于何处、哪个角落和哪个缝隙。”

在我看来,使用非 Linux 操作系统不应成为那些对开源感兴趣的人的入门障碍。尤其是在如此多的人不使用 Linux 的情况下。

>我毕生致力于理解社区和领导力,

????
真的吗?

因为我对 Bacon 职业生涯的记忆是,他通过一个播客成名,他在播客中批评 FLOSS 中的一切人和事,并且表现得像个大学生。
当然,他说这是“幽默”,但这只是掩盖他以前是谁的借口。

然后他 180 度大转弯,他变成了你的老父亲,告诉你如何表现,你可以说什么和不能说什么,并试图让孩子们冷静下来,阻止他们做他以前做过的事情。没有人喜欢一个爱说教的戒酒者告诉他们不要做他做过的事情。

在他担任社区保姆期间,Canonical 一次又一次、一遍又一遍地证明,它无法与他人合作或被信任(还记得将您的内部硬盘搜索发送给亚马逊以换取金钱吗?)。
令人震惊的是,一家以社区为 BS 噱头的公司竟然会不断搞砸它,并且无法与他人合作。

我会说这是一个失败,但我相信像以前一样,Bacon 会找借口。

至于任何平台上的开源...感谢您提醒我们,情况一直如此。
十年前,VLC、Firefox、Thunderbird 和 OO(后来的 LO)使从 Win 切换到 Linux 变得容易,因为它是跨平台的。
2015 年来电,你来晚了。

开源不是一件事情,而是很多事情,因为有数十种开源许可证,其中大多数对开发人员来说完全没用。

但这就是本网站的宗旨:将“开源”一词漂白为毫无意义。

Bacon 是这个网站的理想人选。

我还没有读过您本系列之前的任何文章,但我同意您的观点。

您使用什么操作系统真的没关系。最重要的是您知道如何使用它并创造一些有趣的东西,让所有操作系统的用户都能从中受益。

不幸的是,通过拍拍 Linux 社区的肩膀征求意见,您直接走进了蛇坑。大多数 Linux 粉丝都有一个非常奇怪的想法,认为 Linux 是理想的开源项目。以至于他们故意忽略了 Linux 上的“systemd”软件正在积极破坏 Linux 在 Linux 之外贡献代码的能力。虽然 Linux 是开源的典型代表,但我不会将 Linux 视为整个自由软件社区可以取得成就的一个好例子。Linux 使用的大量代码根本不是开源的,而且它的从业者通常对在其他平台上培养开源工作没有兴趣。

您将看到的几乎唯一的跨平台开源是一些应用程序,例如 LibreOffice 和商业支持的工具,例如 Qt,并且只有当它们在 Linux 以外的平台上拥有用户群时才会如此。

已经提到了 Python,但在跨平台方面,它就像 Mono/.Net 一样,那简直是个笑话。跨平台工作的 Python 代码版本使用旧版本的 Python,即 Python 2.7,因为 Python 2.7 不再积极开发。Linux 和 Windows 上的 Mono 和 .Net 包并不等效,而且在不久的将来也不太可能等效。
我所说的情况有罕见的例外,我相信您可以找到一些例外,但只要 Windows 和 MacOS/iOS 被视为“敌人”,恐怕很少有人真正理解跨平台是用户自由的关键。

您谈到了封闭的专有平台用户的障碍,但您忽略了一个事实,即封闭源代码操作系统对跨平台开发存在真正的准入障碍,而且这些障碍年复一年地越来越高。我们应该使事物跨平台吗?当然,如果我们有愿意参与并完成这项工作的参与者,但如果开放社区发现参与和为封闭平台开发成本太高,请不要将责任归咎于开放社区和项目。

“让我们鼓励一个 Linux 成为一种选择而不是社会义务的世界。”
如何实现?这是一个伟大的目标……您实现该目标的策略是什么?您使用什么策略来实施该策略?

我不知道如何在没有足够的人实际使用 linux 或 qnx 或其他任何东西……并尝试与围墙花园中的人合作的情况下实现该目标。

除非您以 Linux 用户身份出现并要求您的创意合作者实际使用开放数据和跨平台 API,否则您实际上如何做到这一点?

Linux 作为一种理论选择……根本不会说服“我只是希望它能工作”的人们从封闭数据格式转向开放数据格式。您必须在他们的工作关系中使其对他们很重要,这意味着……运行一个古怪的操作系统或需要开放数据的工具……并使协作环境在工具方面是异构的。这样做会对您的其他合作者产生实际成本,否则他们将从同质环境的效率中受益。工作流程中的同质化存在强大的网络效应。它们与开放标准和开放数据正交。对于某些项目时间表而言,同质的专有工作流程可能与开放标准/数据工作流程一样高效。

开放数据之所以重要,仅仅是因为它对于完成您的工作是必要的。如果您有任务存档您的工作并期望不与您有工作关系的其他人员重新接触它……您会考虑它。

如果您只是发布动态内容,例如新闻通讯或播客或数字艺术品……任何艺术作品,一旦发布就基本上“完成”了……您为什么要关心导致该作品的数字作品是否采用开放格式?请记住,我们谈论的不是自由理想主义者……像您或我……我们谈论的是那些只想完成工作的人……无论操作系统是什么……无论应用程序是什么。您可以谈论开放数据的理论优势,但另一轮空谈不会说服他们。

所以,我们言行一致。我们带着他们不使用的计算环境,带着他们不使用的工具进来,然后我们去……与我们合作。并完成数据交换要求。并准备好处理“好吧,你为什么不买一台 mac 并使用我已经使用的 adobe/任何东西或任何专有数据格式/扩展名”。

除非您有其他行动计划。如果您有,请分享。

-jef

知识共享许可协议本作品根据知识共享署名-相同方式共享 4.0 国际许可协议获得许可。
© . All rights reserved.