我其实很怕别人跟我说“做完了”这三个字。
每当别人跟我说“做完了”,我心里难免咯噔一下,这事十有八九并没有他想象的那么简单。
码农的世界里,很少有东西是可以干净的做完的,因为要不停的维护。
维护的开销占了整个软件开销的80%。
作为一个专业码农,我对写代码这个事情是充满敬畏的,因为我深知这事情很可能永远没的完,得一直维护下去。
所以我大气都不敢出一口,毕恭毕敬的写代码,我知道我宁可延长一倍开发时间,把代码写的工整些再工整些,如果能减少一半维护的开销,那也是大赚特赚的买卖。
老板问我ETA,我更不敢随意的commit,有时候我只能含糊其辞,因为我深知这里面的变数,实现一个东西的困难程度,我不敢拍胸脯。
对代码敬若神明,这是一个专业码农应有的基本认知。
所以我更倾向于说“做好了”,而不敢去说“做完了”。
“做好了”着眼点在“好”字上,更倾向于这东西已经能work了。“做完了”着眼点在“完”字上,更倾向于这东西再也没有后续要做的了。
有的人,敢于拍胸脯,做完了。但如果细看code,就会发现原来是赶工之作,到处都是结构性问题,维护的cost反而增加了50%。
那么这样的code,表面上看是做完了,但是长远来看,将付出相当惨痛的代价。
我可以为了deadline日夜赶工,但是我即便赶工,也要写可以减少维护cost的代码,绝不会为了工期而降低了要求。
不然自己那道关就过不去。
生产能用的垃圾代码,还不如不生产代码。
这样的人没有敬畏之心,只想把活早早干完了事。
就像小时候有的人在学校白天上学的时候就嚓嚓嚓把作业全做完了,从不需要把作业带回家做,但这样的人真的喜欢学习吗。