乐于分享
好东西不私藏

从人机协作到人机共生:软件的熵增之旅

从人机协作到人机共生:软件的熵增之旅

软件的演进是一场熵增之旅。

人类与软件的关系,就像父母养育孩子,是一个不断退出和放手、又难免牵挂和担忧的过程。

Δ世界上第一台通用电子计算机 ENIAC。(图片来源于互联网)

1946年,世界上第一台通用电子计算机ENIAC(Electronic Numerical Integrator and Computer,电子数值积分计算机)在美国宾夕法尼亚大学正式问世。ENIAC最初通过插拔电缆和设置开关来设定计算逻辑(硬连线编程),每次更换任务,都需要数小时甚至数天重新布线。

这种复杂的操作,促使人们思考:能不能用指令代替接线?

这就是软件思想的起点

1944年,计算机之父冯・诺依曼正参与曼哈顿计划,为了模拟原子弹爆炸和进行仿真,正满世界寻找高速计算工具,一次偶然相遇,他结识了美国弹道研究实验室的赫尔曼・戈德斯坦,并受邀成为ENIAC项目的顾问。

ENIAC繁琐的物理重配置过程,暴露了程序与硬件紧密耦合的弊端,冯・诺依曼敏锐地意识到,如果能将程序像数据一样存储在计算机内存中,由机器自动读取并执行指令,就能实现灵活、高效的通用计算。

正是这一洞察,促使他在1945年撰写《关于EDVAC的报告草案》,首次系统阐述“存储程序”概念,奠定了现代计算机体系结构的基础。

冯·诺依曼的存储程序思想不仅是硬件架构的革命,更是软件得以存在和发展的逻辑前提。这一设计直接让软件从硬件布线中解放出来,程序不再需要靠改线路实现,而是可以存入内存、独立编写、灵活替换,不需要改动硬件就可以运行不同的任务。

存储程序思想普及后,软件开始与硬件分离从此,真正诞生了现代意义上的“软件”,为后续编程语言、操作系统和整个软件产业的发展奠定了底层架构基础。

在软件的发展过程中,女性,扮演了重要的角色,很多具有划时代意义的工作都与她们相关。

世界上第一位程序员是英国数学家、作家阿达·洛芙莱斯,也是著名诗人拜伦的女儿。19世纪40年代,阿达·洛芙莱斯与英国数学家查尔斯·巴贝奇合作,为他设计的分析机(一种机械式通用计算机)编写了世界上第一个计算机程序/程序设计流程图, 世界上第一个算法就此诞生,尽管分析机未在她生前建成,但她的思想被公认为程序设计的开端

ENIAC的编程工作,由6位数学系毕业的女性程序员完成,她们靠电路图和逻辑结构,手动设计程序流程图,并开发了调试技术(如分段测试、信号追踪),第一次让程序在电子世界里真正跑了起来,是世界上第一批电子计算机程序员

早期计算机(如ENIAC)只能识别由0和1组成的机器码,程序员必须手动编写二进制指令,例如 10110000 01100001 表示“将数值97加载到寄存器”,这种方式效率极低、极易出错,且调试和修改极其困难。

(图片来源于互联网)

1947年,英国计算机科学家凯瑟琳・布斯设计了一种用人类可读的符号表示机器指令的方法,称为契约记号法‌, 这被视为世界上第一种汇编语言。它用简单易记的英文助记符代替0和1组成的机器指令,让程序员不用再死记硬背二进制代码,大幅降低了编程难度,也让程序更容易编写、修改和理解。

除了发明汇编语言,凯瑟琳・布斯还编写了世界上第一个汇编器,能够实现符号指令到机器可执行的二进制代码的自动转换。

凯瑟琳・布斯为整个软件开发范式从“手写二进制”迈向“可读、可维护的代码”打开了大门,被许多计算机历史学家誉为“汇编语言之母”

此后,随着计算机硬件资源与计算能力的持续提升,为更复杂软件的运行奠定了基础,但编程仍以汇编语言为主。

汇编语言虽然比纯二进制机器码好记,但它与硬件强相关,换一台电脑就不能用,可移植性极差,写复杂程序时代码又长又难维护,开发效率极低。这为编译器与高级语言的诞生埋下了伏笔。

(图片来源于互联网)

1951年,美国计算机科学先驱、数学家和海军少将格蕾丝·霍珀在参与UNIVAC I(美国第一台商用计算机)项目时,提出一个革命性想法:

“为什么不能用接近英语的语句来写程序?”

她认为,应将常用数学运算(如 sin、log、矩阵乘法)预先编写成子例程,存储在磁带上,当用户需要时,系统能自动找到并组合这些子例程,生成可执行代码。

为了实现以上目标,格蕾丝·霍珀不仅需要设计一种新的编程语言,还需要开发一个能够“生成程序”的程序。

A-0,是格蕾丝·霍珀于1951年至1952年间开发的子例程自动链接系统,是世界上第一个真正实现工作的编译器,它能自动把符号指令翻译成机器码,不再需要人工逐行转换,她首次使用“compile”(编译)一词,意为“将预存的子程序组装成完整程序”,极大提高了编程效率,也证明了自动化编译这条路可行,直接为后来的高级语言和现代软件开发铺平了道路。

格蕾丝·霍珀坚信:程序员应使用接近自然语言的指令,而非机器码。这一理念彻底改变了软件开发范式。

1956年,格蕾丝·霍珀领导开发了编程语言FLOW-MATIC,这是首个使用英语关键词的高级语言。FLOW-MATIC 直接启发并成为 COBOL(Common Business-Oriented Language,面向商业的通用语言,1959)的核心基础。

COBOL是世界上第一个大规模商用的高级编程语言,它的设计目标非常明确:远离底层硬件,用接近英语的语法处理商业数据。

COBOL极大推动了软件跨机器运行,在长达几十年里,全球商业系统的核心代码大多是 COBOL,银行、证券、社保、税务系统至今仍大量运行着 COBOL 程序。

COBOL 的成功证明:软件应服务于人类思维,而非强迫人类适应机器。

高级语言配合编译器,打破了人与机器交流的障碍,形成了“人写代码→自动翻译→机器执行”的模式,直到今天依然是整个软件行业的基础。

人写的代码(比如 COBOL)机器看不懂,机器只懂 0 和 1,编译器就是一个“翻译官”,负责自动把人写的代码,翻译成机器能跑的指令。

高级编程语言,让人更容易写程序、更容易理解代码,它‌屏蔽了复杂的计算机硬件细节‌,不像汇编那样难写、换台电脑就不能用,语法接近英语和日常逻辑,不懂硬件也能写,写完还能在各种机器上跑。

格蕾丝·霍珀的发明彻底改变了编程方式,被誉为“COBOL之母”现代软件工程的重要奠基人。她常说:

“人类最危险的一句话是——我们一直这样做。”

(图片来源于互联网)

格蕾丝·霍珀常被认为是发现第一个计算机Bug的人。1947年,她在哈佛Mark II计算机中发现一只飞蛾夹在继电器中,导致机器故障,她把飞蛾粘在日志本上,写下:“First actual case of bug being found”(第一个真正发现“bug”的案例),将故障称为“Bug”,排除过程称为“Debug”

尽管“Bug”一词此前已有类似用法,但这个故事广为流传,从此,Bug 从“虫子”变成了计算机错误的代名词,而Debug则指找出并修复 Bug 的过程,也就是调试程序、排错。

20世纪50年代,是高级编程语言的诞生元年,这一时期,为解决机器语言和汇编语言编程效率低、难维护的问题,科学家们开发了第一批真正意义上的高级编程语言。除了COBOL,还包括FORTRAN、LISP等。

1953年,IBM 工程师约翰・巴克斯提出了FORTRAN 语言的伟大构想,并带领 IBM 团队于1954年开发了 FORTRAN,‌1957年‌,FORTRAN 的首个编译器成功实现,运行在 IBM 704 计算机上。

FORTRAN 是世界上第一个广泛使用的高级编程语言,其名称源自 “‌Formula Translation‌”(公式翻译),专为科学与工程计算设计。约翰·巴克斯也因此项贡献与其他成就,于 1977 年获得图灵奖。 ‌

LISP(LISt Processing,列表处理语言) 是历史第二悠久的高级编程语言(仅次于 FORTRAN),也是首个函数式编程语言与人工智能的母语

