把经历过的,连成记忆。

这是我的记忆构建平台,你也能搭一个。

最新文章

Dagger 1.0 和 GitHub Actions:第三代 CI 换掉了什么

2026年10月25日

Dagger 1.0 beta 的发布博文说自己是继 Jenkins、GitHub Actions 之后的第三代 CI,还说一条 dagger cloud checks on 就能替掉 GitHub Actions。两者是同一类东西吗?顺着问题往下追:两边的配置各自描述了什么;谁在执行、缓存放在哪;改一行代码各自重算了什么;集成测试要的数据库谁来起;测试挂了以后看到的是什么;本地能不能跑同一套;最后是 Cloud Checks 和按用量计费到底替掉了哪一层。全部场景用同一个 Go 小项目,在 GitHub 的 ubuntu-latest 机器上实测。

Ilya 的论文清单在讲什么:从 30u30 说起

2026年10月25日

30u30 是一个按天带读“Ilya Sutskever 推荐的 30 篇论文”的开源仓库。我们先查这份清单从哪来,发现它其实有三个版本;再看它的构成,里面除了 Transformer、ResNet,还有咖啡自动机、一本数学专著的第 14 章和一篇 200 页的博士论文。顺着这几篇往下读,清单的另一条主线是压缩:预测就是压缩,学习就是把数据拆成规律和噪声。最后用三个自己复现的小实验检验这条线,也顺带看看 30u30 的实现。

Go 的测试为什么和代码放在一起:大型工程怎么组织测试

2026年10月25日

打开 Go 标准库的 net/http,77 个文件里一半是 _test.go,和代码交错排着。这样不乱吗?顺着问题往下追:测试文件在构建里到底在哪;为什么不能像 Java 那样挪进单独的 tests 目录;同一个目录里的两种测试包;集成测试放哪、怎么不让它默认跑;测试依赖为什么要单独一个模块;e2e 测试离被测对象有多远;测试数据和依赖替身各自怎么放。统计了 Go、Kubernetes、etcd、Prometheus、CockroachDB 等 15 个仓库,并用 Go 1.27 逐个实验。

做加法最少要几个参数:AdderBoard 排行榜与 Transformer 入门

2026年10月24日

AdderBoard 是一个比谁的 Transformer 更小的排行榜,题目是十位数加法。榜首的手写模型只有 6 个参数,训练出来的模型最少 36 个。我们先把 Transformer 是什么、它怎么一个字一个字地往外吐答案讲清楚,再顺着排行榜往下看:加法对它难在哪里,数位为什么要倒过来写,训练出来的模型怎么从 6080 个参数压到 36 个,手写的 6 个参数又是怎么把十位数加对的,它和 CPU 里的二进制加法器、我们列的十进制竖式比有什么不同,最后看这些数字该怎么理解。

用 Go 写 Mac 桌面程序:原生窗口和菜单栏图标

2026年10月24日

Go 写的小工具,最省事的界面是起一个 http server 再打开浏览器。如果想要的是 Mac 上那种双击就开、右上角菜单栏常驻一个图标、点一下弹出面板的程序,该怎么做?顺着问题往下追:窗口归 AppKit 管,Go 怎么调到它;为什么界面代码必须锁在主线程上;菜单栏图标、弹出面板和不进 Dock 是怎么做到的;Fyne、Gio、Wails、systray 等十几个现成的库,窗口里的内容各是谁画的,哪些里面其实是网页;两个库各管窗口和图标时为什么打架;最后怎么打成 .app、签名和公证,发给别人也能打开。全部方案在同一台 macOS 15 上实测。

查看全部文章 →