每10年一次的“开发者淘汰战”,自1969年就已开局!

每十年,总有人信心满满地宣称:“这次,我们终于可以让软件开发变得简单,不再需要那么多开发者了。”但现实是,我们真的不再需要开发者了吗?

近日,资深开发者 Stephan Schwab 在《Why We’ve Tried to Replace Developers Every Decade Since 1969》一文中回顾了过去五十年软件开发的迭代历程——从阿波罗计划手写导航软件的壮举,到 COBOL、CASE 工具、Visual Basic,再到今天的 AI 编程助手,他深度分析了为什么试图“替代开发者”的梦想总是反复出现。

通过剖析这一模式,我们不仅能理解工具如何改变开发方式,更能看清软件工作的本质:复杂性不可消解,而真正的核心,是人的思考。这篇文章带你回到每一次技术浪潮的现场,看看每一次尝试如何既带来便利,又揭示了不可绕过的挑战——也让我们明白,开发者从未真正被替代,只是工作方式在不断进化。

来源:https://www.caimito.net/en/blog/2025/12/07/the-recurring-dream-of-replacing-developers.html

作者 | Stephan Schwab 责编 | 苏宓

出品 | CSDN(ID:CSDNnews)

梦想诞生于人类最伟大的成就

1969 年,当尼尔·阿姆斯特朗踏上月球时,全世界见证了有组织的人类智慧能实现的奇迹。而这背后,是玛格丽特·汉密尔顿及其团队手写的阿波罗导航软件,通过仔细复核捕捉关键错误,证明软件可以至关重要。

阿波罗计划展示了软件开发在实现“不可能”任务中的核心价值,但也暴露了一个让企业高管数十年困扰的问题:写软件需要专业知识、高度专注和大量时间投入。于是,让开发更简单、减少对这些昂贵专家依赖的梦想几乎立刻诞生。

COBOL:让业务人员自己写程序

上世纪 60-70 年代,COBOL 出现了,其名字本身就明确目标:Common Business-Oriented Language(通用业务导向语言)。理念很清晰:让语言像英语一样可读,业务分析师就能自己写程序,无需专业程序员。

“如果语法足够易读,任何理解业务的人都能写代码。”

这个愿景确实很吸引人。软件对业务运作越来越关键,但程序员仍然稀缺且昂贵。COBOL 承诺让软件开发大众化。

然而,现实并非如此。COBOL 最终还是一门需要专业培训的语言。业务分析师尝试写 COBOL 时很快发现:可读的语法并不能消除逻辑、数据结构或系统设计的复杂性。于是,出现了一类新的 COBOL 程序员,而消除专业开发者的梦想依然未能实现。

梦想并未消亡,它只是等待下一波技术浪潮。

20 世纪 80 年代:CASE 工具将生成一切

20 世纪 80 年代,计算机辅助软件工程(CASE)工具出现,带来了巨大的期望。只需绘制流程图或实体关系图,工具就能生成可运行的代码。它的宣传口号很有吸引力:可视化设计比输入复杂难懂的命令更直观。业务专家可以建模自己的流程,而软件就会自动生成。

企业投入巨大,供应商承诺生产力提升十倍以上。然而,大多数 CASE 工具项目要么挣扎,要么彻底失败。

生成的代码往往需要大量手工干预。性能问题频出。维护更是噩梦——生成代码与视觉模型一旦偏离,问题层出不穷。最关键的是,画准确的图表仍然需要理解与编程同样的逻辑复杂性。工具改变了界面,但没改变根本挑战。

问题再次证明,比解决方案更难应对。

Visual Basic 和 Delphi:拖一拖,写好了

90 年代出现了不同的思路。微软的 Visual Basic 和 Borland 的 Delphi 大幅降低了用户界面开发难度:拖组件、设置属性、写事件处理程序,Windows 应用开发对经验有限的开发者来说也变得可行。

这波浪潮与 COBOL 或 CASE 工具不同。它承认编程知识仍然必不可少,但降低了入门门槛,让更多人能够创建有用应用。

然而,消除开发者的梦想依然存在:“高级用户”和“公民开发者”可以构建部门级应用,IT 部门只管基础设施,业务部门解决自己的软件需求。

现实更微妙。简单应用确实更易被更多人使用,但随着需求复杂度增加——与现有系统集成、安全性要求、负载性能、长期维护——对经验丰富开发者的需求变得显而易见。工具扩大了可编程人群,却无法消除构建复杂系统所需的专业知识。

