第 01 期 · 软件的生产、分销和消费

软件市场演变 / 闭源与开源 / 大教堂与集市 / 交付方式 / 订阅

30张 Slide 01 / 12 ←→ 翻页 · F 全屏 · HomeEnd
01 / 30
OPEN SOURCE ECONOMICS

开源经济学
第 一 讲

软件的生产、分销与消费
前情提要 第 0 讲 · 增长的开源经济
LECTURE 01 ECONOMICS OF SOFTWARE 30 SLIDES

LECTURE · OPEN

开源与经济学

开源经济学 12 讲座  ·  第一期 「开源之道」

ROUND TABLE · A RITUAL OF EQUAL DIALOGUE

软件作为商品——流动 · 加速 · 颠覆

Q1

软件作为一种特殊商品,如何被生产、分发和消费? — 从生产线到用户桌面的价值链审视

Q2

集装箱、互联网、云计算如何依次改变了软件的交付方式? — 三次基础设施革命驱动的流通加速

Q3

开源的出现,是软件商品化的必然,还是对商品化逻辑的颠覆? — 范式之争:延续还是断裂

议程

四个核心问题的制度框架

AGENDA
I
软件是如何生产的
持续交付及其演化
II
软件作为商品的合理性
闭源软件是如何销售的
III
开源软件的商业合理性
开源软件的商业模式
IV
制度比较与综合框架
从生产逻辑到交换逻辑的统一分析
Working Paper · On the Economics of Open-Source Value No. 5 / 30
“

On the one hand, information wants to be expensive, because it's so valuable. The right information in the right place just changes your life. On the other hand, information wants to be free, because the cost of getting it out is getting lower and lower all the time.

So you have these two fighting against each other.

Stewart Brand & Steve Wozniak First Hackers Conference — 1984

理解开源的供求关系

06 / 30

正如东南亚水上市场中,货物在小船间流转——开源的世界里,供给与需求又是如何相遇的?

01 供求关系看开源
02 谁是供应方?
03 需求方又是谁?
04 交付的过程是如何实现的?有何保障?
05 理解市场:一个协商的过程
06 谁在破坏市场?基金会的出现~
Supply & Demand in Open Source 06 — 30
软件交易集散地 / 仓库
07 / 30
全球贸易动脉 — 软件分发的物理类比  |  每一个平台都有自己的"港口"
S
Mobile · 移动端
智能手机
App Store/Google Play/各厂商应用市场
P
Desktop · PC 端
PC 桌面
Microsoft Store/App Store/dnf/apt-get
S
Server · 服务器
服务端部署
Docker Image/yum install/npm install
D
Developer · 开发者
包管理器与仓库
PyPI/CPAN/Golang/Maven/RubyGems
C
Cloud · 云计算提供商
IaaS  ·  PaaS  ·  SaaS  ·  三方市场
从基础设施到服务的完整分发链 — 云厂商成为新一代"港口运营商"
信息如何汇聚与爆发:集装箱的物流叙事
08 / 30
CONVERGENCE
01
集装箱的案例
02
海上贸易带来全球繁荣
03
港口的形成与搬运工
04
集装箱的出现与大型运输船
05
现代物流交付
06
疫情下苏伊士运河原地掉头
CHAPTER · 03
return 0;
{
if (landed)
abort();
}
MODULE LANDING
function nav()
compute();
delta_v
thrust=1;
// guidance
SYSTEM AGC
loop forever
tick();
exec();
check();
// executive
EXECUTIVE
load memory
init();
SET A 0
CMP B 1
CLA
ASM · 1969
HISTORY OF SOFTWARE

代码 · 程序 · 软件
发展简史

从打孔卡片到登月代码——
软件工程史的奠基时刻
PART THREE 1940 — 2024
09 / 30
Mainframe
TAPES
DISKS
Pre-Unix Era

早期计算的厚重时代

1970 年以前

  • 01纸带打孔——将指令物理编码
  • 02先在纸上计算——笔算先行,机器验证
  • 03个人独大的时代——单用户独占系统
  • 04重大项目工程攻关——计算作为附属
10 / 30

From Laboratories to a Shared System

软件智慧驾驭硬件机械

01 UNIX 的出现从 PDP-7 诞生的一款通用操作系统
02 实验室协作Bell Labs 工程师的集体创造
03 分时操作系统多用户共享计算资源的革命
04 模块化编程思想小而专的工具,组合成强大系统
05 学术交流与互惠大学与产业之间的知识回流,塑造整个软件生态
— UNIX Era · 1969
11  /  30
1975 — 1976

家酿俱乐部与
一纸公开信

