Skip to content

Commit

Permalink
Update README.md
Browse files Browse the repository at this point in the history
  • Loading branch information
Athanlaich authored Sep 9, 2024
1 parent 591c553 commit aab6419
Showing 1 changed file with 20 additions and 20 deletions.
40 changes: 20 additions & 20 deletions sources/OSPO-101/module1/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -123,7 +123,7 @@ link: https://github.com/todogroup/ospo-career-path/blob/main/OSPO-101/module1/R

### 章节概述

在本节中,我们将简要回顾自由软件运动的起源,以及随后的开源软件的诞生。我们将讨论实用主义与理想主义如何影响开源成为组织中业务和技术战略的关键组成部分。还将简要讨论开放标准在这一领域的演变
在本节中,我们将简要回顾自由软件运动的起源,以及随后的开源软件的诞生。我们将讨论实用主义与理想主义如何影响开源成为组织中业务和技术战略的关键组成部分。此外,我们还将简要讨论开放标准在这一领域的演变

### 学习目标
在本节结束时,你应该能够:
Expand All @@ -142,9 +142,9 @@ link: https://github.com/todogroup/ospo-career-path/blob/main/OSPO-101/module1/R

在计算的早期(1950年代至1960年代),软件主要由早期计算机公司的学术人员和企业研究人员制作。编写软件既困难又耗时,通常作为**公有领域**作品进行共享。这些作品不归个人作者或艺术家所有。任何人都可以在不获得许可的情况下使用**公有领域**作品,但无法拥有它。软件本身不被视为商品,因为它需要专门的(且昂贵的)计算机硬件才能运行。

在20世纪60年代末,随着计算机操作系统和编译器技术的发展,构建有效软件的过程变得更加简便,这些软件能够在多种计算机平台上运行。这直接导致了只专注于软件开发的公司的兴起。1974年,软件获得了版权保护的权利,这为软件成为重要的商品铺平了道路,这些公司为了保护自己的软件产品进行了不懈的斗争。
在20世纪60年代末,随着计算机操作系统和编译器技术的发展,构建有效跨平台软件的过程变得更加简便,这些软件能够在多种计算机平台上运行。这直接导致了只专注于软件开发的公司的兴起。1974年,软件获得了版权保护,这为软件成为重要的商品铺平了道路,这些公司为了保护自己的软件产品进行了不懈的斗争。