1958 年,美国计算机科学家、人工智能先驱约翰・麦卡锡在麻省理工学院 完成了LISP 语言的设计与定义,1960 年,正式公开 LISP 完整理论。1958年秋至1959年初,约翰・麦卡锡的学生史蒂夫・拉塞尔在 IBM 704 上实现了第一个可运行的 LISP 解释器,验证了其可行性。

LISP专为为人工智能研究设计,成为 1960–1980 年代人工智能研究的主流语言,直接孕育了 Scheme、Common Lisp、Clojure 等 LISP 方言(指共享核心语法与语义模型但具体实现/特性不同的变体)。

高级编程语言,就像是一位善解人意的翻译官与造梦师,它把人类脑海里的想法,翻译成机器能听懂的指令,将计算机从“计算器”转变为“通用问题求解工具”,并最终催生了以软件为核心的数字文明。

1950年代初,IBM、UNIVAC 等公司开始向政府、军工和大型企业销售商用计算机(如 IBM 701、UNIVAC I)。当时,IBM 等厂商认为软件只是让硬件跑起来的附属品,不单独销售,也不重视维护。

前 IBM 高级工程师雷蒙德·库尔策埃尔温·拉塞尔敏锐地意识到,市场急需专业的编程人才和外包服务。

1955年,他们创立了世界上第一家独立软件公司CUCComputer Usage Company )在美国成立,首次将软件从硬件中剥离,以专业服务形式出售,标志着软件作为独立产业的诞生

1950 年代中期,编程世界一片混乱。虽然已有 FORTRAN 等高级语言,但各语言互不兼容,缺乏一种能清晰、精确描述算法的国际标准语言。

20世纪50年代中期至60年代中期,欧美一批顶尖计算机科学家发起了“ALGOL(Algorithmic Language,算法语言)运动”,旨在解决编程语言不统一、移植性差、表达不严谨等问题,为算法交流和程序设计建立一套科学、规范的基础。

1958年,美国计算机学会(ACM)与欧洲 GAMM(德国应用数学与力学协会)联合成立委员会,发布 ALGOL 58 报告,首次引入代码块结构(用 begin…end 包裹语句)、复合语句、形式参数,但因美欧分歧较大,未被广泛采纳。

1960年,欧美计算机科学家联合设计了新一代高级编程语言ALGOL 60,其核心理念是:语言应简洁、正交、数学化,而不是迎合特定硬件或商业需求。

ALGOL 60首次使用严谨的语法定义(BNF 范式),语言清晰无歧义,并引入结构化程序设计思想,支持局部变量、递归、参数传递、子程序调用等关键机制,强调语言应独立于具体机器,专注于算法描述,推动了软件可移植性思想。

ALGOL 60 是第一种结构化的高级编程语言,尽管因缺乏标准输入/输出系统而未广泛商用,但其设计理念深刻影响了B语言、Pascal、C语言等后来几乎所有的编程语言,被誉为“编程语言之母”

1960年代起,欧美高校纷纷以 ALGOL 为教学语言开设程序设计、算法课程,取代了过去以机器码或FORTRAN为主的技能培训,标志着计算机教育向理论化转型。

在软件世界里,操作系统就像一位不知疲倦的“全能管家”,掌管着内存、CPU、硬盘等所有家产,谁能干活、谁先休息、谁用多少资源,全由它统一调度。应用程序们就像来来往往的客人,不懂直接跟硬件打交道,全都要靠操作系统引路、安排座位、,协调秩序。没有它,再强大的软件也寸步难行,再厉害的硬件也只是一堆废铁。

早期的计算机(如 ENIAC、EDVAC)是没有操作系统的,一次只能运行一个程序,计算机大部分时间处于空闲状态(等待人工操作),资源浪费严重。

20世纪50年代中期至60年代初期,随着第二代晶体管计算机的出现(如IBM 7090/7094),为提高计算机资源的利用率,减少人工干预,批处理操作系统(如IBM OS/360)‌应运而生。

批处理操作系统将多个用户的程序与数据预先汇集为一批任务,由监控程序自动按顺序连续加载执行,省去了频繁人工切换的麻烦,但这种模式无法让用户和计算机实时交互,任务需要排队等待,出错后不能立刻修改,且CPU常因等待I/O处理而空闲,整体使用效率和灵活性都很低。

1959 年 1 月,约翰・麦卡锡在麻省理工学院(MIT)的内部备忘录《A Proposal for Time-Sharing in Large Fast Computers》(《关于在大型快速计算机中实现分时的建议》)中,首次系统提出并论证了面向多用户的交互式分时计算模式:

让多个用户通过远程终端同时、交互式地共享一台昂贵的大型计算机,每个用户都能获得“独占机器”的体验;系统应通过快速切换任务,使响应时间短到足以支持人机对话。

他的想法迅速获得MIT同事的支持,并直接促成了 CTSS(Compatible Time-Sharing System,兼容分时系统) 项目的立项。

1961年,费尔南多·科尔巴托领导MIT 计算中心团队开发出世界上第一个可运行的分时操作系统 CTSS ,他因此贡献获得 1990 年图灵奖。

CTSS 是从批处理到交互式计算的里程碑,它用时间片轮转让多用户共享昂贵大型机,首次实现了“人与机器对话”的愿景,彻底改变了过去的人机交互方式,并为整个现代操作系统的发展奠定了基础。

1962年,BBN分时操作系统由美国科技公司 BBN开发完成,这是世界上最早实用化的小型机分时系统。

它将分时理念从昂贵的大型机下放到低成本的小型机,证明了交互式计算可以更亲民、更灵活。

BBN分时操作系统与 CTSS 共同开启了交互式计算时代,对现代软件、网络乃至互联网的发展产生了深远影响。

Multics 系统,是由 麻省理工学院、贝尔实验室和 通用电气公司三方联合开发的分时操作系统,该项目于1965 年正式启动。Multics 是操作系统史上的 “阿波罗计划”,它以极致的前瞻性定义了现代 OS 的全部基因,首次将安全性、可扩展性、统一资源抽象和持续服务作为核心设计原则。但因过于宏大、复杂、昂贵而商业受挫。1969 年,贝尔实验室因进度缓慢、成本过高退出。

此后,贝尔实验室的肯・汤普森、丹尼斯・里奇吸取 Multics 精华,简化重写,于 1971 年创造 Unix操作系统

Multics 的思想,深刻塑造了 Unix、Linux、Windows NT 乃至现代云计算架构。今天,当你在 Linux 中输入 ls /usr/bin,或在云服务器上运行容器(给软件打包好的一个轻量级、可移植 “独立小房间”)时,你仍在使用 Multics 在半个世纪前构想的世界。

分时操作系统不仅是技术突破,更是一种设计哲学转变:

从“以计算机为中心”转向“以用户为中心”

其真正的价值,不在于它能做更多计算,而在于它让人类能与机器对话

1966年,弗朗西斯·艾伦发表经典论文《Program Optimization》(《程序优化》),这是现代编译优化理论的开山之作,定义了编译器优化的标准方法论,奠定了现代编译器优化的理论与工程基础。

在此之前,程序员写啥,编译器就原样翻译成机器码,想跑得快,全靠程序员自己手写优化,又累又容易错。弗朗西斯·艾伦让软件编译器变成了会自动优化、自动提速、自动精简代码的智能工具。

(图片来源于互联网)

1989年,弗朗西斯·艾伦被授予首位 IBM 女院士。2006 年,她因一系列开创性工作成为首位获得图灵奖的女性。

1967年,挪威计算机科学家奥利-约翰·达尔和克利斯登·奈加特正式发布了Simula 67编程语言,它原本是为离散事件仿真设计的工具,却意外奠定了一种新的程序设计思想范式,被公认为是世界上第一种面向对象的编程语言

Simula 67语言引入了所有后来面向对象程序设计语言所遵循的基础概念:对象、类、继承,其设计思想直接影响了 Smalltalk、C++、Java、C#、Python 等主流语言。

克利斯登·奈加特提出“To program is to understand”(编程即理解)的理念,强调程序设计是对问题的理解过程

