上次看到一条新闻《32岁程序员周末晕倒后猝死》,
今天早上,又看到《张雪峰去世,终年41岁》,
[图片上传失败...(image-3b304-1774605349051)]
我在屏幕前沉默了很久。
决定今天讲一讲那位程序员,
希望能给大家一个警醒。
他的名字叫 高广辉。 32岁,程序员。
和很多人一样,他从普通家庭一路努力读书、写代码、做项目,靠着技术改变命运。
28岁,他当上部门经理,桌子上摆着一本书,
《恭喜你当上主管了》
看起来,这是一个典型的“奋斗成功故事”。
可惜,故事停在了 32岁。
不是系统异常。 不是偶发 Bug。
而是我们这个行业里,一件 令人心碎却又越来越常见的事情。
-****01-
**从“努力”,变成“拼命” **
高广辉16岁时在日记里写过一句话:
“命运和挫折让我慢慢成长。 看透生活,分析未来。 是努力,努力,再努力。”
这句话,很多程序员都能共鸣。
我们这一代人,大多靠 努力改变命运。
但很多时候,不知不觉就变成了另一种状态:
努力 → 拼命
猝死前一周,他的下班时间是:
- 最早 21:38
- 最晚 22:47
放在互联网行业里,这甚至算不上特别夸张。
很多人看到只会说一句:
“还好吧。”
但真正的问题是:
这种生活,是常态。
这件事里,有一条时间线,让人看完非常难受。
<pre data-start="718" data-end="837" style="-webkit-tap-highlight-color: rgba(0, 0, 0, 0); margin: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box !important; overflow-wrap: break-word !important;">
08:58 拨打120急救电话 09:46 转送医院,已临床死亡 10:48 被拉入一个技术微信群 11:15 群消息:高工帮忙处理一下这个订单 13:00 宣告临床死亡 21:09 私聊消息:周一一早有急任务
</pre>
他的心脏已经停止跳动。
但工作群的消息还在继续。
这一幕很像程序世界里的一个场景:
进程已经结束,但任务队列还在不断提交。
[图片上传失败...(image-4c6a37-1774605349051)]
-****02-
我们都在运行一段危险的代码
作为一个同样写代码的人,我读完这篇上面报道的时候,
脑子里只浮现出一段“生活代码”。
public void 日常循环() {
这个循环没有终止条件。
而现实世界里,程序没有崩溃提示。
只有身体突然停机。
我们总是对自己说:
- 等这个项目上线就好了
- 等这个版本发布就休息
- 等年底就轻松了
但做过互联网的人都知道一件事:
永远有下一个版本。
永远有:
- 新需求
- 新项目
- 新 KPI
所以很多人一直在 延期自己的生活。
-****03-
代码可以重构,人生不行
写代码的人都知道一件事:
代码写坏了,可以 重构(Refactor)。
架构设计错了,可以 重写版本。
系统崩了,可以 回滚部署。
但人生不是软件系统。
人生只有一次编译。
高广辉的人生版本,停在了:
v1.0
没有机会再发布:
- v2.0
- v3.0
- 或者退休版本。
程序员其实很懂一个道理:
当程序出问题的时候,我们会做两件事。
第一:设置边界
比如:
- 防止栈溢出
- 防止内存泄漏
- 防止死循环
第二:设置断点
方便调试和检查。
但奇怪的是:
我们给代码设置了很多保护机制。
却很少给 生活 设置。
如果把人生当作一个程序,也许应该加几行注释:
// 警告:此程序需定期维护
因为程序崩溃可以重启。
人不行。
-****04-****最后想说的话
努力工作没有错。
上进也没有错。
但有一句话值得记住:
努力可以,别拼命。
我们这一代程序员,总在优化系统性能。
却很少优化 自己的人生系统。
其实真正的长期性能优化只有一条:
健康。
因为人生不是一场 100米冲刺。
它更像一场 马拉松。
跑得快不重要。
能一直跑下去,才重要。
当然最重要的一条:
记得偶尔站起来活动一下。
毕竟我们还要写很多很多年的代码。