1
- ## 什么是开源?(What)
1
+ # 什么是开源?(What)
2
2
3
- ### 课程目标
3
+ ## 课程目标
4
4
5
5
1 . 理解开源的多元定义(技术、模式、文化)。
6
6
2 . 通过真实案例感知开源的影响力。
7
7
3 . 激发参与开源的兴趣。
8
8
9
9
---
10
10
11
- ### 一、教学设计
11
+ ## 一、教学设计
12
12
13
13
1 . ** 互动投票**
14
14
- ** 工具** :使用在线工具让学生投票选择日常使用的软件:Chrome、安卓手机、VS Code、Firefox 等,揭晓答案均为开源或基于开源。
18
18
19
19
---
20
20
21
- ### 二、开源的形式
21
+ ## 二、开源的形式
22
22
23
- #### 1。开源作为一种软件类型(OSI 定义)
23
+ ### 1。开源作为一种软件类型(OSI 定义)
24
24
25
25
开源不仅仅是一个技术术语,它还承载了文化和模式的多重意义。开源软件的定义由** 开放源代码促进会(OSI)** 给出,是至今为止广泛认同的标准。OSI 的定义将开源软件描述为:
26
26
60
60
61
61
#### 🌍 ** 基础设施层:开放协议主导**
62
62
63
- ** TCP/IP 协议栈(1970s)**
63
+ ##### TCP/IP 协议栈(1970s)
64
64
65
65
- ** 背景与作用** :由** 美国国防部高级研究计划局(DARPA)** 资助开发,** TCP/IP 协议** 成为互联网的通信基础。该协议栈的** 完全开放性** 让世界各地的机构得以自由实现并在全球范围内互联互通。
66
66
- ** 关键意义** :这为互联网的快速扩展奠定了基础。TCP/IP 协议成为全球网络连接的标准,极大推动了现代互联网的形成。
67
67
- ** 典型案例** :** BSD UNIX(1980s)** 是开源实现 TCP/IP 协议栈的一个例子,BSD UNIX 通过开源实现的 TCP/IP 协议栈成为了后来的 ** FreeBSD** 和 ** NetBSD** 等开源操作系统的基础。
68
68
69
- ** 电子邮件系统**
69
+ ##### 电子邮件系统
70
70
71
71
- ** 开放协议** :SMTP 和 POP3 协议开放,成为全球邮件传输和接收的标准。尽管早期许多电子邮件系统都有闭源实现,但随着开源软件的发展,开源邮件系统逐渐占据主导地位。
72
72
- ** 闭源案例** :如 ** Lotus Notes** (1989),其邮件系统在早期占据市场主导地位,但完全闭源,限制了用户的定制和扩展。
96
96
97
97
随着计算机和互联网的普及,应用层软件成为了开源与闭源之争的关键战场。在这个层面,开源和闭源的斗争更为激烈,影响也最为广泛。
98
98
99
- ** 闭源主导领域**
99
+ ##### 闭源主导领域
100
100
101
101
- ** 浏览器大战** :** Netscape** 最初是闭源的(1994 年),它曾是最受欢迎的浏览器。然而,由于开源运动的推动,Netscape 决定在 1998 年开源其浏览器核心,最终催生了 ** Mozilla Firefox** 这一开源浏览器的诞生,直接挑战了微软的 ** Internet Explorer** 。
102
102
- ** 办公软件** :** 微软 Office** (1989 年)凭借其强大的功能和用户基础,长期占据办公软件市场的统治地位,且完全闭源,极大限制了用户的定制和扩展能力。
103
103
104
- ** 开源亮点**
104
+ ##### 开源亮点
105
105
106
106
- ** Apache HTTP Server(1995)** :作为世界上最早的开源 Web 服务器,Apache HTTP Server 迅速击败了当时闭源的 ** Netscape Enterprise Server** ,成为全球最流行的 Web 服务器软件。
107
107
- ** Perl 语言(1987)** :开源的 Perl 编程语言成为了早期 Web 开发的核心工具之一。它的开源特性使得开发者可以自由修改和扩展,迅速发展成开发人员的首选语言。
112
112
113
113
除了技术因素外,开源运动的成功还离不开其背后深厚的** 文化基因** ,它源于对** 知识共享** 和** 协作创新** 的深刻理解。
114
114
115
- ** RFC 文化(始于 1969)**
115
+ ##### RFC 文化(始于 1969)
116
116
117
117
- ** 开放标准的倡导者** :互联网工程任务组(IETF)通过** 公开征求意见稿(RFC)** 推动互联网协议的标准化。例如,** HTTP/1.0 规范** 在 1996 年以 RFC 1945 的形式发布,为全球的网络通信提供了共同语言。
118
118
119
- ** 黑客伦理的影响**
119
+ ##### 黑客伦理的影响
120
120
121
121
- ** 开源的文化传承** :MIT 的 ** AI 实验室** 等机构提倡代码共享,早期的 ** ITS 操作系统** 就是一个典型的例子。其开放的代码理念,成为了日后现代开源运动的精神先驱。
122
122
- ** Richard Stallman 与 GNU 计划** :1983 年,** Richard Stallman** 发布 ** GNU 宣言** ,并启动了 GNU 计划,致力于创建一个完全自由的操作系统。这标志着现代开源运动的觉醒,为后来的 ** Linux** 内核等开源软件提供了理论支持和实践基础。
@@ -167,22 +167,22 @@ flowchart TD
167
167
168
168
开源的核心不仅仅是技术的共享,它深刻地改变了传统软件开发中的协作方式。不同的开源协作模式使得全球开发者能够共同工作,从** 传统闭源开发** 到** 企业内部开源** ,再到** 完全开源** 的广泛采用,开源逐渐形成了独特的协作密码。
169
169
170
- ** 传统闭源开发**
170
+ ##### 传统闭源开发
171
171
172
172
- ** 典型特征** :
173
173
- 代码仅限于内部团队访问,外部开发者无法获取源代码。
174
174
- 严格的知识产权保护,源代码无法修改或分发。
175
175
- ** 案例** :** Windows 95** 的开发过程中,微软严格控制代码的所有权和访问权限,确保仅限内部开发人员修改和发布。
176
176
177
- ** 企业内部开源(Inner Source)**
177
+ ##### 企业内部开源(Inner Source)
178
178
179
179
- ** 核心逻辑** :
180
180
- 外部依旧保持闭源,但内部采用开源协作方式,跨团队共享代码库,允许内部贡献和修改。
181
181
- ** 案例** :
182
182
- ** 微软** :通过“One Engineering System”实施内部开源,促进跨部门的协作与代码共享。
183
183
- ** 沃尔玛** :采用内部开源模式开发电商平台,加速了门店系统的开发与迭代。
184
184
185
- ** 完全开源**
185
+ ##### 完全开源
186
186
187
187
- ** 黄金标准** :
188
188
- 代码完全公开,任何人都可以参与修改和贡献,全球开发者共同推动项目进步。
@@ -197,7 +197,7 @@ flowchart TD
197
197
198
198
开源不仅是一种技术决策,它还是一种协作模式的变革。通过对不同协作模式的分析,我们可以理解,开源并非是唯一选择,而是在可持续性和普惠性之间寻求最佳平衡。
199
199
200
- ** 不同模式的核心差异点**
200
+ ##### 不同模式的核心差异点
201
201
202
202
| 维度 | 传统闭源 | Inner Source | 完全开源 |
203
203
| -------- | -------- | ------------ | ---------- |
@@ -212,11 +212,11 @@ flowchart TD
212
212
213
213
开源的影响力远不止局限于软件开发领域,它已经超越了技术,成为一种全球范围的协作范式。在不同的领域,开源思维和模式正被应用到各类复杂系统和社会工程中。
214
214
215
- ** 超越代码:人类协作的元模式**
215
+ #### 超越代码:人类协作的元模式
216
216
217
217
开源不仅仅局限于数字世界,它在现实世界中也有广泛的应用场景。这些历史上的巨大协作工程和项目都能为我们提供开源模式的启示。
218
218
219
- ** 现实世界中的“开源式协作”**
219
+ #### 现实世界中的“开源式协作”
220
220
221
221
- ** 古罗马引水渠建设** :多个城邦共享水利工程技术,技术改进方案被刻在公共石碑上,类似今天的 ** Git 提交历史** 。
222
222
- ** 维基百科编辑** :全球用户可以编辑条目,类似于 ** Pull Request** 的方式,且条目的讨论页记录了社区的争议解决过程,类似于 ** Code Review** 。
@@ -234,7 +234,7 @@ timeline
234
234
1991年 : Linux内核开发(全球分布式协作)
235
235
```
236
236
237
- ** 深度对比:金字塔 vs Linux 内核**
237
+ #### 深度对比:金字塔 vs Linux 内核
238
238
239
239
| 维度 | 古埃及金字塔建造 | Linux 内核开发 |
240
240
| -------- | ---------------------- | ----------------------------------- |
@@ -287,7 +287,7 @@ timeline
287
287
288
288
数学作为人类最早的开源实践之一,通过符号系统的共享、定理的公开证明、知识的积累和去中心化协作,展现了开源的原始特征。
289
289
290
- ** 数学的“开源特性”解剖**
290
+ ##### 数学的“开源特性”解剖
291
291
292
292
- 符号系统的开源:阿拉伯数字、希腊字母全球通用。
293
293
- 知识积累的开放性:定理证明可复现、可验证、可改进。
@@ -308,7 +308,7 @@ timeline
308
308
309
309
#### 🌐 开源文化 DNA:从数学到数字时代
310
310
311
- ** 共享符号系统**
311
+ ##### 共享符号系统
312
312
313
313
- 数学:∑ 积分符号 → 编程:{} 代码块语法
314
314
- 案例:LaTeX 数学排版系统开源标准
@@ -317,7 +317,7 @@ timeline
317
317
318
318
#### 🧪 互动实验:数学论文 vs 开源项目
319
319
320
- ** 对照分析表**
320
+ ##### 对照分析表
321
321
322
322
| 维度 | 数学论文系统 | 现有开源项目系统 |
323
323
| ---------------------- | -------------- | ---------------- |
@@ -331,15 +331,15 @@ timeline
331
331
332
332
#### 🔮 文化投射:开源理念的现代显化
333
333
334
- ** 跨领域开源范式**
334
+ ##### 跨领域开源范式
335
335
336
336
| 领域 | 开源实践 | 数学渊源 |
337
337
| ------------------ | ---------------------- | ---------------------- |
338
338
| ** 区块链** | 以太坊智能合约开源 | 图灵可计算理论开放验证 |
339
339
| ** 生物技术** | CRISPR 基因编辑协议共享 | DNA 双螺旋结构开放研究 |
340
340
| ** 航天** | SpaceX 公开火箭设计蓝图 | 开普勒行星定律开源传播 |
341
341
342
- ** 开源文化主流的特性**
342
+ ##### 开源文化主流的特性
343
343
344
344
1 . ** 可溯源性** :所有创新需标注知识谱系(如数学引用体系)。
345
345
2 . ** 可验证性** :过程数据完全开放(如 Git 历史记录)。
@@ -358,4 +358,3 @@ timeline
358
358
359
359
** 通过混凝土的千年轮回,理解开源不是技术选择,而是文明存续的生存策略。**
360
360
** 从泥板上的楔形数字到 GitHub 的星标仓库,人类始终在践行同一个真理:共享使知识永生。**
361
-
0 commit comments