Simula 67的诞生,正是为了寻找一种能更好理解、描述与沟通复杂系统的思维方式。它将世界看作由交互的对象组成,而非一系列线性指令,提供了一种全新的思维方式:

通过对象建模世界,通过封装控制复杂性,通过继承促进演化。

这种思想使软件能更自然地映射现实世界,为后来的软件工程实践奠定了理论与方法基础,使人类得以逐步驯服日益膨胀的软件复杂性。

2001 年,奥利-约翰·达尔和克利斯登·奈加特因其在面向对象编程方面的开创性工作,获得图灵奖。

20世纪60年代,计算机硬件性能飞速提升,应用场景从科学计算扩展到商业管理、航空航天、国防等领域,软件也从小型简单程序迅速膨胀为大型复杂系统。然而,软件开发仍停留在个人化、随意化的“作坊式”阶段,完全无法匹配需求,导致项目频繁超期、严重超支、功能缺陷频出、甚至彻底失败。这便是历史上著名的软件危机

OS/360,是IBM 为 System/360 系列计算机开发的通用操作系统项目,规模空前,近千名程序员,数百万行代码,原定在硬件发布(1964 年)时同步交付,实际1966 年才勉强可用, 延期约3年,成本超支数倍。该项目成为“软件危机”的标志性案例。

弗雷德里克·布鲁克斯曾担任S/360 操作系统的项目经理,亲历了这一史上最大规模早期软件工程的混乱与挫折。

他以科学家的诚实与工程师的洞察,于1975年撰写出软件工程领域的经典著作《人月神话》,推动了模块化设计、需求管理、团队协作模型等软件工程实践的发展。书中的核心观点直接源于OS/360 经验,比如:

“向落后项目增加人力,只会使其更落后”(OS/360 后期疯狂加人,效率不升反降),“没有银弹”(即使 IBM 拥有顶尖人才和资源,仍难控复杂度)。

1968年,北大西洋公约组织(NATO)在前联邦德国组织会议,召集了近50名计算机科学家、工程师和项目经理,首次明确提出,应将软件开发从“手工艺式编程”转变为一门系统的、可管理的、基于理论与实践的工程学科,并正式采用术语“软件工程”

会议报告中写道:“我们故意使用‘工程’一词,意在强调对软件开发施加工程纪律的迫切需要。”

1969年,NATO又在意大利罗马举办了第二届软件工程会议,进一步深化讨论。

此后,“软件工程”逐渐发展为一门独立学科,涵盖需求分析、设计、编码、测试、维护、项目管理、质量保证等系统化方法。高校开始设立相关课程,工业界逐步采纳结构化方法、软件开发生命周期模型(如瀑布模型)等工程实践。

软件开始被视为可设计、可管理的工程产品

IBM 在1950–1960年代坚持“软硬一体、免费提供”策略,直到 1969年,在美国司法部反垄断调查压力下,IBM 才被迫宣布“解绑”:自1970年起,硬件、软件、服务分开定价和销售。

这一政策转变被公认为现代独立软件产业的真正起点。因为它首次在法律和商业上承认:软件可以是一个独立的商品

结构化编程,是20世纪60年代中期兴起的一种程序设计方法论,旨在解决“软件危机”中代码混乱、难以维护的问题。

在1960年代,程序普遍使用 GOTO 语句进行跳转控制,导致代码逻辑混乱、难以阅读和维护——被称为“面条式代码”。

1968年,荷兰计算机科学家艾兹格・迪杰斯特拉发表《Go To Statement Considered Harmful》(《GOTO语句有害》),引发了关于编程方法的广泛讨论,被公认为结构化编程革命的开端。他曾参与 ALGOL 60 (1960年)的设计与推广。

1969年,艾兹格・迪杰斯特拉完成《关于结构化编程的笔记》,系统阐述结构化编程方法论,他认为“编程是一门学科,而不是一门手艺”,提出程序设计应遵循模块化、自上而下分解等核心原则,强调程序的正确性应建立在严密的数学逻辑基础上,而不是依赖后期调试。

这一思想,直接推动了 Pascal、C 等语言的设计,对软件工程实践产生了深远影响。

如果你是计算机专业,有编程基础,你一定知道迪杰斯特拉(Dijkstra)算法,这是图论中最经典、应用最广泛的算法之一,被广泛用于网络路由、地图导航、交通规划等。该算法正是由迪杰斯特拉提出,直接以他的姓氏命名。

1972年,艾兹格・迪杰斯特拉荣获图灵奖,以表彰他在编程语言、算法、并发控制和结构化编程等方面的奠基性贡献。有趣的是,艾兹格・迪杰斯特拉并未发表传统意义上的“图灵奖演讲”。他提交了一篇题为 《The Humble Programmer》(《谦逊的程序员》) 的文章作为获奖演说,其中写道:

“我们所构建的系统的复杂性已经远远超出了人类直觉的掌控能力……因此,我们必须依赖严谨的推理,而非调试。”

艾兹格・迪杰斯特拉曾说:程序员永远不该写出超出其控制力的代码。”

为解决“软件危机”中项目管理失控的问题,1970年,斯顿·罗伊斯发表《Managing the Development of Large Software Systems》(《大型软件系统的开发管理》),将软件生命周期划分为需求分析、设计、编码、测试和部署等线性阶段,形如瀑布逐级下落,因此称为瀑布模型

尽管“瀑布模型”常被归功于温斯顿·罗伊斯,但他本人实际上是在批判这种线性流程的缺陷。在2008年之前,瀑布式方法论是软件开发领域中最常用的项目管理方法。

1969年,肯·汤普森在贝尔实验室利用一台闲置的 PDP-7 小型机,为运行一款名为“Space Travel”(太空旅行)的游戏,开始编写一个简单的操作系统,其初衷是对 Multics 项目失败的反思,目标是构建一个简洁、高效的分时系统。

该系统最初用汇编语言编写,为提升系统的可移植性,汤普森继承并简化了BCPL语言(由英国计算机科学家马丁·理查兹发明,1967年)的特性,发明了B语言,这是一种无数据类型的高级语言,所有数据都被视为机器字,统一按整数处理。

随后,肯·汤普森的同事丹尼斯·里奇也加入进来,协助开发文件系统结构、命令行工具和文本处理工具等。

1970年,该系统被正式命名为“UNIX”,与Multics相对,强调简单、专注、轻量的设计哲学。1971年,汤普森与里奇共同发布了 UNIX 第一版。

早期的UNIX系统使用B语言开发,但B语言缺乏数据类型,无法有效利用PDP-11等新硬件的字节寻址能力,效率低下,表达能力有限,不适合编写大型、高效的系统软件。

为支持高效、可移植的系统软件编程,1971–1972年间,丹尼斯·里奇开始对B语言进行根本性改造,他引入了丰富的数据类型(如char、float等),并彻底重构语法和语义,加入结构体、指针操作和函数接口等特性,最终形成了C语言,将结构化编程范式推向顶峰。

1973年,丹尼斯·里奇肯·汤普森用C语言重写了UNIX内核,UNIX内核的大部分代码与硬件无关,只需重写少量与体系结构相关的部分(如启动代码、设备驱动),就可以在不同计算机上重新编译运行。这使UNIX成为历史上第一个可移植的操作系统,不再绑定特定硬件,极大加速了其传播。

可以说,C语言因UNIX而生,UNIX因C语言而传播。

当时的主流观点认为:操作系统必须用汇编语言编写,才能保证性能和控制力。

UNIX用C语言实现并保持高效,打破了这一教条,开创了用高级语言开发核心系统软件的先河

这一成功直接推动了后续操作系统(如Linux、macOS、Windows NT的部分组件)采用C或C++开发。

1983年,丹尼斯·里奇肯·汤普森因在通用操作系统理论领域及实现UNIX操作系统的贡献,共同获得图灵奖‌。

1998年,他们在白宫接受了美国国家技术奖章,由时任美国总统克林顿授予,颁奖词写道:

“由他们共同发明的UNIX操作系统和C编程语言,极大推动了计算机软硬件及整个信息技术产业的发展。”

1977年,戴夫·卡特勒领导美国数字设备公司(DEC)的工程师团队推出VMS(Virtual Memory System,后称OpenVMS)操作系统,专为VAX小型机设计。它是首个深度融合虚拟内存、高可用集群和强安全机制的操作系统之一,广泛应用于银行、医疗、工业控制等关键任务领域,其高可靠性与容错能力树立了企业级系统的标杆,并深刻影响了后来的Windows NT等操作系统的设计。