从纸带上的 BASIC 代码,到改变软件产业的一句话

  • 1975 家酿俱乐部成立,Bill Gates 的恩怨就此埋下
  • 1975 BASIC 语言的出现
  • 1976 纸带的展示与售卖
  • 1976 复刻纸带,代码开始传播
  • 1976 Bill Gates 大怒
  • 1976 《致电脑爱好者的一封公开信》发表
DATA · MEMORY · REBELLION
12 / 30
13 / 30

软件分发的秩序

From Floppy to Network
01 PC的发展、软盘的发明
02 协作不再局限于实验室
03 但仍然受制于地理
04 可擦写
05 观念的跃迁
一个观念的故事
1992年,宫敏从芬兰背回了Linux源代码,没有背回来的是协作。
—— 源代码可以携带,协作无法打包
Phase I · Pre-Internet Era

互联网前夜的开源:
大教堂与软盘的年代

  • 01 许可与软盘交换
  • 02 许可的出现与流行
  • 03 协作开始出现在校园和科研机构之间
  • 04 主要工作发生地仍然在大型办公场所
  • 05 大教堂式的开发模式
01101001 01100101
01110100
10110010
01011100
11001010
01101001
10100110
01110100
10011010
01100101
11010110
01001101
10110010
01101001
01100101
10101001
11001010 01011001
10110010
01101001
10010101
11010010
01101100
10100110
01101001
11010010
01011100
10010110
01101001
11001010
10101010
01101001
01110100 10011010
01101001
11010110
01001101
10110010
01100101
10101001
01101001
11001010
01101100
10010101
01101001
10100110
11010010
01011100
10101010
10100110 01101001
11010110
01011001
10011010
01101001
11001010
01100101
10101001
10110010
01101001
11010010
01011100
01101001
10010110
10101010
01101100 10100110
11010110
01101001
10011010
01011001
11001010
10110010
01101001
11010010
01100101
01011100
01101001
10101001
10010101
10010101 01101001
11010110
10100110
01101100
11001010
01101001
10110010
01011001
10011010
01101001
11010010
01100101
10101010
01011100
10101001
10010110
01001101 10110010
01101001
11010110
10011010
01101001
11001010
10100110
01100101
01011001
01101001
11010010
10101001
01101001
10010110
11001010
01011100
11010010 01101100
10100110
11001010
01101001
10011010
01100101
10110010
11010110
01011100
01101001
10101001
10010101
01101001
11001010
01011001
CHAPTER 04 · INFRASTRUCTURE

互联网的崛起 & 协作的范式转移

15 / 30
DATA STREAM →

基础设施与 Killer App

// FOUNDATION LAYER
>01 互联网的崛起——数字虚空中的全球网络
>02 e-mail 成为 Killer App,流行指数级增长
>03 新闻组 & 邮件列表开启 富文本 程序协作
>04 FTP 加速软件分发——下载而非拷贝

"集市式的开发模式成为了可能——
代码在网络中流动,开发者跨越国界协作共创。"

DEVELOPER_A → INTERNET → DEVELOPER_B
NEWSGROUP ↕ COLLAB ↕ MAILING_LIST
// DECENTRALIZED · DISTRIBUTED · OPEN
云的崛起 · 软件交付的范式重构
16 / 30
城市夜幕下的光弧网络 — 云计算织就的分布式协作
云计算进一步改变了软件的交付方式,使物理基础设施退居幕后。
平台型软件市场崛起(AWS 等),构建起全球性的算力基础设施网络。
开源与专有软件在同一平台上获得公平分发,生态壁垒被大幅降低。
MaaS、PaaS、SaaS 等按需部署模式成为主流,软件即服务的新范式确立。
容器技术的出现,让云原生、微服务架构大行其道,软件部署进入前所未有的灵活时代。
Web Era · Software Distribution 17 / 30
Fragmented Cognition

当软件成为
知识碎片与分发网络

万维网重塑了软件的形态——从下载到订阅,从仓库到市场,认知边界被重新拼装。

  1. 万维网爆炸式发展,重新定义信息获取方式
  2. 网站与 P2P 成为软件分发的新通道
  3. LAMP 栈不仅成就开源,也奠基了电子商务
  4. 网站服务本身即软件构建与分发:从门户到 Google
  5. 集中式代码仓库平台涌现:SourceForge → GitHub
  6. 应用市场的出现——软件消费的最终形态

Economic Mindset · 经济学思维

18 / 30
Digital Brain / Steel

六大核心原则