1970年代后期和1980年代初见证了仅分发机器可读代码而不提供相应的人类可读源码的趋势。1980年代初,麻省理工学院的研究员 Richard Stallman 开始了一个项目,编写后来成为 GNU 操作系统的内容(该系统后来启发了现在流行的 Linux 内核)。在此期间,他创立了自由软件基金会(Free Software Foundation),并撰写了[自由软件定义](https://en.wikipedia.org/wiki/The_Free_Software_Definition) ,以试图把在 MIT 开发的软件从已经改变和占有它的企业手中夺回。
十九世纪 70 年代末到 80 年代初见证了仅分发机器可读代码而不提供相应的人类可读源码的趋势。1980年代初,麻省理工学院的研究员 Richard Stallman 开始了一个项目,编写后来成为 GNU 操作系统的内容(该系统后来启发了现在流行的 Linux 内核)。在此期间,他创立了自由软件基金会(Free Software Foundation),并撰写了[自由软件定义](https://en.wikipedia.org/wiki/The_Free_Software_Definition) ,以试图把在 MIT 开发的软件从已经改变和占有它的企业手中夺回。

自由软件基金会的另一个主要成就是创建了 GNU 公共许可证(GPL),该许可证使用“Copyleft”的概念,要求对自由软件所做的任何更改都必须提供给接收自由软件的用户。Linus Torvalds(Linux操作系统的创造者)在1991年发布了他的第一个内核,并使用 GPL 进行许可。正如我们现在所知,它已经成为全球大部分技术的基础。

Expand All @@ -158,7 +158,7 @@ link: https://github.com/todogroup/ospo-career-path/blob/main/OSPO-101/module1/R

* 免费,即“免费啤酒”的说法。

Christine Peterson 和其他支持 “开源” 的人试图在这里澄清“自由”的概念——明确表明源代码将对外开放以供检查、再分发和修改。随着越来越多的公司参与这些软件生态系统,开源软件的吸引力逐渐增强,很大程度上是因为 “自由” 软件没有像“专业”开发的软件那样被认为具有价值。事实上,优质的开源软件数量只在不断增加,而且其中许多是由专业人员开发的。
Christine Peterson 和其他支持 “开源” 的人试图在这里澄清“自由”的概念——明确表明源代码将对外开放以供检查、再分发和修改。随着越来越多的公司参与这些软件生态系统,开源软件的吸引力逐渐增强,很大程度上是因为 “自由” 软件没有像“专业”开发的软件那样被认为具有价值。事实上,优质的开源软件数量一直在不断增加,而且其中许多是由专业人员开发的。

然而,随着企业参与的增加,自由软件基金会的倡导者和开源社区在世界观上出现了分歧。具体来说,这主要围绕着理想主义与实用主义。

Expand All @@ -168,7 +168,7 @@ Christine Peterson 和其他支持 “开源” 的人试图在这里澄清“

**实用主义**

在这里,主要考虑的是技术因素,包括更快更好的开发,更多的贡献者和审稿人,更容易的调试等。
在这里,主要考虑的是技术因素,包括更快更好的开发,更多的贡献者和评论者,更容易的调试等。

需要注意的是,更具意识形态的观点同样具有强烈的技术动力,在很多情况下,两者的目标是一致的。例如:

Expand All @@ -188,15 +188,15 @@ Christine Peterson 和其他支持 “开源” 的人试图在这里澄清“

客户开始向供应商施压,要求他们允许异构系统结合最佳解决方案来解决问题。为了实现这一点,开放标准开始发展,允许许多人协作,提出在应用程序和系统之间有效传输数据的方法。一些开放标准一开始并不是有意成为标准的。一些标准始于开源项目,并通过广泛采用成为*事实上的*标准。最常见的例子是 Linux 内核,它已成为某些设备类别的*事实上的*标准,例如在高性能计算领域,Linux 为全球100%的Top 500超级计算机提供动力。

这里有太多开放标准无法一一列举,但您可以在[维基百科](https://en.wikipedia.org/wiki/Open_standard)上找到一个相当不错的列表。浏览这个列表,你会发现一些你可能知道的(TCP/IP, PDF),以及一些你可能依赖但不太了解的(HTML, USB)。
这里有太多开放标准无法一一列举,但您可以在[维基百科](https://en.wikipedia.org/wiki/Open_standard)上找到一个相当不错的列表。浏览这个列表,你会发现一些你可能知道的(TCP/IP, PDF),以及一些你可能依赖但不太了解的“开放标准”(HTML, USB)。

### 历史正在发生

提供这一历史背景的主要原因在于它既告知了过去的情况,也象征着在软件和技术行业中没有什么是静止的。永远会有如何在自由软件的理想主义方面与商业价值的实用主义方面之间取得平衡的问题。

此外,越来越多的思考围绕计算的伦理方面,以及它如何影响从许可、知识产权到协作模式的一切。
此外,越来越多的思考围绕计算的伦理方面,以及它如何影响从许可证、知识产权到协作模式的一切。

了解我们在开源和开放标准方面的历史,可以让我们更好地评估未来我们需要走的方向
了解我们在开源和开放标准方面的历史,可以让我们更好地评估未来要走的方向

# 章节: 使用开源的原因

Expand All @@ -212,7 +212,7 @@ Christine Peterson 和其他支持 “开源” 的人试图在这里澄清“

* 描述开源的社区和协作模型。

* 明确阐述开源为企业提供价值的商业理由
* 明确阐述开源为企业提供价值的坚实的商业理由

* 解释如何将开源和开放标准结合以增加技术解决方案的整体价值。

Expand All @@ -224,13 +224,13 @@ Christine Peterson 和其他支持 “开源” 的人试图在这里澄清“

* 开发资源的地理分布。

* 分散的决策能力
* 去中心化的决策能力

* 开发和决策的透明度。

* 精英管理——通过持续有价值的贡献获得影响力。

此外,大多数社区表现出紧密的垂直层次结构与松散的水平结构的结合,这使得小改动(开源的通用语言)可以向上流动,经过许多快速审查周期,从而提供一系列“制衡机制”以帮助确保软件质量。
此外,大多数社区表现出紧密的垂直层次结构与松散的水平结构的结合,这使得小改动(开源的通用语言)可以通过许多快速审查周期向上流动,经过许多快速审查周期,从而提供一系列“制衡机制”以帮助确保软件质量。

一个社区组织结构的示例:

Expand All @@ -244,21 +244,21 @@ Christine Peterson 和其他支持 “开源” 的人试图在这里澄清“

* 影响力和地位不是通过头衔或职位来传达的——精英管理占据主导地位。

* 源代码和决策的透明性至关重要——没有旁边的对话或决定
* 源代码和决策的透明性至关重要——没有私下的对话或决策

* 对地理分布团队的支持是内置的——异步的通信模式和文化是常态。

一些组织已经从开源社区中借鉴经验,并将这些经验应用到他们自己的内部努力中(称为“内源”)以利用它们提供的速度和灵活性。这样做还可以帮助建立必要的机构文化,从而更容易参与上游开源生态系统。

### 商业视角

在讨论了一些社区开发模式之后,让我们来看一下各种规模的企业选择开源作为宝贵的技术工具来解决实际问题的原因
既然我们已经讨论了一些社区的开发模式,接下来让我们来看一下各类规模的企业选择开源作为一种有价值的技术工具来帮助他们解决实际问题的原因

企业内部使用开源软件具有以下优势:

* 速度

* 成本更低
* 低成本

* 可定制性

Expand All @@ -274,17 +274,17 @@ Christine Peterson 和其他支持 “开源” 的人试图在这里澄清“

### 开源如何加快开发速度?

开源软件在加速软件开发周期方面发挥了重要作用。一个最显著的例子就是移动设备市场,我们看到主要的新产品在6到12个月的周期内发布。开源对于快速演化交付至关重要。
开源软件在加速软件开发周期方面发挥了重要作用。一个最显著的例子就是移动设备市场,主要的新产品在6到12个月的周期内发布。开源对于快速演化交付至关重要。

那么开源到底是如何加速开发的呢?

* 获取开源软件通常更快更容易——无需采购订单、合同、工作说明书或许可谈判就可以开始使用。

* 开源部署通常更快。与通常漫长且繁琐的商业安装、配置和实施周期不同,开源来自于一种下载即用的文化。

* 领先的开源项目以社区驱动的功能演进,而非收入驱动的管理决策为主。这种快速的决策方式(通常是一种[懒共识](http://community.apache.org/committers/lazyConsensus.html))使项目能够非常迅速地整合新功能和修复问题。
* 不同于收入驱动,领先的开源项目通过社区驱动快速演进。这种快速的决策方式(通常是一种[懒共识](http://community.apache.org/committers/lazyConsensus.html))使项目能够非常迅速地整合新功能和修复问题。

* 由于广泛的社区测试,成熟的开源软件通常具有更高的质量。事实上,根据 [Forrester Research 的研究](https://fossbazaar.org/system/files/OpenSourceForTheNextGenerationOfEnterpriseIT.pdf),软件质量在92%的情况下达到了或超出了预期。
* 由于广泛的社区测试,成熟的开源软件通常具有更高的质量。事实上, [Forrester Research 研究](https://fossbazaar.org/system/files/OpenSourceForTheNextGenerationOfEnterpriseIT.pdf)表明,软件质量在92%的情况下达到了或超出了预期。

* 开源支持通过源代码、协作社区、接口和工具进行定制。

Expand All @@ -294,7 +294,7 @@ Christine Peterson 和其他支持 “开源” 的人试图在这里澄清“

使用开源软件可以通过多种经过验证的方式显著降低开发成本:

* 最近的一项 [Red Hat 研究](https://www.redhat.com/cms/managed-files/rh-enterprise-open-source-report-detail-f21756-202002-en.pdf) 显示,开源软件的总体拥有成本比商业/闭源解决方案低30%。
* 最近的一项 [Red Hat 研究](https://www.redhat.com/cms/managed-files/rh-enterprise-open-source-report-detail-f21756-202002-en.pdf) 显示,开源软件的总体成本比商业/闭源解决方案低30%。

* 使用开源软件可以避免功能过剩。许多闭源产品具备的功能超出了客户的实际使用需求,而且这些功能通常是打包销售的,必须支付相应费用。

Expand Down Expand Up @@ -328,13 +328,13 @@ Christine Peterson 和其他支持 “开源” 的人试图在这里澄清“

* 软件开发工具的创新和集成很大程度上是开源领域的。

* 移动通信领域的惊人创新速度只有通过开源才能实现。尽管Android是主要例子,但即使是像苹果的 iOS 这样的闭源平台也主要使用了数百个开源软件库和组件构建
* 移动通信领域的惊人创新速度只有通过开源才能实现。尽管 Android 是主要例子,但即使是像苹果的 iOS 这样的闭源平台也大量地使用了数百个开源软件库和组件构建

* 像其他互联网部分一样,社交媒体软件平台是从开源软件中产生并通过开源软件发展的。

* 科学计算和大规模并行计算几乎完全是开源领域。

许多开源社区展示了快速演进,通过参与这些社区可以加速您自己的创新。开源的自下而上式优胜者治理机制将所有权和责任重新引导回开发团队。
许多开源社区都展现出快速的演进,参与其中可以帮助你加速自身的创新。开源的自下而上式优胜者治理机制将所有权和责任重新引导回开发团队。

引入新软件理念、测试新功能并发展活跃用户群的最佳方式之一是通过开源社区。

Expand Down

0 comments on commit aab6419

Please sign in to comment.