最近看了篇文章,介绍一位工作了四十多年的程序员的经验总结,挑了3点,结合我自己在国内互联网长期的工作经验,分享给大家。

当心知识的诅咒很多精通学术的程序员通常会有这么个问题:写的东西过于专业,以至于新手程序员要花大量时间去理解和消化。作者认为这是一种“知识的诅咒”,因为生产者太了解自己专业领域的知识了,所以无法感同身受其他能力差点的程序员看到自己代码是啥感觉。这在实际工作中是有问题的,因为工作不是你一个人搞学术,讲究的是团队协同。如果你写的东西别人看不懂,那么团队工作效率就会下降,还会增加出错率。专注于基本原理技术在不断更新变化,但是一些基本原理是可以穿透时间周期的。作者分享了软件开发的6个基本原理,跟大家分享3个我觉得相对重要的:1、团队合作:优秀的团队才能做出优秀的产品。不要把他人的配合当作理所当然,只有团队每个人都专业优秀,才会是一个出色的开发团队。

 

2、主动沟通:主动沟通能避免很多不必要的理解误差。有时候“慢即是快”,看似沟通花费了很多时间,但能让大家信息是对齐的,保证结果是需求方想要的。3、代码简洁:写代码的时候想象一下如果换个人来接管你现在的代码,是否能快速理解和更新。我见过的优秀工程师,编程能力越强,代码越是简洁。简单性厉害的人把复杂的东西简单化。只有能力平庸的人才喜欢把简单的东西复杂化,创造一些其他人看不懂的东西,来彰显自己有多厉害。我对团队的要求就有这么一条:实现方式要尽量简单,永远都不要把下一个维护你的代码的人想得比你聪明!分享一段安托万·德·圣艾修伯里的话:“设计师知道他已经实现了完美,不是没有什么可添加的,而是没有什么可去掉的。”