标签 程序员 下的文章

我给歌单写了个推荐算法,比写业务还上头
随笔
周末闲得发慌,我没去写那堆技术债,反而给自己的歌单写了个推荐算法。输入是"心情标签+时间段",输出是"今晚该听哪张"。写完跑通那一刻,比上线一个业务模块还爽。 逻辑不复杂:通勤用快歌提神,深夜用慢板收心,周末上午用爵士当背景。可真正费劲的,是给每张碟打标签——"适合发呆""适合吵架后""适合想起某人"。打到最后,我发现自己在用写代码的方式,整理一整个人生情绪库。 程序员的通病,是想给一切建模型。天气、饮食、甚至和老婆吵架的概率,我都偷偷记过表。歌单只是其中一个温和的出口。它不...
带新人的第一年,我学会了先闭嘴
随笔
组里来了个应届生,小杨,背着双肩包,眼神里全是"我想写个大功能"。头一个月,我几乎每天都忍不住:变量名不对、注释没写、提交信息写的"fix",我一条条指出来,像当年我导师对我那样。 可我慢慢发现,我说得越多,他越沉默。有回我噼里啪啦讲完十分钟,他小声问:"哥,那我到底先改哪个?"我愣了——我给了他一张清单,没给他一条路。 带新人第一年,我最大的教训是:先闭嘴。不是不教,是把"我该怎么说"换成"他现在需要什么"。新手最怕的不是不会,是信息太多,分不清轻重。 后来我改了法子:一个...
好代码像一首慢板,留白才是精髓
随笔
听交响乐时我最爱慢板乐章。不急着推进,不堆砌音符,留大段休止,让空气自己说话。后来审代码,我竟也用上了这双耳朵。 写得密不透风的代码,像把每个音符都填上的谱子——看似丰盛,实则让人喘不过气。好的实现懂得"留白":该抽的函数抽出去,该注释的地方只写一句为什么,不写废话。读起来有呼吸感,才经得起后人改。 我带新人时常说,别怕空行,别怕短函数。一行塞三十个字符,和一首没有休止的曲子一样,听者累,维护者更累。音乐的张力靠停顿,代码的清晰度也靠停顿。 有回 review 一段老代码,前...
AI 写代码很快,但没人替我熬那个夜
随笔
组里现在用 AI 辅助写代码,效率是真高。一个函数,三秒出草稿;一个脚本,五分钟跑通。我看了直叹气,当年我为一个正则调一下午的功夫,它眨个眼就过了。 可奇怪的是,活儿是快了,半夜惊醒的次数没少。前阵子线上出了个偶发 bug,日志里只闪一行看不懂的栈。AI 给了三种可能,都对,也都不对。最后还是我,泡了第三杯咖啡,把内存 dump 拉下来,一行行比对,在凌晨四点逮住了那个竞态。 那一刻我懂了:AI 替我写,但替不了我"在场"。它不知道这个系统跑在谁的机器上,不知道上周谁改过那块...
我给黑胶写了一套"版本管理"
随笔
队里搞 DevOps 的同事来我家,盯着一墙唱片,突然说:"你这些碟,该上 Git。"我白他一眼,转念一想,竟有点道理。 同一张专辑,初版、再版、半速母带版、彩胶限量版——这不就是 branch 吗?我那张《月之暗面》,英国首压、日本二压、近年 180 克重压,三个"提交",音色各自不同,谁也覆盖不了谁。 于是我真的建了张表。A 列专辑,B 列版本,C 列压片厂,D 列听感差异。每当淘到新版本,就"commit"一条,备注里写"低频更紧、底噪略大"。朋友笑我魔怔,我说这叫可追...
选框架和选咖啡豆,其实是一回事
随笔
组里新来的小伙问我,新项目用哪个框架。我说,你先别问框架,你问自己:这项目要跑多久?要几个人维护?明年你还在这吗? 他愣了,大概以为我会甩个技术对比表。其实选框架和选咖啡豆,逻辑一模一样:你不会拿意式拼配去泡手冲,也不会用浅烘豆煮拿铁——场景错了,再好的东西都拧巴。 年轻时我迷信"最先进"。哪个新框架火就上哪个,docker 一拉,README 一抄,demo 跑通,爽。可半年后接手的人看不懂,文档稀烂,社区凉了,我拍拍屁股去了下家,留下一地依赖。 现在我偏爱"够用且有人气"...
唱片里那点杂音,我舍不得擦掉
随笔
周日下午,阳光斜在书架上,我把唱针轻轻落下去。手边一杯刚冲好的手冲,热气还没散,香气先一步漫开来。前奏还没起,先是一阵细碎的“炒豆声”——那是黑胶表面的灰尘和纹路,被唱针放大成一串沙沙的白噪。换作十年前刚入行那会儿,我大概会皱眉:这要是代码里的日志噪声,早被我一句 grep -v noise 洗掉、重构掉,删得干干净净了。 做程序员的职业病,是见不得“脏”。变量名要规整,接口要幂等,CI 一红就心慌。我们花大半辈子,把不确定摁进确定里,把噪声摁进静默里。连写个脚本都恨不得注释...