Six Pillars of Economic Reasoning

  • 01 经济学的思维方式 — 框架即力量
  • 02 天下没有免费的午餐 — 一切皆有代价
  • 03 沉没成本 — 一种行为与互动
  • 04 资本 — 存在多种方式
  • 05 时间 — 一个关键因素
  • 06 信息 — 极其重要
Software-Defined Manufacturing

软件的生产——开发者、语言与工具链的秩序

01
Agents 开发者与工程师
及其工具
02
Language 开发语言
03
Human Capital 掌握开发语言
并转化的技能之人
04
Cybernetics 基于控制论的
软件工具
05
Infrastructure 服务器·网络协议
流水线·WWW
Chapter · Distributed Collaboration 20 / 30

从工厂到数字协作
文明的通信网络

  • 工业时代的工厂与数字时代的协作
  • 分工带来效率和繁荣
  • 福特汽车的创新与管理的出现
  • 文本协作超越了地理位置
  • 基于全球的协作通过模块的设计成为可能
  • 开源,让分布式协作成为现实——人类文明的伟大跨越
§ Communication Networks
MODEL 704 UNIT 01
SYS-CTRLACTIVE
MEM-STATUS64K
SW-16PROGRAM
CONSOLE I/O
LOAD…
RUN…
USER…
DEV…
21 / 30

软件的"消费"者

WHO CONSUMES SOFTWARE — A DUAL PERSPECTIVE
源代码是开发者的原料,而软件本身是使用计算机之人的工具——需要授权与许可,亦可以是更大的系统工程之组成部分。
◆ 软件即目的
开发者
以软件创造为事业
关注架构、算法与抽象
—
◆ 软件即工具
用户
浏览网页、订购餐食
关注体验与效率
娱乐为两者所共有 可嵌入更大的系统工程
Software Delivery · Chapter I 22 / 30
SIDE A Analog Era 33⅓ RPM
— The First Generation —
"Playback, one machine at a time"
Pre-Packaged Software Era

软件交付简史 · 初代

  • 01软件与硬件不可分割
  • 02大型机屈指可数,软件随之受限
  • 03定制开发占据相当大比重
  • 04安装调试流程,堪比化工机械厂
  • 05用户需求高度异构,无从标准化
图片来源:ibm.com/history/700 · IBM System/360, 1964
23 / 30 CHAPTER · III

软件交付简史之介质时代

The Physical Media Era — When Software Had Weight
Overview
从软盘到光盘,从实体商店到邮寄配送——软件在获得数字化身份之前,曾长期依附于物理介质存在。
PHYSICAL MEDIA
  • 01 软盘、光盘、U 盘—— 软件以可触摸的载体进入千家万户
  • 02 实体商店仍然是主要的分发渠道
  • 03 邮寄继承自上一个零售的时代
  • 04 EULA 的崛起——用户许可协议成为行业惯例
  • 05 Click-wrap · Browse-wrap · Shrink wrap 的发明
  • 06 软件工业化的时代正式开启
PART Ⅳ  ·  24 / 30

软件交付简史之网络下载

Phase I — 基础设施

网络分发成为常态

P2P 技术兴起,文件共享突破带宽瓶颈
Web 技术的进步——HTTP 协议普及,下载即购买路径
"先下载,后付费"成为主流交易范式
Phase II — 模式重构

订阅模式的崛起

SaaS 与持续授权取代一次性买断
云端部署使软件成为可即用的服务
"先体验,后买单"——免费增值驱动转化
25 / 30 DIVERGENCE · OPEN ↔ CLOSED

云与市场:同根分化的时代

Open-source 与 closed-source 从同一根基分化为两种交付范式

开源 · OPEN
资源即服务,选择自由
01 软件交付简史之云与市场
02 数据中心的规模化
03 计算、存储、网络可被租用与计费
04 软件围绕资源由用户自主选择
↕ SAME ROOT ↕
闭源 · CLOSED
许可即权力,所有权让渡
05 应用市场的形成
06 所有权的消失
07 许可(license)的无限权力形成
08 平台作为新的软件所有者
SAME CODE · DIVIDED FATE 同源同根,分化成两种权力结构——一种把选择权交还用户,一种把许可权握在平台手中 § 25
26 / 30
Case Study · 开源生态的流动

举个例子:Chrome 的数字之旅

01
Chromium
V8
ffmpeg
上游开源
02
Chrome / Edge
Google / Microsoft
加入闭源组件
企业衍生
03
编译与分发
官网下载
应用市场
渠道分发
04
意外
Google 被墙
脱离"正常"渠道
环境断裂
05
消费
我们每天都在
www 上频繁使用
日常依赖