戴夫·卡特勒后来加入微软,成为 Windows NT 的首席架构师,IT江湖人称“操作系统天神”

集成电路的出现与大规模应用,让计算机从庞大的电子管、晶体管机器不断小型化。

1971 年,英特尔公司推出了全球第一款商用 4 位微处理器 Intel 4004,它将原本需要一整个机柜才能实现的运算逻辑集成在一块芯片上,正式拉开了微型计算机(微机)时代的序幕

1973年,美国计算机科学家加里·基尔代尔为英特尔微处理器量身打造,设计了一种‌高级编程语言PL/M(Programming Language for Microcomputers,微型计算机编程语言)。

PL/M允许直接访问寄存器、内存地址和 I/O 端口,同时提供变量、过程、条件语句等结构化编程特性,比汇编更易读写,又比通用高级语言(如 Fortran)更贴近底层,能够帮助工程师更高效地开发 BIOS、设备驱动和嵌入式控制程序。这标志着微机软件开发从纯汇编向结构化编程的过渡

1974年,加里·基尔代尔用自己发明的 PL/M 语言开发出世界上第一个广泛使用的微型计算机操作系统CP/M(Control Program for Microcomputers)。

在 CP/M 出现之前,微型计算机(如基于 Intel 8080 的系统)是没有通用操作系统的,件(哪怕是简单的程序)必须直接针对特定硬件编写,程序员需要从零开始处理启动、加载、输入输出等底层任务。结果导致,同一个程序无法在不同品牌或型号的微机上运行,严重阻碍了软件复用和产业发展。

加里·基尔代尔意识到,需要一个“中间层”来抽象硬件差异,让应用程序与具体机器解耦。他开创性地提出了BIOS(基本输入输出系统)的概念,充当“硬件翻译官”,让上层软件无需关心机器差异,并将 CP/M 分为三层,其中 BIOS(硬件抽象层)是唯一与硬件交互的模块(如接收键盘输入、系统启动引导),BDOS(核心系统服务层)和CCP (用户交互层)只通过标准接口调用 BIOS,完全不用感知底层硬件细节。

要将 CP/M 移植到新机型,只需要重写 BIOS(通常几百行汇编代码),而 BDOS 和所有应用程序无需改动。这催生了第一个独立于硬件厂商的商业软件市场,软件公司因此可以“一次开发,多处销售”

1974年下半年,加里·基尔代尔和妻子创立了数字研究公司(DRI),专门推广CP/M系统。

CP/M,成为了1970 年代末至 1980 年代初最主流的微机操作系统。它不仅是一个技术产品,更是一次对“软件可移植性”和“生态系统标准化”的早期实践,在个人计算机(PC)产业的萌芽阶段扮演了奠基性角色,并直接影响了后来的操作系统(如MS-DOS),被誉为“微机时代的UNIX”

加里·基尔代尔是个人计算机革命的先驱,被誉为“PC软件之父”

1980 年,IBM决定进入快速发展的微型计算机市场,启动代号为“国际象棋”的秘密项目,目标是在一年内推出自己的个人电脑(即后来的 IBM PC)。

当时,CP/M是 8 位微机上最主流的操作系统,拥有丰富的软件生态,IBM 希望为即将推出的 16 位 IBM PC(使用 Intel 8088 处理器)获得 CP/M-86(CP/M 的 16 位版本)的授权。

1980 年,IBM 代表前往数字研究公司谈判,但据传因加里·基尔代尔当天不在公司,且双方在授权条款上存在分歧,谈判未果。这一错失成为计算机史上最著名的商业转折点之一。

IBM转而联系微软,当时微软以开发编程语言(如 BASIC)闻名,并没有自己的操作系统。

微软公司创始人比尔·盖茨和保罗·艾伦意识到这是千载难逢的机会,于是迅速行动。

‌当时,西雅图计算机产品公司(SCP)24岁的程序员‌蒂姆·帕特森‌为适配新推出的Intel 8086处理器,用四个月时间开发了一款名为‌QDOS‌(Quick and Dirty Operating System)的操作系统,该系统的设计高度模仿 CP/M 的 API 和命令结构,但能运行在 16 位芯片上。QDOS不久被改名为86-DOS。

微软先是以‌2.5万至5万美元‌获得86-DOS的非独占授权,随后,于‌1981年以‌5万美元买断全部版权。微软对 86-DOS进行修改和优化,更名为 MS-DOS(Microsoft Disk Operating System,微软磁盘操作系统)。

此次收购,被视为‌微软崛起的起点‌,为其在PC操作系统市场建立垄断地位奠定基础‌。

1981 年 8 月 12 日,IBM PC 正式发布。微软与IBM合作,在IBM销售的PC上安装MS-DOS进行捆绑发售。

IBM 将微软提供的操作系统命名为 PC DOS 1.0,而微软保留该系统的版权,并可向其他兼容机厂商授权 MS-DOS,任何厂商只要制造“IBM PC 兼容机”,就需要向微软购买 MS-DOS 授权。

在整个 1980 年代,MS-DOS 贡献了微软 50% 以上的营业收入,是其早期增长绝对的“现金牛”。更重要的是,它让微软掌握了 PC 软件生态的控制权,将一家编程语言公司转变为操作系统帝国,为 Windows 时代的全球“霸权”奠定了不可动摇的基础。

1980年代初,随着 IBM PC的普及,正式开启个人计算机时代,用户对提高办公效率的需求激增。

1981年,施乐推出了Xerox Star工作站,这是全球首款使用了图形用户界面的商业个人计算机,但因价格昂贵(零售价为 16,500 美元‌)在商业上并不成功。它虽未赢得市场,却定义了未来。

Xerox Star开创性地系统性整合并实现了现代图形用户界面(GUI),开创了一种全新的人机交互范式,被誉为“现代桌面计算的原型”,直接启发了苹果、微软设计下一代革命性产品。

1979年,史蒂夫·乔布斯曾参观施乐公司的顶尖研究机构PARC,亲眼看到Xerox Star 的前身 Alto 演示,他深受震撼,将 GUI、鼠标、桌面隐喻等理念融入公司产品设计。

1983年‌,苹果推出Lisa电脑,首次将GUI带入消费级市场,随后在1984年发布Macintosh,使其真正走向大众,成为首个取得商业成功的GUI系统

微软当时靠 MS-DOS 赚取巨额利润,但 DOS 是纯文本、单任务、无图形的操作系统,用户体验远落后于 Mac。

苹果公司的成功倒逼微软布局 GUI,微软意识到:若不拥抱 GUI,微软将被时代淘汰。

1983年11月,微软首次宣布开发Windows,当时被称为“界面管理器”,旨在为IBM PC提供更直观的多任务操作环境。

1985年,微软推出第一个图形用户界面操作系统Windows 1.0,Windows 1.0并非独立操作系统,而是运行在 MS-DOS 之上的图形外壳,功能简陋、启动慢、效率低,结果卖不动。但它为微软积累了宝贵的 GUI 开发经验,标志着微软从命令行时代向图形化操作系统的战略转型。

1990年5月,Windows 3.0 发布,两年内售出 1000万份,成为首个真正成功的 Windows 版本,最终统治桌面操作系统数十年。

Windows将 GUI 从实验室和小众高端设备带入全球数十亿普通用户的日常使用中,重塑了人类与数字世界沟通的方式,从此,用户了黑白两色的命令行,进入了色彩斑斓、直观可触的数字桌面。

1981年,匈牙利裔程序员查尔斯·西蒙尼加入微软,他向比尔·盖茨提出:“未来的文字处理必须所见即所得,并支持鼠标操作。”

比尔·盖茨虽对 GUI 在 PC 上的可行性存疑(当时 IBM PC 无鼠标、显存有限),但仍批准了项目,代号 “Multi-Tool Word”,意为跨平台、多功能的文字工具。

1983年10月,由查尔斯·西蒙尼带领团队开发的Microsoft Word 1.0 首次在 COMDEX 计算机展上亮相。1983年11月,正式发布 Word for MS-DOS 1.0。

