
储物间里的Node.js
我上周回老城区的房子收拾储物间,在堆着半摞旧棉被、一摞我中学时的漫画书和几个落灰的陶瓷碗的架子最下层,摸出来我哥四年前留在这的那台ThinkPad X280。屏幕左上角裂了三厘米的缝,是2019年他跑半马的时候把电脑塞在参赛服口袋里摔的,键...

我上周回老城区的房子收拾储物间,在堆着半摞旧棉被、一摞我中学时的漫画书和几个落灰的陶瓷碗的架子最下层,摸出来我哥四年前留在这的那台ThinkPad X280。屏幕左上角裂了三厘米的缝,是2019年他跑半马的时候把电脑塞在参赛服口袋里摔的,键...

上周帮前同事排查个老电商的订单接口,报错打出来满屏的Notice,是PHP7.4的老代码,连个类型声明都没有。 改完喝了半杯凉掉的美式。 突然反应过来——我已经快3年没在招聘网站上看到招资深PHP开发的岗位了。 不是说PHP写的东西没人用了...

招投标现场的异常信号 2026年6月,苏州园区公共资源交易中心。 我蹲在靠窗的位置,喝了三杯免费速溶茶,等三家投标工业视觉检测系统的集成商拆封标书。 之前三个月我跑了长三角17个同类项目,11个的招标要求里都加了硬条款:核心算法层必须采用原...

整理储物间的时候翻到我爸的工具箱,铝制的,边角磕得坑坑洼洼,里面除了电烙铁、吸锡器、缠得乱七八糟的杜邦线,还有个比巴掌大一点的旧笔记本,纸页黄得发脆。 那天热得离谱。柏油路晒得软乎乎的,走上去能粘掉鞋跟。我家那台挂在卧室墙上的老空调,突然在...

上周帮朋友排查一个跑了8年的老交易系统的GC停顿问题,翻到代码片段里2014年写的Java 6兼容判断逻辑,突然反应过来——这门被无数程序员吐槽“太老”“太笨重”的语言,已经陪着整个工业界走完了近30年的数字化路程。 很多人现在聊Java,...

2026年招投标现场的反常报价 2026年3月我在苏州相城汽车内饰件产业园蹲了三天,刚好撞见一桩流标之后的翻盘戏码。当地一家做汽车门板的中型制造厂,原本要上一套车间良率实时统计系统,前期三轮评审全是国内头部MES厂商的方案,清一色Java+...

去年冬天整理储物间,翻出来我爸2018年入手的那台ThinkPad。电池鼓了。顶得键盘W键微微翘起来。我蹲在地板上把壳子上的霉斑擦干净,按了半天开机键,居然还能转。风扇嗡嗡响的声音,跟他当年赶项目时坐在餐桌前写代码的动静一模一样。 压在键盘...

上周跟杭州某服饰电商的视觉总监吃小龙虾。 他说去年还在跟上海的摄影团队掰扯,一组秋冬款的家居服棚拍要价8万,从选模特、搭景到修图要等整整两周,今年初换了组微调过的扩散模型,同样的场景、同样的品牌色调,800块的显卡算力成本,12小时出27张...

2026年开春我在苏州工业园区的开标现场蹲了三个小时,空调吹得人后颈发僵,打印纸的墨味混着走廊里的烟味,呛得人直咳嗽。开标人念第三轮报价的时候,我旁边坐着的那家做了五年扩散模型视觉方案的公司销售,手里攥的不锈钢保温杯直接被捏出了一道凹痕。没...

上周回老房子搬樟木箱。 樟味冲得人鼻子发酸。 我蹲在地上翻了快一个小时,最底下压着的不是外婆藏的定期存折,也不是她当年陪嫁的银镯子,是半本撕了封皮的硬壳相册,纸页脆得像烤过的吐司,边角沾着九十年代梅雨季留下的霉斑,连夹在页缝里的梧桐叶脉标本...