Web Analytics

写了 10 年 Java/TS,Go 语言终于治好了我的“过度设计”绝症

本文永久链接 – https://tonybai.com/2026/05/16/go-cured-my-over-engineering-addiction-after-java-ts 大家好,我是Tony Bai。 在软件工程的圈子里,有一种病,几乎所有写过几年 Java 或 TypeScript 的程序员都得过,而且往往病得不轻。 这种病叫:“过度设计综合征(Over-engineering Syndrome)”。 ...

May 16, 2026 · 7 min · Tony Bai

UML 之父 Grady Booch:别听 CEO 瞎忽悠,软件工程的第三次黄金时代才刚刚开始

本文永久链接 – https://tonybai.com/2026/02/13/grady-booch-uml-software-engineering-third-golden-age-begins 大家好,我是Tony Bai。 在 2026 年初的今天,如果你问一个软件工程师“最近感觉如何?”,得到的回答大概率是焦虑。 Anthropic 的 CEO Dario Amodei 曾预言:“软件工程将在 12 个月内被自动化。” ...

February 13, 2026 · 6 min · Tony Bai

为什么 Go 社区强调避免不必要的抽象?—— 借用海德格尔哲学寻找“正确”的答案

本文永久链接 – https://tonybai.com/2026/01/16/go-community-the-right-kind-of-abstraction 大家好,我是Tony Bai。 “Go 的哲学强调避免不必要的抽象。” 这句话我们听过无数次。当你试图引入 ORM、泛型 Map/Reduce 、接口或者复杂的设计模式时,往往会收到这样的反馈。这句话本身没有错,但难点在于:到底什么是“不必要”的? ...

January 16, 2026 · 9 min · Tony Bai

为什么 Go 在悄悄地做 Rust 做不到的事:保持简单

本文永久链接 – https://tonybai.com/2025/11/21/why-go-is-quietly-doing-what-rust-couldnt-staying-simple 大家好,我是Tony Bai。 近日,一篇题为《为什么 Zig 在悄悄地做 Rust 做不到的事:保持简单》的文章在开发者社区引发了热议。文章以其辛辣、富有煽动性的文风,将 Zig 描绘成 Rust 复杂性的“解毒剂”,是“一个终于接受了心理治疗的 C 项目”,并引发了关于“简单性”与“安全性”的深刻辩论。 ...

November 21, 2025 · 7 min · Tony Bai

告别懵圈:实战派 Gopher 的类型理论入门

本文永久链接 – https://tonybai.com/2025/10/30/type-theory-intro-for-gopher 大家好,我是Tony Bai。 你是否曾有过这样的经历:在浏览一个关于 Go 泛型或接口设计的 GitHub issue 或技术提案时,评论区里的大佬们突然开始讨论 “Sum Type”、“Product Type”、“Parametric Polymorphism” 或是 “Higher-Kinded Types”。一瞬间,你感觉自己仿佛闯入了一个学术研讨会,这些看似熟悉又陌生的词汇让你一头雾水,只想默默关掉页面。 ...

October 30, 2025 · 21 min · Tony Bai

Go 作为第一门编程语言:天才之选还是糟糕开端?

Go 作为第一门编程语言:天才之选还是糟糕开端? - Tony Bai Tony Bai 一个程序员的心路历程 Google Go语言编码风格规范 Google Go语言编码风格规范:指南篇 Google Go语言编码风格规范:决定篇 Google Go语言编码风格规范:最佳实践篇 Go语言第一课FAQ ...

October 11, 2025 · 6 min · Tony Bai

Go 零拷贝“最后一公里”:Peek API背后的设计哲学与权衡

本文永久链接 – https://tonybai.com/2025/10/10/proposal-add-buffer-peek 大家好,我是Tony Bai。 在 Go 的世界里,io.Reader 是一个神圣的接口。它如同一条设计精良、四通八达的高速公路,为数据流的传输提供了统一、优雅的抽象。然而,在这条高速公路的尽头,当数据流的目的地就在眼前——一块已然存在的内存([]byte)时,我们却常常被迫驶下一条颠簸、缓慢的“土路”,进行一次本可避免的内存拷贝。 ...

October 10, 2025 · 7 min · Tony Bai

“自立程序员宣言”解读:这不就是我们一直在说的Go语言哲学吗?

“自立程序员宣言”解读:这不就是我们一直在说的Go语言哲学吗? - Tony Bai Tony Bai 一个程序员的心路历程 Google Go语言编码风格规范 Google Go语言编码风格规范:指南篇 Google Go语言编码风格规范:决定篇 Google Go语言编码风格规范:最佳实践篇 Go语言第一课FAQ ...

September 26, 2025 · 6 min · Tony Bai

面对“好主意”,为何开源项目的维护者必须学会说“不”?

面对“好主意”,为何开源项目的维护者必须学会说“不”? - Tony Bai Tony Bai 一个程序员的心路历程 Google Go语言编码风格规范 Google Go语言编码风格规范:指南篇 Google Go语言编码风格规范:决定篇 Google Go语言编码风格规范:最佳实践篇 Go语言第一课FAQ ...

September 21, 2025 · 5 min · Tony Bai

系统设计的“元素周期表”:40个横跨所有领域的通用设计原则

本文永久链接 – https://tonybai.com/2025/07/31/periodic-table-of-system-design 大家好,我是Tony Bai。 近日,一篇名为《系统设计的元素》(Elements of System Design)的论文引发社区热议。它的目标宏大且吸睛:通过梳理上百篇横跨操作系统、数据库、分布式系统等领域的经典论文,提炼出一套通用的系统设计原则“元素周期表”。 ...

July 31, 2025 · 16 min · Tony Bai