此文针对的是IT行业的修炼手册,不包括其他行业
先说我们IT行业的三个能力层次吧
资源–应用流程–价值观
表现一个人能力的三个层次,金字塔塔尖是资源,中间是应用流程,底座是价值观,越往底层越重要
所谓的资源其实是指像知识,技能,时间,金钱,人脉,天赋,对于软件开发而言
你掌握的语言及框架都属于这些资源的能力
处于中间的是应用流程是指你解决问题的方法你的思维框架,分配资源的方式,你怎么样进行自我管理
应用流程能让我们整合各种各样的资源,寻找解决问题的策略,更好的来解决问题,也能让我们找到开发产品的思路,能让我们创造出产品
价值观:你认为什么事重要的,你要什么你不要什么,你如何做决策,这就是最根本性的
我认为所谓的高手,就是它形成自己的思维框架,能够快速运用专业知识技能,解决实际问题的人
然后再解说一下学一门技术的三个阶段(以开发为例):
第一个阶段基础开发:对QT来讲,就是去搭建它的环境,去熟悉它里面的信号与槽,去熟悉它里面的一些同期内库的使用,去熟悉Qt Widgets各种各样的控件,去熟悉Qt Quick。然后用这些去做一些简单的应用开发
第二个阶段:你要熟悉内核原理。这个时候你可能就要去了解他的时间循环的原理,然后分析它的源码,然后可能回去了解它每一种Widgets里面是怎么实现的,比如说QGraphicdViWE它里面怎么实现的,如果才能更高效,这是你熟悉内核的一个过程,经过这个过程之后,他会更了解这个框架,经过这个过程之后,你会更了解这个框架,才有可能继续往前走到第三部分
第三个阶段:优化框架,比如说你去优化Qt Quick里面的Js引擎,或者说你去解决Table View它的性能问题,因为Qt Quick中Table View比较多,性能会较低,再比如你也会去优化Qt Quick中各种手势的精度,比如说在移动终端上,它的精度也有优化的空间。再比如说你可能扩展Qt Quick的框架,给Qt Image加上新的格式或者添加新的插件,经历过第三个阶段之后,你对Qt的整个框架的了解和运用都会更熟练
构建自己的知识体系:选择一个方向,将这个方向的基础知识变成自己的
了解关联技术,在你选择的这个方向上,在你学习的这个知识或者技术方面的关联
形成自己的知识体系,记录你学到的知识记录和你的经验,去把你学到的知识经验技术等串联起来形成你自己的体系
最后就是还有保持技术的迭代更新
做到构建知识架构体系的技巧:
在项目完成之后想一想还有没有其他的使用方式等
当你对一个领域有比较深入了解之后,其实是有另外一个技巧对深化我们的知识形成体系非常有帮助,就是去输出你的知识,比如说你把你学到的东西讲给你的同事去听,去写些文章,画一些思维导图,能把你的知识做形象花的表达处理
当我们在一个领域内建立了知识体系数,做的比较深入了
扩展你的广度,最终形成一个梯形的结构,所谓梯形是在某一个方向上掌握的很熟练,能够深入能够用来解决问题,另外那你也可以在与他相关的这些领域的都有自己的知识有自己的了解,能不能把深度和广度结合起来这个时候那你的个人能力就会得到很大的提升
精进的三个习惯
刻意练习
复盘
敏捷
刻意练习有三个简单的3F原则:Focus ,Feedback,Fix it
Focus是指要有目标,你就要专注的去做事,能够聚焦当下,还要能积极努力的朝着一个方向去前进
Feedback是指的反馈也就是说即时的
Fix it,修正改善
刻意练习时有一点是特别特别重要的,即不断地设定目标,我们当下要实现的目标一定要高于你的能力,要有一点挑战
复盘
回顾总结的升级版本,所谓复盘就是你在头脑当中那么对过去的所做的事情了重新过一遍,通过对过去的思维和行为进行回顾反思探究,来实现能力的提升,复盘的关键是推演,通过推演这个工作,复盘就不仅仅是对过去的复制呈现,而是你可以能够进行各种从本质上区别分类,把你的经验固化,预知后续的事件,让自己能够更好的成长,将来更顺畅的做事
敏捷的习惯
如果能把敏捷开发的习惯变成我们工作当中做事的习惯,那对我们的成长是非常有益的,在每日站会的过程中,每个人都会回答这么几个问题:我昨天完成了什么事,我昨天遇到了什么问题,我今天要做什么,这三个问题对应的可以转化一下变成我们工作的习惯,比如说你每天早上都问一下自己我今天要做哪几件事情,那你每天下班的时候做一下盘点,我今天完成了哪些事情,哪些事情没有完成,到了什么状态,我遇到了什么问题,我明天准备做什么