SJYssr

不念过往,不为未来,珍惜现在。

文章

6

标签

0

评论

8

文章目录

数据统计

成立

399天

文章

6篇

评论

8条

标签

0个

最近文章

Day1()

牛马日记月薪三千,码海无涯

记录人:一个签了实习合同的牲口
工资:3000/月,交完房租能买两杯瑞幸,剩的那点刚好够我在工位上装作喝得起咖啡
信念:写最优雅的代码,当最便宜的牛马
简历特长:精通"感觉哪里不对但说不出来"

八月二十四日 · 星期一 · 开天辟地

今天是我作为开发实习生的第一天。

工位上还贴着上一任的便利贴,写着我看不太懂又不敢问的词。我心想,行,不懂就装懂,这是成年人职场的入场券。

一口气提交了第一个记录:两百多个文件,三万五千多行,一个下午。

你问我怎么做到的?我哪会啊。其中一半是东拼西凑的现成轮子,我负责把它们焊在一起,再祈祷别漏电。剩下那部分才是我一行行敲出来的命——敲键盘的声音,像一头牛在犁地,闷响,没有回声。

午饭是拼好饭,配饮水机的热水。我一边嚼一边想:拼好饭能不能吃? 答案是:能,因为穷人对拼好饭食材免疫。我们只对穷不过期。

我甚至顺手写了文档,说明手册从 V1.0.3 改到 V1.0.4。为什么要改?因为第一版写得像遗书,看了会以为我要离职。改完像扶贫报告,体面多了。

这三万多行里有不少是凑数的。就像我的工资条,看着是个整数,拆开全是水分。

那天回去,忽然开始算账:一个月三千块,三万五千行代码,平均每行不到八分钱。

我这一下午,写出了值两千八百块的代码。剩下两百块,是我这个月仅存的尊严,决定拿来买包纸巾,哭的时候用。


八月二十五日 · 星期二 · 大扫除

睡醒之后我打开昨天的代码,良心痛了。

不是一般的痛,是那种"昨晚喝多给前任发消息"级别的痛。

满屏的调试输出,一百多个,像连环夺命call。颜色全是一串串写死的数字,一百多个,万紫千红,比我老家村口的招牌还花。中文硬邦邦糊在界面上,三百多条,毫无国际化的自觉——它们活得比我还固执,打死不肯挪窝。定时器遍地乱丢,没有一个记得在退场时收拾干净。这哪是代码,这是埋好的雷,我昨天是布雷的工兵,今天是排雷的烈士。

于是又是一通大改。五十多个文件,七千多行新增,一千多行删除。

我从早改到下午三点。一百多处调试输出全换掉——换的时候我体会到一种快感,删别人脏东西的快感,虽然那个别人就是昨天的我。七十多个空着的异常处理块,一个个填上日志。之前它们像事故现场竖了块"此处有惊喜"的牌子就跑了,现在好歹留了句遗言。八十多个写死的颜色搬进资源文件,白天一套夜晚一套,暗色模式终于不是摆设——它之前就像个化妆化了一半的新娘,好看一半,吓人一半。

三百五十多个字符串搬进语言文件,中文一套英文一套。我的中文凑合,我的英文……怎么说呢,四级考了三次才过,每次查单词都像在算命——求个心里安慰。

每段循环都补上标识,多余的装饰全砍了。昨天我还在为加了它们沾沾自喜,今天亲手删掉,像给昨天的自己扇耳光——而且昨天的我还挺欠扇的。

改完我想,够规范了吧?够体面了吧?至少不像昨天那么不要脸了吧?

然后我做了当天最后一件事:把规划文档整个删了,一千多行,扔进忽略名单。

我亲手写下的开发计划、任务拆解、架构方案,全删了。

不是它们没用。是我知道,以我三千块的时薪,根本没有时间按计划来。 计划这种东西,是给有钱请架构师的项目用的。我这种项目,计划唯一的用处就是被删掉——删掉它,我的提交记录显得干净体面;留着它,显得我又傻又天真。

牛马不需要地图,地图只会让牛马更绝望。


八月二十六日 · 星期三 · 和后端对线

今天八点55就到了。依旧卡点。

来公司对着屏幕发呆——这叫"无效内卷",是当代打工人的晨练。

二十九个文件,四百多行增、三百多行删。

我把那块整个扒了一遍:只准走正规路径,把之前所有偷偷加的"兜底办法"全删了。

什么叫兜底?兜底就是牛马自己骗自己。 主路径走不通,我悄悄塞个备选方案,假装它能跑,心里默念"应该不会出事吧"。这跟下雨天不带伞、嘴上念叨"应该不下吧"是一个性质。等真下了,淋成落汤鸡的永远是你,不是老天爷。

删兜底的时候我手很稳,心里却抖。每删一个偷偷摸摸的小聪明,我就想起自己投简历时写的"熟悉接口设计"。我熟个屁。 我对着文档一个个字段核对,像查字典的小学生,查一个怀疑一次人生,查两个想转行送外卖。

请求要带上身份凭证——这种事我昨天居然忘了。相当于出门不带身份证还纳闷保安不让进。 牛马记性差,因为睡得少;睡得少,因为操心多;操心多,因为钱少。这是个死循环,而且我这个循环连兜底都没加。


八月二十七日 · 星期四 · 马拉松,与一记响亮的耳光

这是我最不想回忆的一天。也最想喝醉的一天。

