现在这个社会,功利性,目的性都太强,不论是什么样的人都想在很短的时间内就能获得成功,这无关于这个人是否努力,是否愿意付出时间、精力,这只是这个社会环境的使然。应这种心理需求,书店里成功、技巧方面的数据真实琳琅满目,让人也不知道选择哪本来作为自己行为的圭臬,哪本是可以带自己入成功的法门。其实,在阅读了一些成功、技巧后的书籍后发现,在阅读的时候,那真是和打了鸡血一样,恨不得将书中所说的每一句话都付诸实践,做笔记、定计划、急不可耐的实施,结果发现在实践书中的技巧的时候无不有各种各样的原因让自己作罢:效果不理想、实施难度过大、时间不允许。往往有些人连书都没翻完,就将书放到了一遍。
虽然读书不多,但各种各样书籍都有所涉猎,小说、推理、武侠、奇幻、现代诗、管理,当然还有谈到的技巧性书籍。依据写者的态度,书籍有很大的品质差异。特别是技巧性书籍,主要就是为了满足人们那功利性而存在的,如果一个写者仅仅是秉着总结的精神来写作,那么书籍往往也就变成了一种快餐性质,能满足部分人需求,但其实极其乏味,并且没有营养,甚至引起不良反应。看过网上一个点评励志书籍的博文:http://blog.sina.com.cn/s/blog_6008957501016e7k.html。谈到励志书籍可能存在的不足:1. 照搬套路,叙述笼统 2. 混淆思维,以次带主,以偏概全。不论其他,其实这两点已经很重要了。
技巧性书籍也是这样,不少技巧要么落于细节,太过繁杂;要么着眼太大,缺乏实践;或者局限技术本身,适用性不广;或者太过宽泛,让人觉得故弄玄虚。不论怎样,真正一本好的励志书籍或者好的技术书籍在讲清楚自己所要介绍的方面后,还需要从理论和实践两个维度来作证这些内容。当然,身为一个程序员,更多的关心程序(其实,我们更应该关系程序以外的世界,这样才能更好地去塑造程序世界)。那么,我们在程序世界里需要有哪些励志书籍或者技术书籍吗?这个不好说,因人而异,但是我觉得有一本你所依赖的书籍,并且这是一本好书,会让你在程序世界里徜徉更久。
《程序员的思维修炼》这本书就是从一个大家可能忽略(当然更多的人已经开始关注)的角度来介绍怎样去成为一个合格、优秀的程序员 、专家。这本书使用的各种思维方面的技巧或者说方法,都在脑科学或者神经科学的角度能找到依据,同时又会给出一些小的但是很重要的实践让你去感受。在介绍各种技巧的同时,不是提醒读者因人而异,并且方法只是成功的有效助力,关键还是在于个人的实践。在博客园上逛也很久了,正好以此来作为一些实践的试验地。
网上有篇博文已经很好的提炼出了本书的主要内容,发现总结的很好,我也是从这篇博文开始认识了该书,也谢谢博主了!摘录如下,也时刻提醒自己。
--------------------------------------此摘于http://www.cnblogs.com/whusl/archive/2011/08/06/2345780.html(红色部分为我有共鸣的地方)----------------------------
一、直觉是专家的基本特征, 但直觉难以驾驭
1、一个开发人员声称有十年的开发经验, 可能实际上是一年的经验重复了九次, 那么这个就不能算经验。
2、有别于"菜鸟"和"大牛"这种简单的区分,我们按以下划分:
初学者:对某一领域的理解仍不够好,无法有其自己的想法,甚至是在特定情况下去质疑某一规则是否适用。
高级新手: 通常能够摆脱各种规则, 并能独立尝试任务, 但是难以解决问题. 比较缺乏全局观念.
胜任者:能独立解决遇到的问题, 并开始尝试解决新的问题, 开始主动寻求专家的帮助和建议, 并加以运用.
精通者:有全局观念, 能反思并纠正以往的工作表现, 能自我改进, 在下一次能做的更好, 并能从他人的失败案例中吸取经验教训.
专家:总是选择更佳的方式做事, 他们有丰富的经验, 并根据具体的场景选择和运用这些经验.
3、自信往往来自于无知而不是知识。
4、现实的情况告诉我们, 大多数开发人员都停留在高级新手阶段, 只能完成现阶段的任务, 并根据新需求学习新的任务, 而缺乏全局观点。
5、相信直觉, 但要验证。
二、认识你的大脑。
1、随时记录你的想法, 如果不记录你的想法, 你就不会意识到你拥有它们。
2、积极的情感对思维有非常关键的作用, 处于高兴的状态可以扩展你的思维过程, 激活更多的大脑物质。
3、短暂接触一下苹果公司的商品会使人更具有创造力。
4、已知的问题如果不加改善, 就会像病毒一样扩展, 并造成更大的破坏(破窗理论)。
三、主动学习
1、学习的过程, 重要的不是记忆和学会, 而是先"适应"它, 理解其思想, 掌握其主旨.。
2、理性是主动的, 通常发生在你集中精力的时候, 感性是被动的, 你不能命令它, 只能邀请它。
3、拥有创造力和解决问题的能力的关键在于寻找思考问题的不同方式。
4、技术本身并不重要, 持续学习才是最重要的。
5、SMART代表具体的、可度量的、可实现的、相关的和时间可控的。对于任何目标,你都需要制定一个计划,定出一系列帮你实现目标的任务。 每一个任务应该具有SMART特性。目标的具体性: "我想学习Erlang"是不够的,应该把事情具体化,比如"我想用Erlang编写一个可以动态生成内容的web服务器"。可度量性:为了努力实现目标任务, 不管采用什么方法, 你必须能够度量它。可控性:稳扎稳打,采取循序渐进,比较细小的里程碑。当实现后,你会更有动力去实现下一个里程碑。
6、不仅有每周任务来实现目标,而且还会指定一些很小的任务甚至5分钟的任务,以确保能达到目标,任务的长度通常是一天,当遇到麻烦时,可以创建5分钟或10分钟的任务来开始。
7、设定目标只是第一步,下一步行动是创建小任务帮助你每天或每隔一段时间都能达到某种程度,小任务越多,越能看清你与目标的距离。
8、制定计划是一种非常有效的步骤,而大多数人通常会等到有空闲的时候去学习一门新语言或者新技能,而你会快会发现,你根本没有空闲时间, 时间就像硬盘空间,很快就会填满。时间无法创造和销毁,只能分配!主动的安排你的学习,合理的安排你的时间,这样会使你更有效率。
9、要为不同的时间段设置不同的目标,比如现在的目标、5年后的目标、10年后的目标。
10、计划是会变的, 但是必须与目标保持一致。
11、任何刚刚诞生的技术可能是高风险同时也高回报的。
12、知识投资和金融投资有一个区别是:所有的知识投资都是有价值的。有些技术可能不会在工作中用到,或者直接在当前工作中产生价值,但是会影响你思考和解决问题的方式。
13、并非每天的学习都有效,但是只要定期安排学习,长期看来一定会成功。最重要的是要养成一种学习的习惯。
14、相对于其他学习方式,阅读是效率最低的学习方法。(这句话有点不理解?)
15、SQ3R阅读法:
调查(Survey)扫描整本书的目录和结构以及总体看法,提纲挈领。
问题(Question)记录所有问题
阅读(Read)阅读全书
复述(Recite)总结做笔记,用自己的话描述
回顾(Review)重读,与他人讨论,分享。
16、比如看一本Ruby的书,先翻一下目录,看看主要内容,可以知道里面有一些语法的解释,然后列举了几个项目,以及一些目前还不感兴趣的高级特性; 接下来是提问,它是多继承还是单继承?迭代器在ruby是如何用的?如何创建和管理包以及模块?性能如何? 接下来就是看书,有时间多看些,没时间少看些; 最后是复述和改写里面的例子。
17、短时间学习大量信息不是很有效率。
18、可以通过间隔你的测试时间来增强你的记忆,比如2-2-2-6模式,在两个小时,两天,两周和6个月之后重新测试。(这个说起来容易做起来难!)
四、控制注意力
1、注意力是一种稀缺资源。当自制力很差的时候,一些无关紧要的事情会分散我们的注意力。
2、我们并不是没有时间,只是我们的注意力不够用而已。
3、冥想训练可以提高人的注意力。找一个安静的地方,舒适的坐立,背挺直,闭上眼睛,将注意力集中在呼吸。
4、如果你不能给出一件事情出错的三种方式,或者提供一个问题的三种解决方式,那么你的思考还不充分。
5、试图将注意力分配到几件事情上,意味着你在每件事情上都不会做到最好。
6、不停的中断手头上的事物而去处理邮件或回复即时消息,你的智商会下降10分。
7、无论你做什么,都不要同时做。
8、当你有一个想法时,最好把它放在合适的地方,无论是待办事项还是电子邮件,然后回到你正在做的事情上。
9、坚持持续做正在处理的事情直到完成,避免上下文切换。每个人在一天中应该有一段时间是效率最高的,必须尽量避免在这段时间内被干扰。如果打扰不可避免,那么最好留下一些线索,这样有利于更好的返回到当前的状态,继续处理。比如在写邮件的时候,有人来打扰,最好几下几个关键字,保留接下来的想法,以便结束打扰之后能马上回到写邮件的状态。
10、随时集中注意力,随时意识到自己要集中注意力做什么。
五、超越专家
1、将一种新的行为变成习惯至少需要三周,请给这个新的行为足够的机会。
2、你的想法会改变你大脑的机能和化学成分,如果你认为自己会失败,你的预感就是实现。
3、开始目标设低一些,当完成时,奖励一下自己,但是脑中只要记住最终目标,然后一步一步去实现,不需要一次全部想清楚。
4、人总是喜欢安于现状,当尝试改变时,总会有一种惯性阻碍这种改变,因此我们需要克服这种惯性的阻力。
5、尽量保持桌面和代码的美感,通过让大脑接受美的事物,来提高感性思维能力。
6、让散步成为你每天生活的一部分。
【读后感】文中的很多话都触动到了我!确实,要想提高学习、工作的效率,需要从一点一滴做起,比如"尽量避免上下文切换"。学习的道路上没有捷径,唯有坚持,当然还需要掌握恰当的方法。
【补充于2011-10-14】
1、每天的第一件工作就是计划当天的工作。不要直接盲目的去开始工作,效果远不如先计划。一天中最重要的就是做好当天的计划。
2、在开始每个项目之前的5分钟,构思整个流程和预期的结果,理清思路后再开始。当完成后,与之前构思的结果对比,看看哪里不足或是优异,为以后的工作垫下基础。
3、当你在工作时候,请挂上“请勿打扰”的牌子,专心致志,不为外物所打扰
4、如果没有重要的业务客户或是其他会议,请减少外界对自身的打扰。工作的时候不要因为别人而影响你的注意力。对于领导来说,可以限定一个时间来回馈邮件和电话。
5、控制自己排除其他杂念,例如Facebook和其他类型的社交媒体,除非你工作需要。
6、记住做到面面俱到可能性不大,同时还要记住思考、交流和行动的20%可以决定着你成败的80%。