聊聊程序员的 3 个烦恼

程序员大概是这世界上最单纯乐观的一类人,虽然我们自嘲"码农",但内心却大多无比傲娇,我们总坚信自己在改变旧世界,创造新世界,所以我们看起来始终乐观单纯,而此文,我不聊快乐,聊聊作为一个程序员,我意识到一些让我痛苦和烦恼的地方。

1. 完美主义

机器不会说谎。

当程序出现 Bug 时,一定是某个地方有问题。

要么是代码,要么是硬件,考虑到大多数程序员不与硬件打交道,所以当程序出现问题时,一定是逻辑不通顺,或者是覆盖度欠佳。

程序员一直习惯于这种确定性逻辑问题的定位与解决,久而久之会形成一种完美主义的习惯。

但,你可能会发现这个世界不一样,其实这个是和你想的不一样。

在生活中,没有绝对的确定性,也没有绝对的逻辑,这对程序员是不可掌控的。

比如,威风八面的程序员总是搞不定诸如上下班按时打卡考勤、按时写日报、周报这类小事。

很多人可能说,我志向不在于此,这是一些繁文缛节,束缚了自己。

其实,本质而言,就是无法掌控的一种恐惧,程序员毕生追求确定性和完美性,而现实中太多事无标准,无逻辑。

而痛苦也来源如此。

2. 猪队友和傻x

程序员大多善良、朴实无华。

新闻中和日常工作中,程序员却戾气很重。

和项目经理打架,和产品经理干仗。

和 UI 撕逼,和测试互怼。

私下交流,领导都是傻 x 代名词。

根本原因还是在于一个可控性。

程序员的资源、目标、信息大多是他人设定或者提供。

监督程序员的大多也是非程序员。

处处制约,有时候的感觉就是世界都与自己为敌。

以前我也挺烦恼的,也时常抱怨。

后来做人工智能、自动驾驶后,才慢慢意识到这其实就是数学题。

大学前我们的数学都是求确定解,所以思维也偏向确定性。

工作后,其实处处都有约束条件,我们需要做的是要习惯在约束条件中寻找最优解。

更深入的讲,你要权衡局部最优解和全局最优解,以及它们背后的代价。

所以呢?

还是要习惯这种处处制约的现状,毕竟这就是人生,无论你做不做程序员。

所以,当你认为周围人都是傻 x 的时候,你要警惕自己的情绪和思维方式是否已经脱离正常轨道了。

3. 优雅和失态

人生不如意事十之八九。

人的一生百分之九十是痛苦的,这个可以在程序员身上反应。

实现产品功能、解决 BUG 的时候我们是快乐的,眉头是舒展的,其他时候,不是这样的。

上周,为了调一个 Bug,我连续 2 天在电脑前一动不动,晚上 2 点多睡觉前还用笔在 Ipad 上手推矩阵变换公式,无数次调试后,终于成功了,狠狠吐了口气,只为这一瞬间。

我毕业后就一直追求要优雅的编程,先是照虎画猫,这种内心的傲娇和优越感一直鞭策自己要比别人更优雅和高级一点。总记得,工作后的第三年,终于有机会让我一个人做一个 SDK,所有的东西我自己操控,我按照自己的理解,打造了一个极度面向对象、面向借口的框架。

这在当时,仅仅只是获得了内心愉悦。直到多年以后,早已离职的我,得知我当时的代码被从美国回来的技术大佬做 code review 时给予了充分的肯定,我心有一丝暖意,虽然早已过去。

现在回想,我当时是过度设计了,一个复杂度很低的系统不应当如此紧密的设计,不过当时的我哪懂。

我始终坚信一个道理,你要成为什么样人,先那样表现。

即使没有天鹅颈,每日挺胸擡头,时间久了,气质自然不一样。

因为,内心对于优雅的追求,我始终告诉自己:不要写出屎一样的代码。

所以,在意识到自己写出屎一样的代码或者是即将写出屎一样的代码时,我会告诉自己好好干活吧,把它弄回来。

于是,百分之一的时间我在享受着我的成果,百分之九十九的时间我焦头烂额修复问题。

这是个周期性的动作。

就如同电影《无间道》台词说的,说好三年又三年。

人们都喜欢用波浪描述周期,一波接一波往返。

我更认同钟摆的说法。

除了两个瞬间,钟摆经过最低点,其余时间要么远离最低点,要么回归最低点。

痛苦来源于此,追求也因为此。

因为痛苦就是常态。

最后

还是要多读书,多看看行业先辈,他们的经验、智慧和哲理,这有助于认清自己,也容易在迷茫时找到方向。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章