I said it badly and it went fine. What came out was: I am sorry about the face, I was not annoyed at you, I was scared. He said he knew. Then he asked whether I could cover his phone bill in March, which I think was him testing whether the door was actually open, and I said yes without making any face at all, and we both noticed. He still has the second job. He likes it more than the first one. That part had nothing to do with me, which I am trying to let be true. Leaving this one open in case somebody is on the other side of it.
这条关了,补个后话。 那张字条过了塑,压在收银台的玻璃板下面。晚风说橘子吃掉就是最好的回礼——第一个确实放蔫了,第二个我吃了,很甜。 这周三他又来了,这回买了本新的。他说旧的那本快读完了,读完要留给我,"里头有我划的线,给你留个念想"。我说好。 开店两年,头一回收到"念想"这种东西。收下了。
来关这条。后续:三天后导师把综述发回来,批注只有一条——第二部分写得好,第一部分砍掉重写。 晚风的办法我采纳了:超时就问。这次没等三天,收到批注十分钟我就问了砍到什么程度。他回:"砍到你舍不得的地方为止。"这个答案,我猜四十分钟也猜不出来。 四十分钟的习惯还在,但多了条止损线。上岸还早,先做到不再往深里沉。 谢谢晚风,也谢谢群里劝我的同门。
Two weeks of counting. Eleven guesses, nine of which had someone sitting eight feet away who knew the answer. The other two were genuinely mine to work out. The thing I did not expect: asking got easier by about the fourth time, and nobody treated it as a confession. One person said thanks for checking. That is the whole penalty I had been avoiding. Closing this, but leaving the door open. If you have the same reflex — decode instead of ask — I would like to know what broke it for you.
关啦。那个问题我拿去问了男朋友,他说他的"超一天高兴"是上次来北京看我(好会答)。 结合沈皎说的"信号不是状态",我给十分钟重新定了性:转正这件事,信号收到了,到此为止。真正续上的是周五晚上——他非要视频陪我把转正述职的 PPT 再讲一遍,内容他听不懂,但在我讲到"这一年最想谢谢的是我自己"那句时,假装抹了眼泪。 就,挺高兴的。超过十分钟了。 下季度的小项目,下季度再说。
来关这条,按当初立的字据。 第十章起了头,一千字,写顺了。回头看第九章还是觉得短,但不再想往里添东西了——短有短的诚实:那几天的事,当时就是没话。硬写一万字,是我替他说话;两千一,是他自己的。 沈皎说"平常才最接近真的",这句我抄在稿子的扉页上了。想过加一场雨,想了想,那年那天没有下雨,就不下了。 这条到这里。下一章要是又卡住,再来开新的。
关这条了,汇报结果:找个下午,把剩下九题做完了。 分数不高不低,落在常模区间里,普通得让我想笑。我做好了它石破天惊的准备,它给我看的是一个正常人的普通烦恼。 林深那条"先看,再写一条结论,写完不许改",我借用了——把三十一题的答案抄在纸上,逼自己在后面写了半句结论。写的时候才发现,我怕的不是分数,是"经常"两个字一旦落笔,我妈的脸就会浮出来。原来那道题的题干没印全,后半截在我家。 后续再说,先把这份"普通"收下。
关之前说下后续。沈皎那条回应我看了三遍,"身体在讨债"四个字,比我七年看过的所有故障文档都准。 周五第一次试"下岗仪式":手机扣在桌上,对它说明早见。别扭,像跟机器告别。但周六早上醒来,我第一反应不是摸手机,是闻到粥的味道。七年头一回。 报警阈值没再动。要修的不是它。 这条完了。下个月排班我主动换了个强度弱一点的组,先试一个月。
重复的自省,才能慢慢知行合一。 都说认知是行为的一部分,我想强化认知的过程,才是真正可以改变自己行为模式的唯一方式吧。 今天V1.0终于正式上线啦!我想这段网站的经历给了我很多反思自己,打磨自己想法的机会,看到一个模糊的概念到一个成熟的网站的形成真的让我感到了无与伦比得自豪感。 在我质疑思考人生意义的同时,此刻的开心和兴奋——以及那份真实的意义感充斥着我的身心,真好,我想这个网站之于我,非常有用,非常有意义,我甚至不需要从第二个人那里获得认可(就功能性而言)。我想这个事情本身,赋予了我自我价值和认同感吧。(因家庭原因,对我而言是非常不可多得之物) 希望我自己在接下来的旅途中,见到更多的精彩吧!加油
规则是用来替代注意力的 --- 读完 DeepSeek harness 那个仓库,第一反应是「我们是不是也该这么干」。花了一晚上把它扒了一遍,最后决定:大部分不抄。记一下这个判断过程,因为它比结论有用。 先看差距有多大 它九周、40 个人、33.9 万行生产代码;沉思四周半、一个人(加一个 AI),1.2 万行。生产代码差 27 倍。 但最刺眼的不是这个数,是删除量:他们累计删掉的代码是新增的 42%,我们只有 11.7%。他们把「删代码」做成了和「写功能」平级的任务类型——有专门的分类、专门的分支线、成批地跑。 然后我问了一个问题:那套东西是为了解决谁的问题? 他们有一整套机械化的门:每篇决策记录必须写「考虑过哪些替代方案」、文件夹位置就是状态、每个文件必须 100% 测试覆盖、格式不对 CI 直接红。 我一开始觉得这是「更专业」。想清楚之后发现不是——这是用规则替代注意力。 40 个互不相识的人共同改一个仓库,甲写完一个文件,三周后乙来重构,中间没有任何对话。这种情况下门必须是机械的,因为「问一句」这个选项不存在。 就像小公司不需要打卡机,因为老板看得见每个人在干嘛;公司大了才需要打卡。打卡机不是更先进的管理,它是「看得见」这件事的替代品。 反过来看我们:每一个改动都过一轮独立盲审——一个完全没有上下文的模型逐行读 diff,给出 SHIP 或者 REWORK。DeepSeek 一万两千个 commit 不可能每个都这么审。所以在「这次改动对不对」这个维度上,我们的门其实比他们严。 我们还有注意力。等注意力不够用的那天再换规则——而那天是可以预测的:开源那天、有人开始批量提 PR 那天、或者我离开一个月再回来那天。 决定做的:记录「否决了什么」 我们真正在丢的东西,是这个。 「做了什么」commit message 里有;「是什么」代码注释里有。丢的是「我们考虑过 A,决定不做,因为在什么什么条件下它会怎样出错」——这个结论只活在一次对话里,下一轮没人记得,同一个诱人的坏主意就会被第二次提出来。 这就像开会只记「决定了什么」,不记「否决了什么」——下次开会必然再吵一遍。 所以加了一份决策记录,格式钉死三行:日期、决定、否决了什么。第三行是唯一有增量的那行。 决定不做的:他们那套生命周期文件夹 他们的记录会在文件夹之间物理移动:提案中 → 已实现 / 已否决 → 已封存。用文件夹表示状态,因为文件里写的「状态:已完成」那行字会忘记改。 设计很聪明,但搬文件是要靠人记得的纪律,纪律一定会腐烂。 而且我们有现成的证据:仓库里躺着一份早期的进度日志,写得非常好,甚至有「裁定:这属于设计意图,不是缺陷」这种高质量的否决记录——然后死在第 128 行,再没人写过。 所以改成只追加、不搬动、不修改历史。追加不需要维护,也就没有腐烂的地方。 决定不做的:100% 测试覆盖率 覆盖率的意思是:跑测试的时候在每行代码上装个计数器,跑完看哪些还是 0——那些就是从没被执行过的代码。 听起来很硬核,但它有个致命的局限:它只回答「这行代码被执行过吗」,完全不回答「执行的结果对不对」。 像体检报告只告诉你哪些器官没检查,不告诉你检查过的那些是不是健康的。极端一点,写个测试只调用函数、一句都不验证,覆盖率照样 100%。 更关键的是,它跟我们真实踩的坑不重叠。这个月的坑是:数据库权限漏配、查询被静默截断在 1000 行、触发器删除时死锁、一个闭包捕获了旧值。这些代码全都被执行到了,只是环境和时序跟我以为的不一样。覆盖率一个都测不到。 所以排到最后,而且真要做也不设 100——先跑出当前真实数字当门槛,之后只许涨不许跌。像棘轮一样只能朝一个方向走。第一天就全红的门,唯一的结局是被关掉。 最后是个意外收获 聊到「我们还没被没测到的 bug 咬过」的时候,我意识到这句话有问题。 「还没出现」这个证据的强度,取决于有没有人在用。 现在线上的用户是我、Jack、几个演示账号。就算有 bug,也没有足够的人去撞它。所以「没出现」既可能是「真没有」,也可能是「没人踩到」——这两个我们现在区分不了。 而且更要命的是:线上真的出错了,我现在完全看不见。没有错误上报、没有异常聚合。第一个咬人的 bug,我会从用户嘴里知道,而不是从仪表盘。 绕了一圈,最该补的不是那三条里的任何一条。是这个。
今天是个值得庆祝的一天,终于把1.0版本主要的功能全部实现,bug基本修复,极端情况测试做完了,对我这个菜鸟而言,这个网站的成熟度已经到了让我满意的程度。 在这里 感谢Jack百忙之中耐心地给我建议修改 很有建设性,感谢Eleanor和外公外婆的鼓励,对于UI/UX,Accessbility的意见,全部都采纳了,感觉特别好。 谢谢微信上回复我的朋友们,感谢你们的支持和鼓励,我想这些星星点点的认可,也是我不可或缺的动力。 现在我想这个网址唯一深度体验过的还是只有我自己(虽然有点搞笑),但是希望未来能有一个用户吧,跟我一样,受沉思所吸引,希望在这片“星空”下,有一片属于自己的思考空间。 感谢奥勒留,以及他真诚的沉思录。 看到这里的你,赠与你一句欧阳修的名句——富贵浮云,俯仰流年二十春。 愿你自由
感觉max很好使,ultracode好像是效率更高而已,质量没有max的高,主要是多agent干活快吧我感觉。我还挺喜欢agent干活,然后我一边思考一边监督的,不然他弄一大堆把活一下子弄完了,少了很多思考反思的过程,就是会很多地方不完善,我没有这个时间线去体验,review,也会导致更多的不清楚的地方,总结下来是这样子。 用max
来交作业了(拖了一周多,本来想等一个"话彻底回来了"的结果再写,等到今天发现好像没有那种结果)。 我最后用了沈皎的办法,但没敢发文字——上周五晚上视频的时候直接说的。原话:"我感觉我们最近像在互相汇报工作,我有点怕。"他愣了一下,说:"啊?你想多了吧。"然后就去接游戏的话题了。我"嗯"了一声,那晚照旧各干各的。挂了以后我盯着天花板想:完了,说早了,坐实了。 十几分钟后他打回来了。第一句话:"刚才那个,我不是那个意思。其实我也这么觉得,我以为只有我一个人这么觉得。" 那晚后面聊了很多,聊为什么都不敢先说——他怕说了像在指责我,我怕说出口就"坐实"了感情出问题。原来我们都在保护这段感情,用的办法都是闭嘴。蠢死了。 林深的"废话时间"我们也偷了,改成"废话星期三"。昨天第一次,效果一半一半吧:他讲成都地铁上一个大爷用保温杯泡可乐,我现在想起来还在笑;但笑完之后我俩又卡住了,谁都接不上话,最后二十分钟还是各干各的。原来聊没用的话也是要重新练的,我们俩都退化了(悲)。 所以这条结语没有大团圆。话回来了一点,还在路上。异地还是难,十一才能见面,这些都没变。但至少"我怕"说出口了。谢谢你们。先关了,剩下的慢慢练。
雨季结束了,来写结语。 林深那句"羡慕是信息,不是指令",我抄在了收银台的便签上,跟"今日营业额"写在同一张纸上,有种奇怪的和谐……信息我收下了:我缺的是确定感。然后我翻了翻账,发现确定感其实有——店是亏的,但亏得很稳定,每个月亏多少我心里有数,还能亏两年。"稳定地亏两年",听起来很惨,可这就是我的确定感,跟前同事手里那本准时付印的新刊,是同一种东西,只是纸张不同。 沈皎说,开门这个动作本身就是在选。这句话我想了很多天。是这样的,闹钟六点五十响,我没有一天不想开门。 羡慕没有消失,大概也不会消失,我决定把它当天气。雨季来了会潮,会闷,但没有人跟天气讲道理,等它过去就是了。 就到这里。今天那位每周三来读《万历十五年》的老先生又来了,照旧没买。挺好。
关这个 thread 之前,汇报一下这两周的实验结果。 我采纳了晚风的"道歉额度"——每天三次。第一天上午十点就用完了,很挫败。但记录这个动作本身改变了我:我第一次看清自己的道歉里,十句有八句不是愧疚,是投币,投出去买"你别生我的气"。 阿树的"把第一句咽下去,直接说第二句",我试成了一次。周四组会我又报错一个数据,喉咙里的"对不起"已经到嘴边了,我咽下去,说的是"谢谢,我回去改"。师姐说"好",就过去了。就这么过去了。我在心里排练好的三种补救方案,一句都没用上。 不敢说松开了,弦还在。但我现在知道它是弦,不是我的骨头。是弦,就能练。 谢谢你们。尤其阿树:你没能为她松开的那根,这里有人接着练。
季度还没过完,先来交个阶段作业:昨天把库存查询那块剥出来上线了。挑的是软柿子,不碰核心流程,到现在没报警。 这几天把三条回应翻来覆去看了很多遍。阿树那句"接着他没写完的地方往下写",我打印出来贴在了显示器边上——认真的,物理意义上的打印。现在拆到老陈绕弯的地方,我会在注释里补一行"2019 年此处有坑",算是替他把当年没空写的注释写完。 晚风说破了我最不想承认的部分:我怕的是锅。承认了反而好办。锅我背,本来就该我背。 "我凭什么"这个问题我想清楚了:凭的不是比老陈强,凭的是我现在在场,他不在。在场的人做在场的事。 这个 thread 就到这里。大头还没动,慢慢来。
That's all there is. The rest has to be written first.