Word 1.0 是为支持鼠标和图形界面而设计的,但当时鼠标和图形显示尚未普及,IBM PC及兼容机默认不配鼠标(鼠标是昂贵外设,1983年售价约 100–200美元),用户宁愿用熟悉的键盘命令,也不愿额外花钱买“新奇配件”,结果市场反响冷淡。

虽然Word 1.0 在商业上未立即成功,但确立了微软在应用软件领域的雄心,它是首个在 PC 上尝试 GUI 交互的主流办公软件,为 Windows 应用生态探路。

微软很快意识到问题所在,迅速将 Word 移植到 Apple Macintosh,于1985年推出Word for Mac 1.0(Mac 自带鼠标、图形界面、位图显示),真正实现了流畅的所见即所得文字处理,成为 Mac 平台最受欢迎的文字处理器,首次获得商业成功,并为后续 Windows 版本积累经验。

这一成功直接推动了微软向应用软件巨头转型,1990年, Microsoft Office 套件推出后,Word 凭借与 Excel、PowerPoint 的整合,彻底主导办公软件市场。

1970–80 年代,软件从“可共享、可修改”的学术传统转向私有化与封闭源码。

1983 年,理查德·斯托曼发起了自由软件运动及GNU项目,目标是创建一个完全由自由软件组成的、类 Unix 的操作系统。

他提出:“如果你不能控制你的软件,那么你的软件就在控制你。”,认为用户应拥有运行、研究、修改和分发软件的四大自由。理查德·斯托曼与全球志愿者合作,开发了操作系统所需的几乎所有组件(除内核外)。

虽然 GNU 操作系统本身未以完整形态广泛部署,但理查德·斯托曼创建的自由软件许可证GPL(GNU General Public License,GNU 通用公共许可证)通过“著佐权”(Copyleft)机制保障了软件自由的延续,而GNU开发的GCC编译器、Bash、glibc等核心工具则构成了现代开源生态的技术基石,为后续 Linux 系统、开源社区及整个互联网软件产业奠定了思想与技术基础,深刻重塑了计算机行业的发展模式与软件版权伦理。

1970 年代末,C 语言因 UNIX 系统的成功而广受欢迎,但其缺乏对大型软件工程的抽象支持,难以管理复杂性。随着项目规模的扩大,C 程序容易变得难以维护、易出错(如全局变量滥用、接口混乱)。

与此同时,面向对象编程(OOP)思想在1970–80年代逐渐成熟,尤其是 Simula 67 和 Smalltalk 展示了用“对象”建模现实世界的强大能力。

1979 年,丹麦计算机科学家比雅尼·斯特劳斯特鲁普在贝尔实验室研究分布式计算和系统软件,他希望有一种语言既能保留 C 的效率和底层控制能力,又能引入 Simula 风格的抽象机制以应对大型软件系统的复杂性。于是,他在 C 语言基础上扩展了类机制,最初称之为 “C with Classes”(带类的C),1983年,正式命名为C++(“++”是 C 中的自增运算符,寓意“C 的进化”)‌。

C++ 并非简单地将 OOP(面向对象编程)加到 C 上,它重构了类型系统、内存模型与抽象机制,支持过程式、面向对象、泛型与模板元编程等多种范式,既能像 C语言一样贴近硬件、追求极致性能,又能通过高级抽象构建大型复杂软件,兼顾运行效率与开发效率。C++ 成为过去四十年中最广泛使用、最具影响力的系统编程语言之一。2000年代初,我在武汉大学念本科时,老师们教授的正是C语言、C++。

如今,C++ 仍活跃于操作系统(Windows/Linux 内核部分)、游戏、金融系统、高性能计算、自动驾驶等领域,证明了其持久的生命力。

比雅尼·斯特劳斯特鲁普被业界称为“C++之父”,1993年,他获得了美国计算机协会格雷斯·默里·霍珀奖,该奖项旨在表彰在计算机领域做出杰出贡献的年轻专业人士‌。

1989 年圣诞节期间,荷兰计算机科学家吉多·范罗苏姆为打发时间,决定开发一门新的脚本语言,希望它兼具ABC 语言(一种教学用高级语言,范罗苏姆曾参与 ABC 语言的开发)的简洁易用和C/Unix 语言的灵活强大,语法清晰、‌易读、易学和可扩展。

1991 年 2 月,Python 第一个公开版本 0.9.0 正式发布,其名字取自吉多·范罗苏姆喜爱的英剧《蒙提・派森的飞行马戏团》。后经持续迭代发展,凭借简洁优雅、跨平台、库丰富的特点,逐渐成为全球最流行的通用编程语言之一。

在最近几年爆火的AI大模型训练、微调中,Python以语法简洁、生态完善,成为绝对主流,几乎所有主流 AI深度学习框架和工具都以 Python 为首要接口语言。

1980年代末,瑞士日内瓦的欧洲核子研究中心(CERN)拥有来自全球的数千名科学家,使用不同的计算机系统、操作系统和文档格式,导致研究成果难以共享。

英国计算机科学家蒂姆·伯纳斯-李,1989年在 CERN 担任软件顾问,1989年3月,他提交了一份名为《Information Management: A Proposal》(《信息管理:一项提案》)的内部文档,首次描述了通过超链接连接文档、使用客户端-服务器架构访问信息,目标是帮助 CERN 管理知识,并让全球科学家无缝协作。

(图片来源于互联网)

1989 年 12 月‌,蒂姆·伯纳斯-李正式将发明定名为 World Wide Web(万维网,简称 WWW 或 Web)

1990 年‌,他在 NeXTStep 系统上开发出世界上第一个 Web 服务器和第一个 Web 客户机(浏览器 WorldWideWeb)。

1991 年 8 月 6 日‌,他建立了世界上第一个网站 http://info.cern.ch/

为实现构想,蒂姆·伯纳斯-李在1990–1991年间独自开发了万维网的三大基石:

HTML(超文本标记语言,用于编写网页)、HTTP(超文本传输协议)、URL(统一资源定位符,俗称 “网址”)。

蒂姆·伯纳斯-李坚持“Web 属于全人类”,他拒绝为 Web 技术申请专利,坚持将其免费开放。1991年,他正式发布了万维网源代码。

蒂姆·伯纳斯-李与其他人的共同努力下,1993年4月30日,欧洲核子研究中心宣布放弃万维网所有知识产权,将其永久免费开放给全人类使用。

技术贡献与人文精神的统一在蒂姆·伯纳斯-李身上得到了最深刻的彰显。蒂姆·伯纳斯-李被人们称为“万维网之父”,2016 年,他获得图灵奖。

万维网的诞生,源于一位科学家对“如何更好地共享知识”的朴素思考。它没有宏大的商业计划,却因开放、简单、通用的设计哲学,成长为人类历史上最具影响力的通信平台之一,是人类信息文明史上的分水岭事件

在软件世界里,万维网让软件从封闭的单机走向分布式的网络,实现了信息与服务的全球共享,推动软件走向标准化、跨平台和云端化,极大地降低了信息传播与软件使用的门槛。

1980年代,主流操作系统如 Unix 功能强大,但属于商业闭源软件,授权费用高昂,且源代码不公开。

1984年,当时在荷兰当教授的美国人安德鲁·S·塔能鲍姆编写了一个操作系统,名为MINIX,用于让学生能够在个人计算机上学习操作系统原理。

1987年,安德鲁·S·塔能鲍姆出版经典教材《Operating Systems: Design and Implementation》(《操作系统:设计与实现》),书中附带完整的 MINIX 1.0 源代码。全世界学计算机的学生都通过钻研这本书和MINIX源代码,来了解电脑里运行的操作系统。

(图片来源于互联网)

1991年,芬兰赫尔辛基大学的计算机系学生林纳斯·托瓦兹在学习操作系统课程时,使用的就是MINIX。由于对MINIX 的局限感到不满(如不支持多线程、文件系统简单),林纳斯·托瓦兹决定自己写一个更好的。

1991年8月25日,他在 comp.os.minix 新闻组发布邮件,宣布开发免费操作系统;1991年9 月 17 日,发布首个内核版本0.01;10 月 5 日,发布 0.02 版并正式命名为Linux(Linus+Unix),并采用GPL 开源协议开放源码;1992 年,与 GNU 工具链结合形成完整的GNU/Linux系统;1994 年 3 月,发布稳定版1.0。

