来自谷歌巨佬的分享,如何成为天才?
点击上方蓝字,关注并星标,和我一起学技术。
大家好,今天继续和大家聊聊天才程序员的秘诀。
本文的主要内容源于谷歌两位大佬级的天才程序员的分享视频,相关的视频在B站也有,但由于关注度比较低,暂时还只有生肉。感兴趣且英语好的同学可以点击「阅读原文」观看。
Critism is not evil
批评不是邪恶的,也就是说不要害怕批评。
在职场当中做错事情或者是某件事情做不好对很多人来说是一件很可怕的事,这意味着你很有可能会面临上司或者是mentor的责怪。如果在会议当中犯了错那可能更加凄惨,简直相当于公开处刑。畏惧批评,热爱赞美也是人类的天性,我想绝大多数正常人应该没人会喜欢批评。
畏惧批评是天性,但批评本身并不是坏的,相反它是有益的。当我们做code review被捉出的每一个bug,或者是每一个不规范的地方,其实都是一次学习的机会。如果你可以重视每一次review时被挑出的问题,那么你就可以写出越来越规范的代码。换句话说,当下的批评可以换来未来的成长和赞美,只要你重视它。
embrace failure
拥抱失败。
这一点和上面一点类似,我们不要畏惧失败,我们要直面失败,拥抱失败,从失败当中吸取教训、分析原因。这一点我想大家从小听到大,但是这里面还有另外一层意思,是说我们拥抱失败之余的前提是我们勇于尝试。勇于尝试新的技术,勇于尝试新的方法,而不是墨守成规,在一个已经固定的系统当中添砖加瓦,或者是缝合更多的bug。
当然这一点涉及公司的文化,国外的公司相对开明。关于这点大佬讲了一个段子,说是某个公司有一个员工因为失误引发了一个故障,导致公司损失了几百万美金。他觉得自己死定了,肯定会被开除。第二天他进入CEO办公室主动就说我是来签离职协议的,结果CEO却说,公司刚刚花了几百万美金训练你,怎么会放你走呢?
国内的公司估计很少有能做到这点,但这并不影响我们拥有这样的心态。只不过我们在尝试的时候可以小心一些,提前进行评估以及各种风险控制。比如上线之前先提前小规模测试,或者先和上司充分沟通,总之我们可以采取一些措施控制尝试的后果,把它的风险降到最低。
另外一点是不要犯同样的错误两次,人非圣贤总会犯错,尤其是在自己不了解的部分。但犯错以及之后的复盘本身就是一次充分了解的机会,不重蹈覆辙不仅是职业素养,也是别人信任的基础。
practice is key
练习是关键。
我上高中的时候,当时的英语老师经常给我们讲一句俗语:pratice makes perfect,翻译过来就是熟能生巧。对于程序员这个行当来说也是一样,每一个技能都是可以练习的,没有人是天生什么都懂的。
这里说的练习并不只是一味地重复,你还需要系统性地学习,逐渐提升难度挑战自己。不要满足于你现在会的一亩三分地,以及你熟悉的领域,要勇敢地走出舒适区,往未知的领域进发。不要满足于知其然,要更多地知其所以然。
当我们使用某一个技术的时候,多问问自己,它是如何实现的?它底层的原理是什么?还有没有更好的方法?然后试着去回答这些问题,一个一个地钻研下来,你会发现不知不觉间,那些知识、技能好像织成了无形的大网。而正是一次次的练习串联起了它们。
be a small fish
做大池塘里的小鱼。
是做一个大池塘里的小鱼,亦或者是小池塘里大鱼?这似乎更像是一个哲学问题。但天才们说,永远要做大池塘里的小鱼,永远和那些比你更聪明,比你更强的人一起共事。自己一个人摸索总是不容易的,摸着石头过河总免不了磕磕绊绊。但如果能够找到比你更强的人,你就可以以他为榜样,从他人那里获得指点,这样你可以保持永远精进、持续成长。
用天才们的原话说当你突然发现你成了你们组里最资深的工程师,其他人遇到问题都来问你的时候,你就需要警醒了。也许你不知不觉间已经成了小池塘里的大鱼,也许是时候换一个环境了。
这句话的另外一层解读是,我们要虚怀若谷,永远不要有大鱼的心态。不要觉得我已经是一方巨擘了,就停止努力。永远保持一颗上进的心,永远对自己不满足,这样才会行的长远。乔布斯也说过一句类似的话,stay hungry stay foolish,求知若饥,求识若愚。
好了,今天的文章就到这里,感谢大家的阅读,喜欢的话不要忘了三连。