于是,这个循环延续到新千年。

2000 年代及以后:Web 框架、低代码和无代码

每个十年都会带来新的变化。Ruby on Rails 推出了“约定优于配置”;低代码平台提供可视化开发,几乎无需编码;无代码平台宣称可以完全免编程完成常见业务应用。

每一波都带来了真正价值。开发在特定场景下确实更快了,更多人能参与软件创建。然而,专业开发者仍不可或缺,且对其技能的需求非但没有减少,反而持续增长。

这就引出一个问题:为什么这个模式总是重复?

为什么这个梦想一直存在

反复出现的模式揭示了我们对复杂性认知的重要事实:软件开发看起来应该简单,因为我们可以用普通语言描述需求。

“当客户下单时,检查库存、计算运费、处理支付,并发送确认邮件。”这样的描述听起来很简单明了。

但复杂性隐藏在细节中:库存被其他订单暂时占用怎么办?部分付款如何处理?邮件服务暂时不可用怎么办?是否重试?重试几次?客户在结账时会话过期怎么办?如何避免重复订单?

每个答案又会引出更多问题。累积的决策、极端情况和交互产生真正的复杂性,没有工具或语言可以消除。有人必须思考这些情境,这就是软件开发——无论是用 COBOL、CASE 工具图、Visual Basic 还是 AI 提示。

AI:漫长故事中的最新章节

今天的 AI 编程助手是迄今最强大的尝试,它们可以根据自然语言描述生成大量可运行代码,解释现有代码、提出改进建议、帮助调试。

这确实是进步。对经验开发者来说,它们提高了效率;对学习者来说,交互式指导非常有帮助。

然而,我们已经看到熟悉的模式出现:初期对 AI 替代开发者的兴奋,正在被更细致的理解取代——AI 改变的是开发者的工作方式,而不是消除他们的判断需求。复杂性依然存在:有人必须理解业务问题,评估生成代码是否正确,考虑安全性,确保与现有系统整合,并在需求变化时维护代码。

AI 扩大了开发者能力,却无法替代那些既懂业务又懂技术的人。

机会巨大,但仍然捉襟见肘

这是让这个模式更具讽刺意味的悖论。软件能力进步惊人:阿波罗导航电脑只有 4KB 内存,你的智能手机计算能力比它强几百万倍。我们拥有真正能让开发更容易的工具和框架。

然而,对软件的需求远超我们创造能力。每个组织需要的软件比能开发的还多,待办功能和新项目的积压增长速度超过开发团队的处理能力。

这种紧张关系——强大工具却不足以应对——让梦想保持活力。企业高管看到积压功能时会想:“一定有办法更快,让更多人参与。”这是合理的思路,也自然催生了对任何“让软件开发大众化”工具的热情。

问题是,软件开发的瓶颈并不是打字速度或语法知识,而是处理复杂性所需的思考。打字再快,也无法解决并发数据库更新的设计思考;语法更简单,也不能帮你推理安全问题。

那么,领导者应该如何运用这种认知?

对领导者的启示

理解这个模式能改变你评估新工具和方法的方式。当有人承诺业务用户无需开发者就能构建应用时,你可以理解他们的愿景,同时保持现实预期。

正确的问题不是:“这会让我们不再需要开发者吗?”

而是:

  • 这能让开发者在处理复杂问题时更高效吗?

  • 这能让我们更快地构建某些类型的解决方案吗?

  • 这能减少重复性任务,让开发者专注于独特挑战吗?

  • 团队是否需要学习新技能才能有效使用?

这些问题承认开发涉及不可简化的复杂性,同时对提供真正杠杆作用的工具保持开放态度。

模式揭示了问题的本质

五十年的循环教会我们一个基本道理:软件开发的挑战不是机械性的——不是打字太多、语法太复杂、步骤太多。COBOL 让语法可读,CASE 工具减少了输入,视觉工具消除了语法,AI 可以根据描述生成完整的函数。

每一次进步都解决了实际存在的痛点,但根本挑战依旧存在,因为它并非机械性的,而是智力性的。软件开发是“思考的可视化”。我们创造的产物——COBOL 程序、Delphi 表单、Python 脚本——是对复杂性进行思考的可见结果。

这种推理没有捷径,就像设计建筑或诊断病症一样。工具更好,经验丰富确实有帮助,但有人仍必须认真思考。

目光清醒地前行

新一波开发工具迟早会到来,有些能带来真正价值,有些则只是用新技术重复旧承诺。理解这个循环模式,能让你更有效地使用新工具。

