无痛消灭技术债:Google I/O 2026 开启 Go 自动重构时代

本文永久链接 – https://tonybai.com/2026/05/29/google-io-2026-automated-go-refactoring-eliminating-technical-debt 大家好,我是Tony Bai。 在软件开发的世界里,一直存在着一个令人绝望的“二选一”魔咒。 你要么选择 Python 或 JavaScript:它们写起来如丝般顺滑,能让你在周五下午迅速完成一个功能;但当业务量爆炸、公司准备上市时,那些深埋在代码里的性能瓶颈和类型错误,会让你在无数个深夜里怀疑人生。 ...

May 29, 2026 · 9 min · Tony Bai

别再瞎写 go.mod 了!一行 go 1.xx,竟藏着 7 个足以颠覆你认知的“秘密开关”

本文永久链接 – https://tonybai.com/2026/05/13/go-mod-hidden-features-7-secret-switches-in-go-version 大家好,我是Tony Bai。 在这个“CV 工程师(复制粘贴工程师)”盛行的时代,很多 Go 开发者在新建项目时,不会使用go mod init来初始化一个模块,而是会熟练地从别的 go.mod 文件里,复制粘贴那行 go 1.xx,或者直接复制一个starter 脚手架Go 工程。我们似乎都默认了go.mod中go 1.xx 的作用——“嗯,就是声明一下我用的 Go 版本嘛,不重要。” ...

May 13, 2026 · 9 min · Tony Bai

Bun 创始人带头“叛逃”:放弃 Zig,用 AI 把项目重写成 Rust?

本文永久链接 – https://tonybai.com/2026/05/08/bun-founder-abandons-zig-for-rust-ai-rewrite 大家好,我是Tony Bai。 在过去的两年里,Bun 以其闪电般的速度,成为了前端世界挑战 Node.js 霸权的“重量级选手”。 而它成功的秘诀之一,就是其创始人 Jarred Sumner 极其激进、甚至有些“偏执”的技术选型——全面押注 Zig 语言。 ...

May 8, 2026 · 7 min · Tony Bai

Rust 看了流泪,AI 看了沉默:扒开 Go 泛型最让你抓狂的“残疾”类型推断

本文永久链接 – https://tonybai.com/2026/03/27/function-type-inference-should-work-in-all-assignment-contexts 大家好,我是Tony Bai。 在这个大模型(AI)写代码如喝水一般简单的时代,你有没有遇到过一种极其憋屈的场景: 你让 Claude Code 或者 Codex 帮你写了一段 Go 语言代码,逻辑清晰,结构优雅,连它自己都觉得这波操作满分。但当你满怀期待地按下 go run 时,Go 编译器却无情地丢给你一个红色报错: ...

March 27, 2026 · 6 min · Tony Bai

从第一位程序员到 AI 时代的领航者:代码世界里的“她”力量

本文永久链接 – https://tonybai.com/2026/03/08/her-power-in-code-pioneers-to-ai-era 大家好,我是Tony Bai。 当我们闭上眼睛,想象一个“程序员”的形象时,脑海中浮现的画面是什么? 很长一段时间里,流行文化和媒体在不遗余力地塑造一种刻板印象:穿着格子衬衫、戴着黑框眼镜、不善言辞的男性,在昏暗的灯光下敲击着键盘。硅谷的“兄弟会文化(Bro-culture)”更是将这种刻板印象固化,仿佛编程从诞生之日起,就是一项由男性绝对主导的活动。 ...

March 8, 2026 · 11 min · Tony Bai

TypeScript 编译器 Go 重写版提速 10 倍:微软团队深度揭秘幕后工程细节

本文永久链接 – https://tonybai.com/2026/01/27/typescript-compiler-go-rewrite-10x-speed-microsoft-details 大家好,我是Tony Bai。 “JavaScript 是一门很棒的语言,但它并不是为了编写编译器而设计的。” 备受瞩目的 TypeScript 编译器 Go 重写版(代号 TypeScript 7.0)已经取得了惊人的 10 倍性能提升。在最近的 GopherCon 2025 上,来自 Microsoft TypeScript 团队的 Jake Bailey 带来了一场干货满满的分享,深度揭秘了这场跨语言大迁徙背后的工程挑战与技术细节。 ...

January 27, 2026 · 8 min · Tony Bai

Go 的“浮点数陷阱”将被填平:浮点转整数即将在所有平台上行为一致

本文永久链接 – https://tonybai.com/2026/01/11/proposal-float-to-int-conversions-should-saturate-on-overflow 大家好,我是Tony Bai。 你是否知道,同一行简单的代码 int64(myFloat),在 Intel (amd64) 机器上可能返回一个巨大的负数,而在 ARM64 机器上却可能返回最大正整数? ...

January 11, 2026 · 5 min · Tony Bai

让编译器成为你的副驾驶:告别“防御性编程”,拥抱“类型驱动开发”

本文永久链接 – https://tonybai.com/2026/01/04/stop-lying-to-the-compiler 大家好,我是Tony Bai。 “半夜被值班的运维同事叫醒,发现生产环境崩了,原因是一个深藏在业务逻辑里的 nil 指针异常。” 这个场景,对于每个后端开发者来说都是挥之不去的噩梦。事后复盘时,我们往往会懊恼:“为什么这里没加 if != nil 判断?”然后,我们在代码里撒上一把防御性检查的“盐”,祈祷下次好运。 ...

January 4, 2026 · 6 min · Tony Bai

Go还是Rust?2025年技术选型之辩

Go还是Rust?2025年技术选型之辩 - Tony Bai =============== Tony Bai 一个程序员的心路历程 Google Go语言编码风格规范 Google Go语言编码风格规范:指南篇 Google Go语言编码风格规范:决定篇 Google Go语言编码风格规范:最佳实践篇 Go语言第一课FAQ ...

June 15, 2025 · 9 min · Tony Bai

Go 1.25新特性前瞻:GC提速,容器更“懂”Go,json有v2了!

Go 1.25新特性前瞻:GC提速,容器更“懂”Go,json有v2了! - Tony Bai =============== Tony Bai 一个程序员的心路历程 Google Go语言编码风格规范 ...

June 14, 2025 · 9 min · Tony Bai