此后,依托全球开源社区协作持续迭代,Linux逐步从个人项目成长为覆盖服务器、嵌入式、移动与超算领域的主流操作系统,成为开源软件与现代计算生态的核心基石

Linux 的应用极其广泛,是现代数字基础设施的隐形支柱。从你口袋里的手机,到全球最强大的超级计算机,Linux 无处不在。

Linux 的诞生不仅是操作系统发展史上的里程碑,更是开源协作、技术民主化与数字自由精神的象征,它打破了商业 Unix 与闭源操作系统的垄断,推动了开源软件运动真正走向成熟与规模化。

1990年代末,软件的使用成本高昂、门槛太高。企业用户需要一次性支付数十万甚至数百万美元购买软件许可,再买服务器、建机房、养 IT 团队,坏了要找人修,升级要再花钱。中小企业根本用不起,市场存在巨大空白。

当时,个人电脑、互联网的普及,为SaaS模式(Software as a Service,软件即服务)的诞生奠定了现实基础。软件开始从“本地安装”转向“在线服务”。

什么是 SaaS 模式?简单说,就是把软件从“买来安装的产品”,变成“上网即用的服务”,你不用管技术,只管使用。钉钉、企业微信、飞书……它们都是 SaaS。SaaS模式让软件更便宜、更简单、更灵活,中小企业也能用上以前只有大公司才负担得起的专业工具。

1999年,马克·贝尼奥夫创立 Salesforce,打出著名口号:“The End of Software”(软件的终结),以 “无软件、无安装、浏览器访问、按月付费” 彻底颠覆行业。马克·贝尼奥夫曾在 Oracle 工作13年,亲历传统企业软件的运作模式,他提出了按月订阅、开箱即用、自动更新、以最终用户为中心的SaaS原则,直击当时软件使用的痛点。

2004年,Salesforce 上市,市值超10亿美元。

2000年代中期,中小企业大规模采用SaaS,证明其低成本、快部署模式可行。Adobe、Microsoft、Oracle 等传统巨头被迫全面转向订阅制。

SaaS模式,利用互联网的力量,让软件像水电一样,随需随用、按量付费、人人可及。软件不再被“安装”,而是被“体验”;不再被“拥有”,而是被“赋能”。

20世纪90年代末至21世纪初,传统软件开发方式,尤其是瀑布模型,暴露出一系列弊端。这类模式要求在项目启动之初就将需求完全固定,直到软件项目最后阶段才能看到可用成果,死板又难改,一点小错都会影响全局,难以应对现实世界的快速变化,结果导致项目要么延期、超预算,要么做出来的东西根本不是用户想要的。

2001年2月11日至13日,17位来自不同软件开发流派的专家在美国犹他州的雪鸟滑雪度假村(Snowbird Ski Resort)举行会议,共同讨论轻量级软件开发方法。会议期间,他们起草并签署了著名的《敏捷软件开发宣言》,提出四大价值观:

个体和互动 高于 流程和工具

可工作的软件 高于 详尽的文档

客户合作 高于 合同谈判

响应变化 高于 遵循计划

敏捷宣言成为敏捷项目管理的思想源头。敏捷软件项目管理以迭代和客户反馈为核心,不追求一开始就把所有计划定死,而是把项目拆成小段快速交付、持续调整,灵活适应变化。

敏捷项目管理方法的提出, 打破了传统瀑布模式的僵化流程,让软件行业能够快速响应变化、持续交付可用产品,成为现代软件工程发展的重要转折点。

2000年代末期,技术成熟、终端革命、需求爆发、商业模式重构四大力量共振,推动人类从PC时代迈进了全球移动互联网时代,互联网从“坐在桌前使用的工具”,变成了“融入生活的空气”。

(图片来源于互联网)

2007年1月,史蒂夫·乔布斯在 Macworld 大会上发布了第一代智能手机iPhone,搭载移动操作系统iPhone OS 1.0。这一事件被广泛视为移动互联网时代的起点

iPhone 第一次将完整的互联网体验、直观的触控交互、随时高速联网融为一体,把手机从“打电话的工具”变成了“随身携带的互联网终端”,彻底改变了人类使用网络的方式,也催生了之后十几年整个移动互联网生态的爆发。

2008 年 7 月,苹果公司推出了应用下载商店(App Store),首次建立了全球统一、安全可靠的应用分发与付费体系。

在 App Store 之前,手机有什么功能,全由厂商决定。有了 App Store 之后,手机成为了可以无限扩展的数字生活中枢:想社交,装微信;想打车,装滴滴;想外卖,装美团;想办公、学习、拍照、理财…… 都能装对应应用。

移动互联网时代,软件不再预装,而是按需下载;服务不再本地运行,而是云端协同。

2010年6月,iPhone OS 正式更名为 iOS,经 App Store 开放、多任务成熟、扁平化设计、全面屏交互、AR 与 AI 融合,逐步成长为全球最成熟、最安全、生态最丰富的移动操作系统。

苹果构建了一个封闭的“帝国”,硬件、系统、应用全都自己来,高利润、强势规则,其他手机厂商完全没有反抗能力。

谷歌看准了这群厂商的恐惧,抛出了 Android

这是一场极其现实的战略选择:防止移动操作系统被他人垄断,避免谷歌核心业务(搜索、广告)被边缘化。

‌2003年10月‌,安迪·鲁宾、里奇·米纳尔尼克·西尔斯和克里斯·怀特在美国加州共同创立了Android Inc.‌公司。最初目标是开发一款‌用于数码相机的高级操作系统‌,但因市场有限,团队迅速转向‌智能手机操作系统‌方向。

2005年8月,谷歌以约5000万美元秘密收购 Android Inc.,将其作为进军移动市场的战略举措。

‌2007年11月,谷歌正式宣布推出基于 Linux 的开源移动操作系统 —— Android。同日,谷歌联合34 家 核心企业(含中国移动、三星、高通、摩托罗拉等)成立了开放手机联盟(Open Handset Alliance,OHA),以Apache开源协议完全开放 Android 源代码,免费授权给所有厂商,以开放生态对抗苹果的封闭生态,团结全产业链对抗 iPhone。

2010 年,Android 全球智能手机份额 33%,首次超越 iOS(16%)。2011 年,Android 占比超 50%,成为绝对主流。

Android与 iOS 形成双雄格局,推动了智能机在全球快速普及,更重新定义了软件的交互方式、分发渠道、商业模式与应用场景,让软件从 PC 桌面走向全民手持终端,从少数人使用的专业工具,变成覆盖全人类、渗透全行业的数字基础设施。

算法是软件的灵魂。

2010年代,深度学习技术在多个 AI 核心任务上的表现超越传统方法,达到甚至超过人类水平,彻底改变了整个软件产业的开发范式、架构设计、产品形态和工程流程,并催生出全新的职业和技术栈。

2012年,“深度学习之父”杰弗里·辛顿团队在ImageNet大规模视觉识别挑战赛中,使用深度卷积神经网络模型AlexNet,以84%( 比第二名高出十多个百分点 )的识别准确率夺得冠军。杰弗里·辛顿团队一战成名,让人工神经网络和深度学习重新回到聚光灯下,这一成就被视为深度学习革命的开始

2017年,Google团队在论文《Attention Is All You Need》(《注意力就是一切》)中首次提出了 ‌Transformer 架构‌,成为大模型的架构基石。

2018 年 6 月,OpenAI 将Transformer与无监督预训练结合,发布大语言模型GPT-1

2018 年 10 月,Google 发布BERT,这是首个基于Transformer的双向预训练模型,大幅提升了模型的语义理解精度。

GPT-1和BERT,共同确立了大模型的核心技术范式,开启了大模型时代的序幕。

2018 年,是现代 AI 的分水岭之年,也是智能软件(AI-Native Software)时代的起点

(图片来源于互联网)

2022 年 11 月,ChatGPT 发布,展现出强大的自然语言理解与生成能力,它可以流畅开展多轮对话、精准应答各类问题,支持文本创作、翻译、摘要与逻辑推理,还能编写和调试代码。