使用 AI 助手,评估低代码平台,尝试新框架。但最重要的是投资于团队清晰思考复杂问题的能力——这才是限制因素,就像阿波罗计划时期一样。

登月之所以成功,是因为杰出的科学家们对极其复杂的挑战进行了周密的思考,考虑到了每一个细节。他们手写软件,因为这是当时可用的工具。如果有更好工具,他们会欣然使用,但工具无法消除思考复杂性的需求。

如今情况相同。我们有更好的工具——但思考仍不可或缺。

梦想的意义

或许,人们反复萌生 “替代开发者” 的想法并非谬误。这种执念更像是一种必要的乐观主义,持续推动着工具的迭代与创新。每一次尝试让开发更易上手,都会带来真正帮助。梦想可能未能按最初设想实现,但追求它本身创造了价值。

COBOL 没让业务分析师写程序,但让一代开发者有效构建了业务系统;CASE 工具没生成完整应用,但推进了视觉建模的思考;Visual Basic 没消除专业开发者,但让更多人能开发应用;AI 不会替代开发者,但会改变我们的工作方式。

这种模式之所以持续存在,因为梦想反映了真实需求。我们确实需要更快、更高效地创造软件,只是发现限制因素不是工具,而是我们要解决问题的复杂性。

理解这一点,不意味着拒绝新工具,而是要明确它们能提供什么,以及哪些永远需要人类判断。

推荐阅读:

员工一律禁用AI!50年老牌游戏公司下发最严禁令,CEO直言:“内部没人真的看好”

电脑开机要先闯关?程序员10个月用C语言爆肝5款神作,赢不了直接关机,网友:越折腾越上头

寻找“代码诗人”与“破壁者”:2025鲲鹏金奖项目背后的青年图谱

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/1191332.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

055.多层图最短路(扩点)

扩点最短路,也叫分层图最短路建图的节点不是真实的位置,而是真实位置+在此处的状态一般还要用到状态压缩技巧核心在于如何扩点,如何到达,如何算距离习题 获取所有钥匙的最短路 leetcode 864节点表示状态 : 真实位…

Vivado License节点锁定设置:项目环境配置说明

Vivado 节点锁定许可配置实战指南:让 FPGA 开发环境稳如磐石你有没有遇到过这样的场景?早上刚打开电脑准备调试关键模块,Vivado 启动失败,弹出一串红色警告:“License checkout failed”。一查日志才发现,许…

‌AI模拟用户情绪波动:软件测试从业者的新测试范式

在当今以用户体验为核心的产品开发逻辑中,软件测试早已超越“功能正确性”的单一维度,逐步向‌情感可用性‌(Emotional Usability)和‌心理韧性测试‌(Psychological Resilience Testing)延伸。‌一、为什么…

记一次经典的反序列化漏洞(CVE-2017-10271)

关于WebLogic ​ WebLogic 是由 Oracle 公司开发的一款企业级 Java EE(现 Jakarta EE)应用服务器,广泛用于构建、部署和管理大型分布式企业应用。它提供高可用性、可扩展性和安全性,支持诸如 EJB、JMS、JTA、JDBC、…

Authentication is required but no CredentialsProvider has been registered 报错已解决

文章目录 Authentication is required but no CredentialsProvider has been registered 报错已解决项目场景问题描述原因分析1️⃣ Git 仓库是私有仓库2️⃣ Git 仓库地址(uri)配置错误3️⃣ 未配置 CredentialsProvider 解决方案方案一:配置…

Multisim14使用教程:快速理解直流电路搭建步骤

Multisim14实战入门:手把手教你搭出第一个直流电路你有没有过这样的经历?在模电实验课上,接了一堆导线,万用表一测——电压不对;反复检查,发现是电源正负极接反了。更糟的是,某个电阻还因为电流…

解决vscode中文输入法输入没有候选框问题

去掉勾选即可 参考https://blog.csdn.net/m0_47346543/article/details/154704448黄粱一梦,终是一空本文来自博客园,作者:hicode002,转载请注明原文链接:https://www.cnblogs.com/hicode002/p/19509148

大模型测试的“冷启动评估”:新模型上线前怎么测?

冷启动评估的紧迫性与定义 在人工智能时代,大模型(如LLM)的部署已成为企业核心能力,但新模型上线前的冷启动问题常被忽视。冷启动指模型首次响应请求时因初始化延迟导致的性能瓶颈,包括资源分配、依赖加载和计算图优化…