从早上九点多到下午三点多,我提交了十五次。中间没吃午饭。苏打饼干上周吃完了,还没补。我现在的胃和我的钱包一样空,和我的代码一样充满 bug。

我把这一天的节奏记下来,不为炫耀,是留个证据——万一哪天猝死在工位上,HR 至少能从记录里推算出加班时长,然后依法不给我算钱

早上九点多,大刀阔斧删掉一块旧逻辑,净删了几百行。删的时候神清气爽,像入冬后第一次脱掉秋裤。之后是一段沉默——大概在啃那块难啃的骨头。啃骨头这事,狗会摇尾巴,牛马只会掉头发。

中午十二点多开始密集输出:一个文件打不开,修;顺手清点缓存(不好意思单开一次,跟在正经活后面混进去,像极了我在团队里存在的状态);清掉早就过时的待办注释——上面写着"待确认",确认了,匹配了,待办还赖在那不挪窝,比我还赖床

下午两点三十三分起,我开始疯。

四十四分钟,九次提交。

我像疯了一样地把这个项目往"最高标准"上推:界面切换补上动画、补上无障碍标注、删掉废弃写法、把对比度拉到合规、把写死的颜色一个个搬进资源、把长列表改成懒加载省内存、给导航加上弹簧动效、给按钮加上按压反馈……

那四十四分钟,我是真觉得自己在发光。不是才华的光,是额头油光的光。

然后两点十分前后,我干了当天最大的一票:把整个导航重构成官方组件。 删掉两百多行自己手写的逻辑,换成官方现成那套。提交说明写得规规矩矩,引经据典,文采飞扬——不知道的以为我在写论文,知道的明白我在自嗨。

那一刻我是骄傲的。我想:这下没人能说我代码不规范了。这是官方组件,这是最高标准,这是亲生儿子,这是血统纯正。

几分钟后,我又补了一次提交,把细节打磨到极致,说明里写下四个字——"最高标准"

写完这四个字,我对着屏幕深吸一口气,感觉自己终于从牛马,进化成了……一匹体面的牛马。

然后。

三点十九分。回退。全部推翻。

五个文件,两百多行增、两百多行删。我把几分钟前刚立的碑,亲手砸了。

官方组件不要了,换回我手写的导航。弹簧动效不要了,退回普通曲线。自适应的配色不要了,钉死成固定白色。那四个字"最高标准",此刻像四记耳光,啪啪啪啪扇在我脸上。

为什么?

因为官方那套跑起来不对。因为内置动画跟我预期不是一个味儿,悬浮按钮藏在动画层里出不来——它躲得比我还深。最关键的是,领导要的是"跟原来一模一样"。

领导说"跟原来一模一样",翻译过来就是:你别整那些花里胡哨的,能跑就行。 这句话是牛马的紧箍咒,念一次,我从"最高标准"打回"勉强能跑"。

我用四十四分钟建起的"最高标准",用两分钟推翻。

效率真高。我感动了中国。

回退提交完,我盯着屏幕坐了很久。

窗外的光已经斜了。我忽然想笑。不是高兴的笑,是那种"我被命运按在地上摩擦、摩擦完了它还问我要不要再来一次"的笑。

你问我这四十四分钟图什么?图的是一份执念:哪怕月薪三千,我也想写出配得上"最高标准"四个字的代码。 我不是为了 KPI——实习生没这玩意;不是为了年终奖——也没有这玩意;不是为了晋升——更没有这玩意。我就是单纯地、愚蠢地、执拗地,想让这段代码配得上我学过的那些东西、熬过的那些夜、嚼过的那些过期饼干。

可现实是——最高标准,扛不过"跑起来不对"这五个字。

软件工程里最残忍的事,不是 bug 修不好,是你明明知道"对的"长什么样,却不得不亲手把它删掉,换回那个"能跑的"。

这就像你明明知道对象该找灵魂伴侣,最后还是跟"凑合能过"那位领了证。代码和人生,殊途同归。


尾声

下班,我打开手机看了一眼今天的步数:二十三步。 从工位到饮水机再到厕所,一个来回。

二十三步,十五次提交,一次回退,零顿午饭。我今天的运动量,主要发生在手指和眼皮上——手指敲键盘,眼皮打架。

我有时候会想,我写的这些代码——三万多行的开局、七千多行的整改、被删掉的一千多行计划、被回退掉的那几百行——它们最后会变成什么?

大概会变成某次年终汇报 PPT 里的一行小字:"本年度完成系统开发。**"

字号大概八号,加个句号就没了。领导念的时候甚至不会换气。

不会有人提那个三点十九分的回退。不会有人知道,有一个实习生,在周四下午为了四个字"最高标准",把心掏出来又塞回去——塞的时候还不小心夹到了袖子。

可我还是会明天九点准时坐在那个靠窗户的工位上。

为什么?因为我跟那个缺轮子的椅子已经处出感情了。它歪,我穷,我们天造地设。

而且,我还欠两千八百块的代码没写完。

——选自《牛马日记》第一卷,"回退"篇。
作者按:本文所有加班均为真实经历,牛马身份亦然。
编辑部按:作者写完本篇后,沉默良久,然后打开了招聘软件。又关掉了。又打开了。

Day1()

发布于

August 28, 2026

分类

牛马日记

版权协议

MIT

评论
😀

感谢支持!

微信二维码

请使用微信扫描二维码打赏。

支付宝二维码

请使用支付宝扫描二维码打赏。