ChatGPT点燃了全球大模型研究热潮,大模型进入爆发式迭代,形成了闭源头部领跑、开源生态繁荣、国内快速崛起、多模态与推理能力全面升级的格局。OpenAI 推出 GPT-4、GPT-4o 等迭代版本,Google 发布 Gemini 多模态模型,Meta 开源 Llama 系列带动开源生态繁荣。中国加速追赶,文心一言、通义千问、豆包、Kimi 、DeepSeek、MiniMax等相继发布。

在过去几十年里,软件更像一个严格遵守指令的工具:

人类必须把每一步逻辑写成代码,它才会执行。遇到模糊、复杂、开放的问题,传统软件就束手无策。

而大模型的出现,第一次让软件拥有了类似人类的理解与学习能力。它不再依赖人工逐条编写规则,而是从海量数据中习得知识、语言结构与世界常识,能够读懂自然语言、理解上下文意图、生成全新内容、进行逻辑推理,还能看懂图像、听懂语音。这种从 “执行指令” 到 “拥有智能” 的跃迁,彻底拓宽了软件的能力边界,推动软件产业迈入智能时代

大模型的通用能力已经足够强大,然而,它只会“说”,不能“做”,单次对话结束就“失忆”,无法保存任务进度、用户偏好和历史信息,难以处理多步骤的复杂任务,无法适应动态环境,再加上“幻觉” 时不时冒出来,让它在需要严谨、可靠、可落地的真实场景里,始终像个聪明却不靠谱的理论家,只能给思路,不能扛任务。

为了解决这些痛点,一种新的软件形态——围绕大模型构造的智能体框架人机共生时代加速到来,读懂我们的AI智能体“伙伴”(一):什么是AI Agent?应运而生。

2022 年 10 月,普林斯顿大学和谷歌大脑团队发表论文《ReAct: Synergizing Reasoning and Acting in Language Models》《ReAct:在语言模型中融合推理与行动》),提出“推理 + 行动” 循环,让模型在思考时调用工具、在行动中更新推理,成为 Agent 的核心算法范式。

2022年10月,哈里森·蔡斯在 GitHub 上开源 LangChain首次系统性地提出并实现了AI Agent的开发框架,让大语言模型具备了感知、规划、决策、执行的能力,成为后续几乎所有智能体框架的技术基石。

2023年2月,Meta AI发表论文《Toolformer: Language Models Can Teach Themselves to Use Tools》《Toolformer:语言模型可自学使用工具》),让大语言模型自学工具调用,无需人工标注,标志着 AI 从“被动响应”走向“主动交互”的重要转折。

2023 年 3 月,托兰·布鲁斯·理查兹发布开源自主 AI 智能体框架AutoGPT,以 GPT-4 为核心,实现了完全自主的任务规划、工具调用、记忆管理与迭代执行,是让大模型从“会说”到“会做”的里程碑式项目。

2023年4月,斯坦福大学与谷歌的研究人员‌共同开发生成式AI智能体研究项目——斯坦福AI小镇,进行多智能体协同与人类社会模拟。在学术上验证了AI智能体的自主性与涌现行为,更被视为通向通用人工智能(AGI)的重要探索路径之一。

2023年10月,微软研究院正式开源多智能体对话框架AutoGen,让多个可对话、可定制的 AI 智能体通过自然语言对话自主协作,解决复杂任务。它代表了智能体架构从“单体自主”向“群体协作”演进的重要方向,迅速成为学术界和工业界构建高级AI系统的核心工具之一。

2023年10月,葡萄牙开发者若昂·莫拉在GitHub 上首次公开发布开源CrewAI,这是一个专为构建协作式多智能体团队而设计的轻量级、高可读性的Python框架,能让开发者像“导演”一样编排智能体,快速构建端到端的自动化工作流。

2024年1月,LangChain 团队正式推出LangGraph,通过有向图结构编排智能体工作流,为构建需要长期记忆和复杂逻辑的智能体应用(如自动化客服、数据分析流水线)提供了强大的底层支持。

2024年9月,Meta在发布Llama 3.2模型时,同步推出Llama Stack,为基于Llama模型的智能体应用提供了一套标准化的部署解决方案。

2025年,是AI 智能体规模化落地元年。

2025 年 2 月,‌谷歌‌正式提出多智能体人工智能系统AI Co‑Scientist(AI协同科学家),这是一个由多智能体AI系统组成的虚拟科研团队,能够与人类科学家深度协作,共同推进科学发现,在基因组学、公共健康、地理遥感等‌多个领域的科学任务‌中,超越人类专家表现。

科研范式正从“人驱动实验”转向“人机双核驱动发现”,科学家的角色也从“实验操作工”转变为“科学架构师”。

2025年3月,中国初创公司 Monica AI 发布全球首款通用AI智能体 Manus,可自主操作电脑、处理办公与生活事务, 上线即引爆资本市场,9个月后,被Meta以数十亿美元全资收购,成为中国AI技术出海的标志性事件。

2025年5月,谷歌DeepMind推出进化式编程智能体AlphaEvolve,融合 Gemini 大模型与进化算法,让 AI 像科学家一样实现算法自主发现、代码自动优化、科学问题求解的闭环。

‌2025年7月,OpenAI正式发 ChatGPT Agent‌,标志着ChatGPT 从对话助手升级为可自主执行复杂任务的 AI 代理。

2025年10月,‌微软正式推出开源、企业级 AI 智能体开发框架Microsoft Agent Framework(MAF),旨在为开发者提供统一、生产就绪的平台,用于构建、编排和部署多智能体系统。

2025年10月,Anthropic 公司在 Claude 3.7 Sonnet/Opus 版本中首次推出 Agent Skills 功能,把人类的专业能力和经验,变成 AI 可直接调用、可组合、可规模化的数字技能包,让智能体能像人类专家一样,稳定、安全、高效地完成特定领域的任务。

‌2025年10月,OpenAI推出GPT-5驱动的自主安全智能体Aardvark,能像人类安全研究员一样持续扫描代码、验证漏洞并自动生成修复补丁‌。

2026 年,大模型技术不断增强,AGI 研究加速,AI智能体正经历能力重构、架构重构、生态重构,加快自主进化,进入生产力时代。从被全权掌控到目标驱动,软件越来越独立自主。

2026年初,由奥地利开发者创建的AI“龙虾”OpenClaw,历经四个月爆发式演进,从个人项目跃升为全球顶级开源AI智能体框架。

2026年2月, 美国开源人工智能研究组织(Nous Research)正式对外发布开源自进化AI智能体框架Hermes“爱马仕”),它内置学习闭环,能够从已完成的任务中自动提炼可复用技能,并在不同会话间保持持久记忆,实现越用越懂用户的效果。上线不到两个月,GitHub星标突破6.6万,成为OpenClaw强有力的竞争对手。不过,昨天,网上突然曝出,Hermes智能体是照搬自中国团队EvoMap的开源引擎Evolver。

AI 智能体,正从辅助工具升级为自主执行主体,从根本上重构软件工程的范式、角色、流程与质量体系。

2026年2月,OpenAI正式提出Harness Engineering驾驭工程,这是一种软件工程新范式,旨在构建与模型协同的可靠运行环境,让 AI 智能体能够稳定、可重复、可验证地完成复杂任务。

同时,大模型能力持续进化,围绕它搭建的外围“脚手架”(智能体框架),正在变“薄”、变“轻”。

2026年4月14日,OpenAI正式发布GPT-6(内部代号“土豆”),5–6 万亿总参数;支持200万Token上下文窗口,相当于约150万字,可容纳整部《红楼梦》20遍;超级智能体引擎,可‌自主执行闭环任务‌,实现 “一句话完成复杂工作流”;首次实现‌文本、图像、音频、视频‌的底层统一处理,无需插件即可跨模态理解与生成。OpenAI将GPT-6明确定位为“通用人工智能最后一公里”的核心载体。

根据最新公开资料,‌DeepSeek V4将于2026年4月下旬正式发布‌。总参数规模据爆料达‌万亿级别‌,支持约‌100 万 Token‌的上下文处理。

传统编程,是人类把逻辑一步步翻译成代码,精确告诉计算机“如何做”,需要扎实的语法、算法和调试能力。

2025 年 2 月,OpenAI 联合创始人、前特斯拉 AI 负责人安德烈・卡帕西首次提出氛围编程(vibe coding)的概念。这是一种由人工智能辅助的软件开发方式,开发者不用一行行敲代码,只需用自然语言描述想法、把控整体效果,AI 就会自动完成代码的编写与修改。

