Rust 2026: $400K Salaries, Java, AI & Why It's Not Everywhere (Yet) — Jon Gjengset Explains
加载中...
点击任意话题卡片查看该时段的完整对话内容。
开场先抛出 Rust 高薪、受欢迎、AI 被高估等话题钩子,随后转入 Rust 作为编程语言诞生时要解决的问题。Jon 解释,Rust 早期口号强调安全、性能和人体工学,即可用性。传统语言通常需要在三者之间取舍:追求易用往往要依赖运行时和垃圾回收,从而牺牲性能;追求底层性能又容易失去安全和开发体验。Rust 的目标是在这些目标之间“穿针引线”,尽量同时提供三者,因此它被定位为一种试图打破传统权衡的系统编程语言。
Jon 回忆自己在 MIT 读博的经历,并不把那里描述成冷酷竞争的环境,而是强调协作、好奇心和跨学科交流。他提到教授普遍开放,学生之间也常围绕研究展开讨论,这种文化给了他探索新语言的空间。他在博士项目中最初用 Go 写研究数据库原型,但几个月后决定重写系统;当时 Rust 1.0 刚发布,而他的数据库会是高度并发代码库,于是他尝试用 Rust 实现第二版。这个选择并非出于对 Go 的否定,而是重写契机叠加对编程语言的兴趣,最终让他持续使用 Rust。
访谈提到 Stack Overflow 调查中 Rust 连续九年最受开发者赞赏,但实际使用比例只有约 12% 到 14%。Jon 认为,这种反差部分来自开发者想用却用不上,反而让 Rust 更显得令人向往。但更根本的阻力来自企业内部的惯性:已有代码、已有语言栈、既有人才和工具链都不是 Rust,迁移意味着培训、重写、组件替换和长期维护成本。他特别指出学习曲线并不是企业不采用 Rust 的主要原因,它可能影响 Rust 程序员数量,但公司决策更受切换成本和业务必要性影响。
Jon 介绍自己在 AWS 的工作是开发、维护和支持内部 Rust 构建系统,所有 Amazon 内部 Rust 代码库都依赖这套系统。他接手的是一个内部草根工具,并将其发展成更成熟的平台,覆盖安全溯源、IDE 集成、日志、测试以及尽量兼容标准 Cargo 工具。谈到阻力时,他指出 Amazon 通常不会强制语言选择,Java 之所以常见,是因为 AWS 大量基础设施、库、遥测、调试和工程人才都围绕 Java 建成。Rust 的内部推进也不是自上而下宣传,而是许多团队主动要求使用,最终形成官方支持。
主持人提出 Rust 是否是“极客为极客创造、商业利益靠后”的语言。Jon 反驳说,Rust 已在 AWS、Meta、Google Fuchsia 等大规模业务中使用,并非不适合商业场景。真正的问题在于它较新,企业现有资产不在 Rust 上,迁移涉及重写意愿、人才、培训和生态成熟度。他也讨论了 Discord 等迁移案例,认为外部很难判断具体瓶颈。迁移可能被 C++ 重依赖、硬件库、CUDA、DPDK、Unity 等生态耦合拖累,也可能因为现有系统稳定、缺乏足够 Rust 维护者而暂缓。
Jon 概括了他看到 Rust 最积极采用的领域。第一是嵌入式开发,尤其是直接编程 ESP32 等低层设备时,现实选择主要是 C、C++ 或 Rust,而开发者往往更愿意选现代、更安全且有第三方生态支持的语言。第二是命令行工具,clap 这样的 crate 降低了构建 CLI 的门槛,推动很多人选择 Rust 写工具。第三是安全关键应用,包括国防、汽车和部分航天场景,这些领域传统上依赖 C/C++,不太使用运行时语言,而 Rust 在不引入沉重负担的前提下提供更强安全性。
主持人让 Jon 分别用一句话向 Go 和 C++ 团队推销 Rust。对于 Go 团队,他强调 Rust 能减少运行时崩溃和业务逻辑错误,不只是内存安全;Rust 的表达力强的类型系统可以把更多保证放到编译期,让程序员更确信代码正确。对于 C++ 团队,他承认 RAII 已解决部分资源释放问题,但 Rust 在并发安全上明显不同:C++ 依赖 sanitizer 等工具只能检测某次执行中出现的问题,而 Rust 可以在编译期静态排除很多并发错误。他还调侃 Rust 的构建系统和第三方依赖体验对 C++ 开发者很有吸引力。
访谈最后转向 Jon 的个人经历:他在美国生活近十年,先在 MIT 读博,后在 Amazon 工作,2023 年回到挪威。Jon 表示离开美国的主要原因是自己并不喜欢美国的社会结构,而不是针对美国人。他举医疗体系为例,认为美国处理医疗的方式让他很不舒服,不想生活在这样的社会中。博士毕业时他原本就计划离开美国,但伴侣因工作想去洛杉矶,于是又停留几年。最终他们选择欧洲,挪威因为有家庭联系成为首选,但他也强调是否永久定居仍未确定,自己对搬家的门槛较低。