在哥本哈根Goto大会上,Holly Cummins 发表了主题演讲,呼吁开发人员关注那些会影响其工作却常被忽视的问题。她警告说设计决策可能引发意想不到的后果,并提倡采用系统思维以及提升统计素养。她强调,在硬件发展速度超越摩尔定律的时代必须掌握并发技术,并提到了人工智能对就业市场的影响。
作为软件开发人员,我们面临着独特的挑战,因为我们既要与计算机打交道,也要与人合作。但正如 Cummins 所言,我们在众多领域面临的诸多挑战是共通的:
在这个复杂的世界中,我们该如何做决策?如何确保善意的决策不会产生意想不到的后果?
Cummins 提到了眼镜蛇问题。殖民时期的印度政府决定减少眼镜蛇的数量,并决定为每条上交的眼镜蛇尸体支付丰厚的赏金。政府未曾预料到的是,一些精明的人开始人工饲养眼镜蛇——毕竟彼时的眼镜蛇成了摇钱树。这已经够糟糕了,但事情的后续发展更加令人瞠目结舌:政府突然取消了赏金计划,所有饲养者瞬间失去了饲养的动力,致使所有圈养的眼镜蛇被集体放归野外。
对我们大多数人而言,设计决策虽不太可能引发眼镜蛇数量的激增,但仍然可能产生意想不到的后果,Cummins 提到:
例如,YAML 设计者将“no”解析为“false”的做法运转良好……只要 YAML 文档中不提及挪威,因为挪威的国家代码“no”会被自动转换为“false”。
Cummins 提到,系统思维是解决方案的一部分。万物皆非孤立存在,在考虑技术解决方案时,我们必须思考系统某部分的变化可能对另一部分产生的意想不到的影响。但她指出,系统思维往往耗时又费力,因此有时我们需要在分析中采取更简便的方法。如何基于数学模型快速决策?Cummins 表示,这正是统计学发挥作用的地方:
统计学是数据科学的基础,而数据科学则是现代人工智能系统的重要支撑。大型语言模型的输出结果是基于对训练数据的统计分析,以及特定语境下各种词汇组合出现的概率。
Cummins 认为,像她这样大学时忽略统计学学习的人,或许该补补课了。她建议参加在线课程,比如麻省理工学院开设的数据科学课程。若时间有限,也可以通过书籍和文章学习:
虽然以贝叶斯统计为核心,但《万物皆可预测》对经典统计学的系统梳理同样令我受益匪浅。尽管 Emily Oster 的关注点在育儿而非 IT 领域,但她对统计误用的剖析仍然让我收获颇丰——例如她对残余混杂因素的阐释(听起来枯燥,实际上非常有趣!)。
Cummins 指出,摩尔定律的终结意味着现代计算机正在横向而非纵向发展。性能提升源于增加处理核心,而非增加单芯片的晶体管数量。要充分利用这些核心,就需要程序在硬件层面实现并行执行。这意味着编程模型要具有并发性:
即使在单核芯片上无法实现并行处理,并发编程对某些工作负载(如 I/O 密集型任务)也至关重要。如今,并发性对所有类型的工作负载都变得不可或缺。这很尴尬,因为编写并发代码是出了名的难度大。
Cummins 提到,我们的行业正在设法提供更强大的抽象层和库。我们看到,在 Java 领域,Netty 等现有的库正在添加强大的并发特性,而 Quarkus 和 Micronaut 等新框架则是以此为基础构建的,为开发人员提供了更友好的并发解决方案。她总结道,与此同时,还有一些优秀的新语言特性已经发布,例如虚拟线程和结构化并发。
InfoQ 采访了 Holly Cummins,探讨软件开发人员可能需要了解的一些事项。
InfoQ:概率在垃圾邮件检测中是如何发挥作用的?
Holly Cummins:垃圾邮件检测的核心在于评估邮件是垃圾邮件的可能性,即概率。邮件被判定为垃圾邮件的概率被称为其“垃圾邮件度(spamicity)”,一个很有意思的术语。
许多现代化的垃圾邮件过滤器都是基于贝叶斯分析这一个概率理论构建的。它们逐个分析邮件中的每个词,而不是仅通过“不良”词列表来筛选邮件。有些词在垃圾邮件中频繁出现,却很少出现在正常邮件(“ham”)中。若检测到这样的词,则邮件被判定为垃圾邮件的概率便会上升。反之亦然:有些词在正常邮件中常见,却极少出现在垃圾邮件中。若过滤器检测到这样的词,则会降低邮件被判定为垃圾邮件的概率。
InfoQ:人工智能对软件开发就业市场有什么影响?
Cummins:试图预测未来并不明智,但我可以根据过去做一些观察。杰文斯悖论(Jevons Paradox)告诉我们,效率提高可能导致消费增加。在过去的七十年里,编写软件的过程变得越来越高效。试想一下,从汇编语言到高级语言的生产力飞跃,或是开源框架如何成了软件开发的加速器。但同样在这七十年间,软件开发人员的数量却在呈指数级增长。
我个人认为,对软件的需求将持续攀升——部分原因正是源于当下效率提升带来的连锁效应。
原文链接:
https://www.infoq.com/news/2026/01/things-software-developers/