手动画 Gentoo Linux 的构建之旅

from source · institutional journey
0% — BOOT STAGE3 EMERGE WORLD USE FLAGS KERNEL USERLAND 100% — ROOT
STEP 01 — BOOT
硬件就绪
U 盘刻录 LiveCD ISO,BIOS/UEFI 引导进入临时系统——一切从零开始。
↘ 建国前的荒野
STEP 02 — FOUNDATION
下载 stage3 快照(30MB)
官方预编译最小镜像,含 bash、coreutils、glibc、Portage。
↘ "建国元勋"——制度基础
STEP 03 — CHARTER
配置 Portage:make.conf
写入 ACCEPT_KEYWORDS、MAKEOPTS、FEATURES——决定什么能装、怎么编译。
↘ 发行版的"宪章"
STEP 04 — EMERGE
首次 emerge world
emerge --sync 同步 ebuild 仓库(数千上游元数据),chroot 后 --newuse --deep --update world。
↘ 全体项目从头立法
STEP 05 — USE FLAGS
USE flags 选择
同一源码编译出不同形态:+gtk -qt5 +dbus -java——制度选择在此显形。
↘ 契约的"弹性条款"
STEP 06 — CONSTITUTION
内核构建
genkernel all 或 make menuconfig——从上游选驱动、FS、模块,编译 bzImage。
↘ 发行版的"宪法"
STEP 07 — USERLAND
用户空间套件
emerge xorg-server + plasma-meta:递归编译 KDE(~600 依赖包),耗时以小时计。
↘ 社会基础设施的逐块搭建
STEP 08 — 包管理哲学光谱
Debian(预编译 .deb)—— 快速稳定   →   Fedora(预编译 .rpm)—— 前沿尝鲜   →   Gentoo(全部源码编译)—— 极致定制   ·   越接近源码,构建越慢,但定制化和透明度越高。
STEP 09 — 制度启示
发行版 = 一套"制度契约"
把数千个上游项目的协作秩序固化为可安装的系统;USE flags 是契约的弹性条款,内核配置 是宪法,stage tarball 是建国元勋——每一行 emerge 都是制度选择。
"

The world is not binary, even if it is more and more made of software, built bit by bit.

— Steve Lohr  《软件故事》

28 / 30
LECTURE I · SUMMARY
29 / 30
Lecture One · Recap

数字时代软件业的制度变迁

Ⅰ
Era One
硬件时代
协作模式 大教堂
交付方式 软盘
Ⅱ
Era Two
网络时代
协作模式 集市
交付方式 下载
Ⅲ
Era Three
云时代
协作模式 平台
交付方式 订阅
NEXT → 下一讲:制度变迁的法律维度——知识财产法如何塑造了开源与闭源的边界

制度经济学视角下的软件工业

— 一张阅读地图 —
IThe Cathedral & the Bazaar
IIThe Mythical Man-Month
III持续交付 2.0
IVThe Subscription
VGO TO: Programming
VIBuilding Software
VIIIEEE Annals · History
i. 《大教堂与集市》 · Eric S. Raymond
机械工业出版社,2014.05
ii. 《人月神话》 · F. P. Brooks
清华大学出版社,2015.04
iii. 《持续交付 2.0》 · 乔梁
人民邮电出版社,2018.12
iv. 《订阅》 · Robert S. Kienscherf / Mani Peivand
中信出版社,2018.12
v. GO TO: Programming the PC · Steve Lohr
Basic Books, 2001.10
vi. 《构建之法》(第四版) · 邹欣
人民邮电出版社,2026.04
vii. "Creating the Software Industry" · Luanne Johnson
IEEE Annals of History of Computing, 2002
前情提要
开源与经济学
软件作为一种特殊商品,如何被生产、分…
议程
On the one hand in…
供求关系看开源…
软件交易集散地/仓库…
集装箱的案例
代码/程序/软件发展简史…
前Unix时代:1970年以前…
UNIX 的出现
1976:家酿俱乐部与Bill ga…
PC的发展、软盘的发明…
许可与软盘交换…
互联网的崛起
云计算进一步改变了软件交付…
万维网爆炸式发展…
经济学的思维方式…
软件的生产:开发者与工程师及其工具…
工业时代的工厂与数字时代的协作…
软件的“消费”者:…
软件交付简史之初代…
软件交付简史之介质时代…
软件交付简史之网络下载…
软件交付简史之云与市场…
举个例子:Chrome 的数字之旅…
**手动画 Gentoo Linux…
The world is not b…
一讲总结:数字时代软件业的制度变迁…
第1期·软件的生产、分销和消费 · …