Error creating bean with name ‘xxxxxxxController‘: Injection of resource dependencies failed报错已解决

Error creating bean with name ‘XXXController’: Injection of resource dependencies failed 问题已解决:4 种高频原因全面排查指南 一、项目场景 在一次 Spring Boot MyBatis 的后台项目开发过程中,项目结构、依赖、配置看似全部完成,但…

2026中国智慧养老行业:老龄化浪潮下的刚性需求爆发

截至 2024 年末,中国 60 岁以上人口达3.1 亿,照护依赖人口五年内将增至4000 万 ,护理员缺口超500 万,刚性需求全面爆发。2026 年市场规模预计突破8.3 万亿元,2030 年将达15.1 万亿元;八部门新政以科技赋能为…

通过agentscope在EKS部署远程沙盒和代理应用

参考资料https://runtime.agentscope.io/zh/tool.htmlAgentScope Runtime是一个面向 AI Agent 的全栈运行时,解决高效部署与服务化以及安全的沙箱化执行。 测试环境为python3.13,安装agentscope-runtime uv add &quo…

如何测试AI生成的邮件是否符合商务礼仪:软件测试从业者指南

AI邮件测试的必要性与挑战在AI工具(如豆包AI、文心一言)广泛应用于商务邮件生成的背景下,测试从业者面临新挑战:确保AI输出邮件符合专业礼仪,避免因文化误解、语气不当或格式错误导致沟通失误。 据统计,近4…

IDEA_pom.xml_spring-boot-maven-plugin爆红问题解决

文章目录IDEA中spring-boot-maven-plugin报红问题及解决方案项目场景问题描述原因分析解决方案1. 添加版本号2. 刷新 Maven 项目3. IDEA 重启(必要时)经验总结总结IDEA中spring-boot-maven-plugin报红问题及解决方案 在使用 IntelliJ IDEA 进行 Spring …

跨境电商防关联:从“单点隔离”到“系统化风控”一套打穿

很多卖家做防关联只停留在“换IP换浏览器”,结果仍然二审频繁、限流或资金风控。原因是平台判定关联不是只看某一个点,而是把设备指纹、网络链路、业务资料、资金履约、内容与行为拼成整体画像。要想稳定跑矩阵,必须把防关联做成“系统工程”…

全国现代物业管理人才培养赋能新质生产力发展研讨会 (MPMTT 2026)

全国现代物业管理人才培养赋能新质生产力发展研讨会(MPMTT 2025)将于2026年3月13日-15日在中国昆明隆重举行。MPMTT 2025 由昆明理工大学津桥学院主办,将针对物业管理的相关研究领域展开探讨,旨在为相关领域的专家学者&#xff0c…

玩转Synbo|为什么说质押是进入Club的关键动作

各位社区成员大家好,在进入Synbo体系过程中,质押是获取Club门票与绑定身份的关键动作。当你的质押数量达到某个Club设置的阈值,你就会获得这个Club的成员身份,并解锁:融资可见性、参与权限、激励分配关系,本…

Galaxy比数平台功能介绍及实现原理|得物技术

一、背景 得物经过10年发展,计算任务已超10万,数据已经超200PB,为了降低成本,计算引擎和存储资源需要从云平台迁移到得物自建平台,计算引擎从云平台Spark迁移到自建Apache Spark集群、存储从ODPS迁移到OSS。 在迁移时…

上位机软件开发中串口超时机制的设计实践

串口通信“卡死”怎么办?上位机超时机制的实战设计之道你有没有遇到过这样的场景:上位机软件点击“读取参数”,界面瞬间“假死”,鼠标动不了,任务管理器都救不回来?等了整整30秒,才弹出一个“设…

Eclipse 打开报 `An error has occurred. See the log null` 错误及解决方法

Eclipse 打开报 An error has occurred. See the log null 错误及解决方法 项目场景: 在日常 Java 开发中,Eclipse 是最常用的开发工具之一。我们在 Windows 系统中使用 Eclipse 时,有时会遇到突然无法打开 Eclipse 的情况,报错信…

第七篇:告别手动拼 URL!我们封装自己的“地图超市”

View Post第七篇:告别手动拼 URL!我们封装自己的“地图超市”本专栏旨在手把手带你从零开始,基于开源三维地球引擎 **Cesium** 封装一套功能完善、可复用的 **WebGIS 增强型 SDK**。内容涵盖核心封装思路、关键代码…