01 代码写完了,我只能装死
上周四下午,阿强对着电脑屏幕,百无聊赖地按了二十几次刷新键。
那个本该一周干完的模块,他只用了两天就撸完并跑通了自测。
但他不仅不能提交,甚至连一句“我搞定了”都不敢在群里说。
为什么?因为部门主管老李定过一个死规矩:“所有新功能开发,必须先拉齐认知!先把方案PPT过了,再开始写代码!”
此时此刻,那份倒霉的PPT已经在老李邮箱里躺了三天,老李因为“太忙”一直没空看。
阿强就这么干坐着,对着已经跑通的代码装模作样地敲敲打打。他像个被困在结界里的幽灵,物理上早就可以冲过终点线,但在流程表上,他还在起跑线罚站。
我站在他身后,冷笑着看穿了这场闹剧。在系统架构的演进史里,这种让人想砸键盘的死规矩,其实早被扒得连底裤都不剩。
02 被伪造的“执行依赖”
这事儿吧,在你考项目管理认证的时候,书上会教你一个词——软逻辑关系(Soft Logic)。
它和那种“必须先打地基才能盖楼”的硬逻辑(物理强制依赖)完全不同。
软逻辑,纯粹是人为设定的、基于某种偏好或“经验”硬性规定的先后顺序。
放到计算机系统里,这叫什么?这叫被人为锁死的串行调度。
本来“写PPT”和“写代码”,在系统资源上没有任何冲突,完全可以并发执行,或者先代码验证再补充文档。
搁到你们公司就是:领导硬生生地在两个毫无关联的节点之间,画了一条单向阻塞的箭头。
系统一旦遇到这种人为的阻塞锁,会发生什么?
CPU会陷入大面积的“空转等待”。
阿强明明可以利用这两天去跑通测试用例、优化接口性能,但他什么都做不了。他就像一个被卡在死循环里的线程,不断向系统发送请求:“PPT看完了吗?”
而老李呢?他不仅不觉得效率低下,反而沉醉其中。
因为他掌控了那个核心的前置网关。
系统可比你的老板透彻多了——这种非物理强制的阻塞,根本不是为了控制质量,而是为了宣示控制权。
你以为你是在遵守“标准流程”?系统把这种行为记录为“无意义的上下文切换”。在内核日志里,这叫人工制造的系统性瘫痪。
既然看透了这条虚假的依赖链,你就不该再像个傻子一样在原地等锁释放。
03 绕开那个死板的网关
1. 开启影子分支:物理与流程分离
说人话就是:明修栈道,暗度陈仓。
- • 老板要看PPT?那就给他看。但你的代码绝不能等。在本地开一个影子分支(Shadow Branch),先把代码写完。等他的PPT终于“审批通过”时,你再优雅地合并分支,用“神速”震慑他。流程上你顺从了他,物理上你保全了自己。
2. 制造反向阻塞:把等待成本甩回去
说人话就是:别替他承担延期的锅。
- • 在每天的日报或站会上,大声宣告你的状态:“目前处于阻塞状态,等待PPT评审。只要PPT通过,我预计还需要N天完成代码。”把你的“空转”彻底透明化,让全公司都知道,是他的这个节点卡死了整个链路。
3. 降级响应策略:利用等待期做私人运算
说人话就是:反正卡住了,不如算点自己的事。
- • 既然流程不让你跑业务代码,那就利用这段带薪空转期。去看源码、刷算法题、甚至优化你自己的私人工具库。把这段系统无效时间,转化成你个人的有效算力。
04 困在流程里的提线木偶
周五下班前,老李终于大发慈悲地回复了邮件:“PPT大方向没问题,可以开始敲代码了,下周二能交吧?”
阿强没好气地回了一句“好的”,然后把早就写好的代码打包,准备下周一早上准时点下发送键。
他看着那个洋洋得意的老李,就像看着一个还在手动给火车添煤的列车长。
最后扎心一问:你们公司那些长长的审批流,有几个是真的为了防风险,又有几个只是为了满足某些人的权力瘾?
软逻辑关系不会骗人,但打着规范旗号搞专制的领导会。我是变量,下期见。