如何理解
做事情A,导致结果B,而结果B又会加强A,不断循环。(成甲老师)
举几个例子
- 不断学习提升自己的能力,找到了一份好工作,好工作提供了更好的环境和人脉等资源,自己能力提升也就更快,下次可以找到更好的工作……
- 不耻下问,学到了东西,更愿意问问题,学到更多的东西……
- 不愿意与别人打招呼,与大家更疏远,也就更不愿打招呼,距离越来越大……
- 在幼儿园,好好表现,奖励了个小贴画,就更加积极,更容易得到奖励,也就更愿意上幼儿园……
- 网站的访问量越多,在搜索引擎的排名就越靠前,那么网站的访问量就越多……
复利效应可以导致幂律分布
20%的网站吸引了80%的访问量,而80%的网站只能共享20%的关注。这种不均衡的分布状态,在数学上叫做“幂律分布”,比如收入、股市波动、网站访问量、公众号文章的阅读量……
如何成为那靠前的20%呢?
触发临界点
两个影响因素:利率和执行次数。
所谓“利率”,就是做A导致B后,B对A有多大的强化作用。
如果利率固定,执行一次所需的时间固定,那么坚持得时间越长效果越明显。
软件开发中的复利
软件开发中,大部分事情不是重复的,每天只是完成大任务中的一个小任务,连续几个月或更长时间才能完成整个任务,这时,如何每天都有进步呢?有没有通用的地方呢?抽象成每天在做同样的事情。必须要找到,这样才可能有复利。
- 软件设计,有没有可以借鉴的开源项目?设计的原则?
- 开发新功能,设计模式、文件命名规则、如何定义类等。
- 调试问题,流程是什么?
- 先定位问题,可以从现象猜测,从日志分析,如果日志上没体现,是不是打印的原则有问题?那就得总结什么时候要打印日志,这样下次调试起来就很容易,也就更愿意打日志。
- 分析问题。越深入越好,对某技术没掌握?粗心了?单元测试不充分?对业务问题理解有误?表面的问题都有深层的原因,这些是可能产生复利的地方。
- 解决问题。需要补课了,这些积累可以避免以后的类似问题,也相当于在加速。
- 重构代码,发现了哪些Bad Smell?有一些通用的原则。
- 有时是在完善昨天的工作,简化某些流程,更易懂、简单,为增加后续的复杂功能打地基。如同俄罗斯方块,尽量把下面的消掉,上面才能容纳新的方块。
每天进步0.01也很难啊
工作中会被很多因素影响,进度紧,任务重,哪还有心思静心学习啊?赶紧搜索一下问题,知道了答案就过了,没时间探究。可这样也就损失了一个学习的机会,下次碰到稍微不一样的问题,还得搜索,效率低下。而且,背后的原理不懂,遇到搜索不到的问题,只能抓瞎了。
有时候,先收藏起来,有时间再研究,试问,谁会经常翻看以前的笔记?即使回头研究,Context没有了,从大脑深处提取出来也很耗时。
遇到问题,也就是提升的机会,要好好把握,尽可能深入研究,这里面存在提升0.1的可能。
系统学习
系统学习某个技术呢?比遇到问题零散学习效果要好很多,就好像是专业运动员和业余选手的区别。
结果很重要
先把各个环节联通,即使结果有问题,只要修正了,就可以看到更好的结果,不断迭代。
感悟(知行合一)
每天需要学新东西,开拓眼界,才可能持续提升。
学了,要多思考,很多时候,学习比较被动,听讲座、看书等过程中大脑一般不够活跃,如果能自己总结,或者给别人讲,那效果就要好很多。
不能坚持,因为没有形成这个正向地循环?
如何提高收入水平呢?
让自己不可替代,如果公司的增长也符合复利效应,如果缺了你,可能利率就受到影响。
长期坚持
哪怕利率很低,只有坚持,才可能增加执行次数。
1.01 和 0.9 的 365 次方分别是多少?
FOCUS
专注自己擅长的领域,增长也最快,时间长了,积累很大,即使利率降低,总量还是很大的。例如某行业10年经验的专家,从事教育的老师们。
变化
变化太快,之前积累的技术很快就过时了,留下了什么?透过技术的表象学到了什么?越深层次的东西变化越慢,但也越难理解和掌握,半衰期也就越长。还有,很多时候,技术是手段,目标是解决问题,那分析问题、分解问题、管理团队、沟通协调等能力更加重要。