我年轻那会儿,真的挺爱“投机取巧”的,总觉得能少干一点活,多省一点力气就是本事。那时候在一家小公司做开发,活多钱少,心里就觉得不平衡。
初识“投机取巧”:抄近道的心态
我们项目里有个功能,需要处理大量的数据同步,常规做法是写一套健壮的定时任务和数据校验逻辑。我当时就琢磨,能不能简单点?我一看,数据源那边已经把大部分脏活干完了,只是同步到我们系统格式不一样。
项目上线的时候,我这个部分确实比别人快了三天。当时领导还夸我“效率高”,我心里美滋滋的,觉得这就是聪明。

结果?没到三个月,问题就来了。
数据源那边版本升级,接口格式变动了。因为我当时用了取巧的方式,没有预留足够的灵活性,整个同步模块直接崩了。而且因为我用的那个小众库,出了问题别人根本没法接手。
急着救火的那几天,我算是明白了什么叫“投机”和“取巧”:
投机,是目光短浅,只看到眼前的利益。我当时省了三天时间,却带来了后面三周的加班和维护噩梦。

取巧,是缺乏对本质的理解。我只关注了“如何让代码跑起来”,而不是“如何让代码跑得久、跑得稳”。
当时另一个同事,他虽然慢了我几天,但他老老实实地搭框架,做单元测试,写完善的异常回滚机制。他的代码跑了两年都没出过大问题。
我当时以为的“聪明”,是懒惰驱动下的短期优化。真正的聪明,我后来才领悟到,是对系统性、长期性的把握。
聪明的人,是把力气花在解决本质问题上:
拿我们那个数据同步模块来说,聪明的人会设计一个抽象层,不管数据源的接口怎么变,我只要改动抽象层中的映射关系就行。而我,当时只是简单粗暴地硬编码,一旦变动,全盘皆输。
吃了大亏后,我彻底改变了工作方式。现在接手一个项目,我不会先想“怎么最快完成”,而是先想“怎么做得最可靠”。
现在我写代码,即便是很小的功能,也要画架构图、写设计文档、做全面的风险评估。这前期看起来慢,但是后期效率高的惊人,几乎不需要回炉重造。
我发现,真正的“聪明”是让你少走弯路,而“投机取巧”只是让你暂时跑得快,但弯路一个都不会少。因为你没有把根基打牢,早晚要回来补课。而补课的代价,往往比你一开始老实做要高得多。
所以说,投机取巧,本质上是一种战术上的勤奋和战略上的懒惰。而真正的聪明,则是战略上的前瞻和战术上的稳健。这俩,压根就不是一回事。