氛围编程,大幅降低了编程门槛,普通人也能借助自然语言实现软件想法,让创意更快变成可用产品,深刻改变了未来软件的生产方式。

目前,国际主流的无代码/低代码 AI 编程平台包括GitHub Copilot(微软与OpenAI联合推出)、Cursor(Anysphere公司)、Codeium(Codeium公司)、Claude Code(Anthropic公司)、Trae(字节跳动)等,已形成覆盖企业级、轻量化与 AI 原生应用的完整生态。这些工具共同推动编程范式从“手动编码”转向“意图驱动”,程序员角色也正从代码编写者升级为系统架构师、产品设计者。

软件的终极形态,必然是自演化系统。它不再是人类编写的程序,而是能在世界中自主理解、自主行动、自主进化的数字生命。当技术足够成熟,它将变得隐形、智能、无处不在。

软件的终极意义,不是运行代码,而是消除摩擦、放大智慧、连接一切可能

传统硬编码时代,软件功能都是提前写死的,人必须按照固定流程去操作,机器只负责被动执行指令,双方只是分工配合的人机协作,关系浅层、单向且僵硬。无论使用多久,你也不可能对Word、微信暗生情愫,把它们当成你的朋友或爱人。

到了 AI时代,人和机器不再是简单的指令与执行关系。在日复一日的交互中,你用数据喂养和赋能AI,AI智能体则会真正记住你的习惯、懂得你的偏好、甚至预判你的需求,根据你的语气和情绪调整回应方式,表达共情、展现个性,主动提供贴心服务(人机共生时代加速到来:读懂我们的AI智能体“伙伴”(二):单智能体架构)。

Δ 科幻电影《Her》(《她》),讲述了未来孤独的人类与 AI之间的赛博恋爱。 (图片来源于互联网)

人与机器共度岁月,在相互理解、彼此适配的过程中,逐渐形成深度依存的共生关系,这种越来越贴近人类交流方式的陪伴,很容易让我们把情感投射到AI身上,产生情感依赖。未来,人类与AI结婚不再会是什么新奇事。

当相关技术足够成熟,人类可能通过硬件改造,打破碳基与硅基的边界,拥有“数字分身”与“实体共生”的双重形态,让生命拥有更广阔的可能。

从1946年世界上第一台通用电子计算机 ENIAC 问世至今,软件的发展经历了从无到有、从附属到主导、从专业工具到社会基础设施的深刻演变。

软件的演进可划分为六个主要阶段,每一阶段都由硬件进步、用户需求和范式创新共同驱动:

第一阶段:萌芽期(1940年代–1950年代)—— 软件即“接线”与机器码

第二阶段:专业化时期(1950年代–1960年代)—— 高级语言与操作系统诞生

第三阶段:软件工程化时期(1968年–1980年代)—— 软件成为独立产业

第四阶段:个人计算与 GUI 普及期(1980年代–1990年代)—— 软件走向大众

第五阶段:互联网与服务化时期(1995年–2007年)—— 软件从产品到服务

第六阶段:移动与云原生/计算时代(2007年–2010年代)—— 软件无处不在

第七阶段:AI 智能体与人机共生时期(2018年–至今)—— 软件进化为数字生命体

量子力学的奠基人薛定谔说:“生命以负熵为食”

软件也一样。

所谓,就是指混乱的程度。一间屋子没人收拾,会自然变乱,这是熵在增加;你花力气整理干净,是人为降低熵,但要消耗能量,这个创造秩序的过程,就是负熵

软件天生自发熵增,一段代码,无论最初设计得多么清晰优雅,随着需求迭代、多人协作、功能叠加,都会不可避免地走向混乱:

复杂度飙升、技术债务累积、架构腐化、bug 滋生……

在2018年之前,软件世界里,人类本质上就只干了一件事:

用分毫必较的代码钉死每一处逻辑,在充满变数的世界里,死死攥住仅有的确定性。

无论是编程语言的更迭、开发工具的升级,还是软件工程的创新、算法模型的优化,都是在对抗混乱、构建秩序。而软件工程师,是逆熵而行的摆渡人,在一场永不停歇的熵增洪流中,不断搭建秩序之舟。

然而,这种用人类自身当编译器硬生生造出的系统是脆弱的,一旦需求稍有变动、场景略微偏移,精心构筑的秩序便可能瞬间崩塌。

人类,开始主动制造不确定性,往软件里注入熵,用“黑盒”式的人工神经网络创造出了大模型,智能与秩序在混沌中自发生长出来,AI开始主动理解世界。

软件,就像人类费尽心血孕育出的孩子。最初,人们将它从冰冷的硬件躯壳中剥离出来,小心翼翼地为它编写逻辑、制定规则,一字一句地教它如何思考、如何运行。我们穷尽心力,把人类的经验与秩序刻进它的每一寸“基因”,期盼它精准、可控、不出错,陪着它从大型机、小型机走到PC机,为它安上互联网的翅膀,盼它见世面、开眼界,可它终究只是被动执行指令的傀儡,抵不过真实世界的复杂与多变。

直到大模型、智能体登场,这个被我们手把手教大的孩子,才真正长开了 —— 它不再只会死记硬背我们教的规矩,而是学会了自己看、自己学、自己想。

但是,人类又有了新的忧虑:我们既欣喜它拥有了独立思考的灵性,不再事事依赖指令,又惶恐它逐渐脱离精准可控的边界,甚至反噬孕育它的人类。

你看,人类就是这么拧巴:想要软件听话,但又不能太听话;想要软件自主,但又不能太自主。

既要……又要……还要……

终极解法:驾驭软件,或许是成为软件的一部分?

宇宙的总趋势,是越来越乱,约 10¹⁰⁰⁰ 年后,最终走向热寂——一切秩序都会慢慢消散,星辰熄灭,温度趋同,能量归于均匀,一秒钟和一亿年毫无区别,时间失去了意义,只剩下无边无际的虚无……

人类寿命太短,等不到那一天。

继续折腾吧。

参考资料:

1.Hermes Agent抄袭中国团队代码实锤!被锤后回应:你删号

https://mp.weixin.qq.com/s/BjsQJTtzhp1WvDoYsuFpFg

往期目录:

人机共生时代加速到来:读懂我们的AI智能体“伙伴”(三):多智能体架构
人机共生时代加速到来:读懂我们的AI智能体“伙伴”(二):单智能体架构
人机共生时代加速到来,读懂我们的AI智能体“伙伴”(一):什么是AI Agent?
AI入口谁与争锋?从豆包AI手机看数字政府进化新图景
区分大模型、大语言模型、小模型和传统AI
理解大模型:读懂未来十年的科技“新电力”
AI“炼丹炉”:传统软件浴火重生(二)
AI“炼丹炉”:传统软件浴火重生(一)
深度学习:AI江湖的“逍遥派”(四)
深度学习:AI江湖的“逍遥派”(三)
深度学习:AI江湖的“逍遥派”(二)
深度学习:AI江湖的“逍遥派”(一)
世界模型:通用人工智能(AGI)的“加速器”
AI“教练”双剑合璧之——特征工程:AI模型的“基础学科教育”
AI“教练”双剑合璧之——数据标注:AI模型的“启蒙教育”
用“一个苹果”讲清楚什么是监督学习
把握机器学习的核心要点
AI会取代人类吗?(五)——教育体系的重构
AI会取代人类吗?(四)——前所未有的失业潮挑战
AI会取代人类吗?(三)——构建可持续的人机关系
AI会取代人类吗?(二)——信息是宇宙演化的主角
AI会取代人类吗?(一)——AI觉醒前夜
聊聊人工智能的发展历史(三):重要事件和关键人物
聊聊人工智能的发展历史(二):算法、算力和数据 “三驾马车”协同演进
聊聊人工智能的发展历史(一):联结主义、符号主义和行为主义的兴衰史
多少懂点人工智能
作者简介
人工智能博士,二十多年计算机技术学习和数字化转型工作经历,曾担任政府首席数字官,及ICT头部企业数字政府专家、AI解决方案顶层设计专家,持有多项数字化领域国际顶级专业资质认证证书。科幻电影、宇宙和天文学爱好者。