彼长技以助己(5)量级思维
数字感性与理性测试
我先讲一个可能发生在我们身边的故事:一个程序员在一个项目开发中使用了考虑到目前业务量少,快速写了一个冒泡排序,结果被经理批评了,然后他跑来找你诉苦,请问你会怎么和他说?
正确观点大致是这样的:首先不管目前业务量多少都不应该自己去些冒泡排序来做,如果真赶时间,可以采用现成的解决方案,而不是自己实现一个冒泡排序;如果是核心业务,一个程序员怎么能预估到业务量的发展?难道都要出了问题后再优化吗?
说这个故事主要是想说明,这个程序员他缺乏量级思维,所以才觉得自己行为很正确,被批评了很委屈。
我们再看下面一组问题:
-
问1:一个球直径增加一倍,体积增加几倍?
-
问2:当前会议室能装下多少个高尔夫球?
-
问3:1 + 1/2 + 1/4 + …极限是多少?
-
问4:1 + 1/2 + 1/3 + 1/4 + … 极限是多少?
-
问5:自然数多还是自然数的偶数多?
你都答对了吗?(答案见文末)没有答对也没关系,因为我们人类对数字特别是大数字本身就是无感的。
大数字
人类对大数字是无感的,所以要摆脱原始脑,开启现代脑,还要擅长借助计算机的大脑。
比如数字7,现代人都知道这是个不大的数字,但是原始人3以上就数不过来了,还有古代人棋盘摆谷子的故事,他们(一部分现代人也是)缺乏指数增长概念;我们再来看个现代人王健林的小目标(美国人平均一辈子争1亿)。
为什么王健林的小目标对大多数人来说就像不可能完成的目标?因为我们对数字的感觉主要受限于生活环境,你和王健林生活的环境不同,对数字大小感觉就不同了。
我再问你:围棋有多少种可能性?361个点,每个点有空,黑,白三种状态,3^361 ;请问这个数有多大?如果你不是物理学家,基本上是完全没有概念
我再问你:我们宇宙中有多少个基本粒子? 你肯定很难回答上来,你大脑的感觉是一个非常非常非常非常…大的数,已经超出你的认知范围。答案是10^80 到10^82。
那这个数和刚才围棋有多少种可能性来比,孰大孰小?围棋可能性约等于 2 * 10 ^172,比宇宙中粒子数要大太多,你想象一下每个基本粒子是一个单独的宇宙,每个宇宙也有这么多粒子,将它们全部加起来也比不上围棋的可能性,所以我们现代人比古人好不了多少,不要50步笑百步。
当我们嘲笑他们怎么3就数不清了,计算机也可能h会嘲笑我们,连围棋的可能性都数不过来
人类演化速度是远远小于计算机进化速度,第一台计算机:1946年 5000次/S,已经大大超越人类;到了现在的普通电脑:几亿次/秒,如果是超级计算机,算力更是大的惊人。
当我们开发一个几年后的IT产品,必须假设以今天10倍资源框架来设计,否则等你几年后生产出来就已经落伍了。
何为量级
理解量级概念之前,我们先要了解数量级:数量的尺度或大小的级别,每个级别之间保持固定的比例(比如说10倍)。那么量级就是比数量级差距更大的概念(理性上很难理解,我们还是看感性的例子)
量级有二个非常重要的性质:
-
1 小量级的东西和大量级的东西放在一起,前者可以忽略(大O计算法)
-
2 多个小量级也比不上一个大量级(大学中的几百篇人工智能论文抵不上杰夫迪恩一篇论文影响力;一个一流工程师可能再多的三流工程师影响力也抵不了)
我们做事情,就要充分理解和运用量级思维。比如我们想获得多大成就,那么成就和那些因素有关呢?
量级与成就
接下来我们就看看量级是怎么影响成就的。成就公式如下:
成就 = 成功率 * 事情影响力 * 做事速度
- 做事的速度:最多2-3倍的差距,数量级的差距度都很难达到
- 事情的影响力:数量级差距很常见,存在量级上的差距(前文中多个小量级也比不上一个大量级)
- 成功率:只有0-100的差距,只存在数量级差距,但是成功率取值往往是两个极端
从上面公式给我们的启发就是:扩大我们做的事情影响力,提升我们做事情的成功率。道理很简单,但是具体如何去做呢?我以开发工程师为例,和大家探讨下,其它岗位基本思想都是相通的。
提升成功率事情
- 不要好高骛远,把简单的活做到极致,慢慢的领导才能把更重要的事情给你做。
很多人领导不把有挑战的活给自己,很可能是领导看过你之前干的活的质量,不敢委以重任,试想小事都做不好,怎么还敢把重要的事和大事交给你去做,即使给你,你也未必做的好,做不好的结果可能是你很难再有机会了。
- 熟悉公司业务,提升做事的速度和质量
80%工程师不重视自己公司业务,要知道技术只是工具手段,除非你掌握的工具是你自己发明的,否则你拿着市场上到处都有的工具如数家珍,岂不是本末倒置?要知道能生存下来的公司,起码业务不是市场上到处都有的,如果公司不是技术性工具类公司,那么业务才是公司能够生存的价值所在,你最应该熟悉它。
提升影响力事情
- 不要靠累计你的工时和开发速度来扩大你的影响力,而是想办法如何提升你代码的生命周期。
不经过思考的代码生命周期是非常短的,国内平均3个月,你写了好多年代码,仅仅是开发速度快的话,那将不是荣耀,而是耻辱。就像打了很多年仗的士兵吹嘘自己最近一次亲手杀敌一样。
- 转变角色,不要老想着多做1%的事情,而是多想想如何在最有影响力事情中参与1%。
比如俞敏洪从讲师到校长的转变,工程师写具体业务到指导流程,优化架构的事情。
备注:文中逻辑题答案,问1:7倍;问2:更具实际长宽高计算,高尔夫球直径约4cm;问3:2;问4:无穷大;问5:一样多