你是快手还是慢手?
快是手比脑快,脑子里可能还没想,已经开始动手了,快手具有很强的动手实践能力。
慢手是手比脑袋慢,我属于这一类,什么事情都是先用脑子想清楚,反映过来,在脑子里构建一副图景,然后才开始干。
作为一个慢手,我非常欣赏快手,但两者都各有优缺点。
当慢手花了很长时间也不能构建一幅完整的图景时,应该马上停止瞎想,开始实践。
当快手遭遇一个一个问题时,也应该让手从鼠标和键盘上拿下来,拿起笔和纸,开始仔细的思考。
当我编程或者做什么事情时,总会现在脑子里构建一幅图景,把所有事情都过一遍,属于计划驱动的一类。
比如你去玩,要考虑做什么车,从家里去车站该怎么走,上网查地图,打算住哪里,要带什么东西。
你计划过了,一般就不会出一些大的遗漏,比如忘记带身份证,忘记带钱,当地取钱又不方便。
现在看看你修改一个程序时,要考虑的问题:
新增加的功能是什么,我应该怎么来修改,修改哪里,要增加那些方法和类,数据库要改变吗,修改了这里哪些地方会受影响,要使用新框架,新技术,要使用自己不熟悉的API吗。
解决问题的重要方法就是分治。你要把一个大问题分解成无数个小问题,而对这些小问题,一部分是你现在就知道怎么解决的,一部分很模糊的,好像知道,又不确定,一部分是根本不知道的。对于模糊的,是你要实践求证的;对于根本不知道怎么解决的,要去向其他人或着google或者书本求助的。
至于工具,我认为脑图(mindmanager)不错,我用的很爽,包括Mindmanager,mindmapper,xmind,cmaptools,freemind.大家去google一下就知道了。
一旦你这些小问题都明朗了,解决这个大问题就是水到渠成的事了。
这里面涉及到两种能力,一种是对问题的构想力 ,就是把大问题分成小问题的能力;一种就是学习,联想和逻辑思维能力 。前者是你个人能力的综合体现,靠经验积累和方法保证。后者可以不断学习,思考,特别是联想能力。一般人解决不了问题,是因为在他们的世界里,事物是割裂的,事物的联系很少。而对于解决问题能力强的人,这些事物都是联系在一起的,他们熟知这种联系,就能找到解决问题更多的出路。这就是为什么人工智能永远达不到人的智能的原因。因为人工智能中,这些联系都是人为训练出来的。电脑是不能有对问题的构想力的。
如何训练这些能力,就只能靠不断的学习和思考,学习使你接受新信息,思考可以使你建立更多的联系。
另外一个体会是,做任何一件事情要有目标,无论是产出一个新成果,还是写了一片总结性的文章。对你都是一个锻炼,千万不要盲目的学。老祖宗早就说了,“学而不思则罔,思而不学则殆”。
Be a thinker, go!