前言

  最近读论文、做事情感觉效率太低,且注意力不太集中,需要去开拓下思维,调整下自己的学习方法,碰巧看见了这本书《程序员的思维修炼:开发认知潜能的九堂课》,没有醍醐灌顶,但起码受益匪浅;

  前面五章,大多是在讲德雷福斯模型,一个从新手到专家的历程,一个人从按规则行事的模式转变为使用直觉的模式;感觉对于目前的状态过于遥远,可能在步入社会工作后会有更深的认识;这里主要学一些我在本书中学习到的一些提高效率的手段,比如主动学习、控制注意力这些;

主动学习

如果你不知道去往何处,那么你必须多加小心,因为你很可能无法到达那里;
        ——尤吉·贝拉(Yogi Berra),前美国纽约扬基棒球队接球手

瞄准SMART目标

  使用SMART方法实现目标能够更加专注,在这里,SMART代表具体的、可度量的、可实现的、相关的和时间可控的(Specific, Measurable, Achievable, Relevant, and Time-boxed);

  我们往往对于这两个词目标(goal)和目标任务(objective)的意思有一些模糊。明确地说:目标是一种理想状态,通常是短期的,是你努力要达到的状态。目标任务是一种帮你接近目标的事物。但是不要在这上面太过计较,不同人使用这些词语稍有不同;即目标任务使你更靠近目标;

具体的
  首先,一个目标任务应该是具体的。也就是说,只说“我想学习Erlang”是不够的。应该把事情具体化,例如“我想要用Erlang编写一个可以动态生成内容的Web服务器”;

可度量的
  如何知道你何时完成?为了努力实现目标任务,不管采用什么方法,你必须能够度量它;如果你认为无法度量自己的目标任务,那么很可能它还不够具体;但是一定要采取稳扎稳打、步步为营的过程。你不能期望一周之内减掉五十英镑或者利用一个周末就学会一门全新的编程语言和它的全部函数库。度量你的目标任务,但是要采取增量进步的方法;

可实现的
  一个你无法达到的目标不是目标,只是一种疯狂、吸食灵魂的自我挫败。有些事情对大多数人是不现实的;因此,先确定目标是否合理。你也许可以在下周用新语言编写一段“Hello,World! ”或者一个简单应用,但是你可能无法编写一个完整的Web应用框架和一个带有神经网络优化算法的用户界面构造器;

  所以,从你现在所处的情况着眼,让每一个目标都可实现;

相关的
  这个目标真的与你有关吗——对你重要吗?你对此有热情吗?是在你控制之下的事情吗?如果不是,这个目标就是不相关的;目标需要相关,需要在你掌控之中;

时间可控的
  这可能是目标最重要的一个特性,这意味着你需要设定一个最后期限;没有期限,目标会逐步衰退,永远被每天更紧急的事情所排挤,这样它永远都不会实现;

  再强调一遍,稳扎稳打。采取循序渐进、比较细小的里程碑;当实现它们后,你会更有动力去实现下一个里程碑;

  这种方法帮助你从自己的角度(“我”)、从更积极的角度(“我要”)来明确目标,要么用一般现在时,要么给出明确的时间表述(“我会在××时间之前完成zyzzy”);

  “设定目标是第一步。下一步行动是创建小任务以帮助你每天或每隔一段时间都能达到某种程度。你创建的小任务越多,你就越容易看清自己与目标的距离。”
                        ——Johanna Rothman

务实的投资计划

定期投资(成本平均法)
  在金融领域,你需要采用成本平均法(dollar-costaveraging)。这意味着如果你定期购买股票,有时你会付出很多,有时你会收益很多。但是长期来看,这些差异互相抵消,一般最后你都会获得较好的回报;

  识投资也是一样。你需要定期投资最低限度的时间量。养成一种习惯,如果需要的话。躲到你的家庭办公室里去或者走进有无线网络的咖啡厅。并非每期学习都同样富有成效,但是只要定期安排学习,长期来看一定会成功。如果你一直在等待空闲时间或者等待灵感的突现,那么它永远都不会发生。

  例如,我想学习FXRuby GUI工具包,在坐下来认真学习之前,我首先得有相关的书籍,下载需要的软件,想好用FXRuby编写什么东西。我也需要分配足够的时间研究它,只是周六下午或者周二晚上很可能是不够的;

使用原生学习模式

  既然已经建立了主动学习的良好框架,我们现在需要看看学习本身。在本章剩余部分,我们将研究一些具体方法来帮助你更快更好地学习。以下是主要提纲。

❑ 主动阅读和总结书面材料的更好方式
❑ 使用思维导图探索和发现模式和关系
❑ 以教代学

  单独使用上述任一种方法本身就能让人受益匪浅。合在一起,它们更可以使你成为一台高效的学习机器。但是每一个人都是不同的,每个人的最佳学习方法也是不同的。因此,你可能发现某些方法最为有效——请记住,没有放之四海而皆准的办法。

使用SQ3R法主动阅读

书面的指令通常被认为是最无效的
SQ3R法
❑ 调查(Survey):扫描目录和每章总结,得出总体看法 =>首先,带着问题审视你要看的书。看一看目录、各章介绍和总结,以及作者留给你的其他标志性内容。你需要在深入细节之前得到一个总体印象;
❑ 问题(Question):记录所有问题 => 这项技术如何解决这个问题?我是要学习如何使用这项技术吗?或者这项技术实际是指向另一个源头吗?把各章节的标题改写成问题,这些都是你期望这本书回答的问题;
❑ 阅读(Read):阅读全部内容 => 现在你可以阅读这本书的全部内容了。如果可以的话,随身携带这本书,这样你可以在等待会议或约会、在火车上或者飞机上或者任何空闲的时候阅读。在困难的部分放慢速度,如果内容不是很清楚就重新阅读;
❑ 复述(Recite):总结,做笔记,用自己的话来描述 => 随着阅读深入,复述、回想和使用你自己的语言改写书本最重要的部分。要点是什么?对想法做一些初步的记录。创造一些缩写来帮助你记忆等。真正感受这些信息,利用你的R型、通感构建等等。这个主题作为一部电影看起来像什么?卡通吗?
❑ 回顾(Review):重读,扩展笔记,与同事讨论 => 最后,回顾这本书。如有必要,重新阅读一些部分,当你再次发现一些有趣的内容时,可以扩展笔记;

  这项技术的第一个有用方面是主动性。人们不再是随机地捡起一本书阅读,而不管记住或者没有记住多少内容。这项技术是一种更周到、更自觉、更有意识的方法。

测试驱动学习法
  重复阅读同样的材料或者重复学习相同的笔记,不会有助于你记住材料,可以选择测试,通过重复回顾材料来不断测试你自己,这种方法有效得多;

使用思维导图

  无论是笔记还是思维导图,手写是关键。例如,听讲座时做笔记真的能帮助我记忆讲座内容——即使我再也没有看过这些笔记。

  我发现最有效的办法是在听讲时先草草地记笔记(这可以使你在提取要点的同时不至于分心),然后把这些草稿笔记整理成正式笔记。即使我从没有再看过这些笔记,但是整理草稿笔记的过程是最有价值的。对思维导图,你也可以做同样的事情——先做一个粗糙的,然后根据需要重画。重画有助于在大脑中形成更多关联。

  当你不完全确定你会发现什么时,思维导图是最有效的。读书时做笔记是一个例子;下一次读书时(也许尝试SQ3R),请用思维导图的方式做笔记;你会对主题有一个大体上的认识,但是随着具体细节的出现,你开始看清哪些条目是互相联系的,它们是如何联系的,导图会不断填充,理解的思路就会出现。然后,当你进入SQ3R的回顾阶段时,根据你的理解重画和修改思维导图。你能够利用思维导图更新你的记忆,这种方法比其他笔记形式或者重新看书要有效得多;

  使用词语作为标题,你不需要长篇大论,甚至连一句完整的句子也不必有。利用图标代表关键想法。重要的连线使用粗体,不确定的关联使用细长线。写上你目前知道的一切,即使你不知道它适合归在哪里。

以教代学

和橡皮鸭聊天

  对一个领域不相干的人用通俗的话讲清楚你的工作;你可能会在这个过程中惊奇地发现一些新的收获和领悟;

积累经验

  当面对一个棘手的问题时,你可以采用几种经典的方法。首先,能否把问题分成若干个更小的、更易于管理的部分?这种功能分解对软件开发人员非常实用:把事物分成大脑足以容纳的几部分;

波利亚的解题方法
解决问题时,先提问自己:
❑ 未知量是什么?
❑ 已知量是什么?
❑ 条件是什么?

然后制定一个计划,执行之,回顾结果。波利亚建议的一些技巧(如下所示)听起来非常熟悉:
❑ 努力回想拥有相同或类似未知量的常见问题;
❑ 画一张图;
❑ 解决一个相关的或者更简单的问题,放宽限制,或者使用已知量的子集;
❑ 所有已知量和条件都用上了吗?如果没有,为什么?
❑ 尝试重新叙述这个问题;
❑ 尝试从未知量推到已知量;

  波利亚的一个关键建议是寻找以前类似的解决方案:如果你解决不了这个问题,你知道如何解决类似的问题吗?也许相似点是完全一致的(比如“这就像我上周看到的bug”),或者是一种隐喻关系(比如“数据库的工作情况就像是一滩水”);

好问题是没有答案的。它不是一个需要拧紧的螺栓,而是一颗种下的种子,由它可以收获一片思想的绿洲;
      ——约翰·安东尼·查尔迪(John Anthony Ciardi,1916—1986),美国诗人和评论家

总结

  总结的是第六章到第八章的内容,其他的话大多属于一种激励内容或者对于已经懂得的知识的扩展,比如如何正确对待实践中的失败等等;

读书笔记——《程序员的思维修炼:开发认知潜能的九堂课》相关推荐

  1. 读书笔记 | 墨菲定律

    1. 有些事,你现在不做,永远也不会去做. 2. 能轻易实现的梦想都不叫梦想. 3.所有的事都会比你预计的时间长.(做事要有耐心,要经得起前期的枯燥.) 4. 当我们的才华还撑不起梦想时,更要耐下心来 ...

  2. 读书笔记 | 墨菲定律(一)

    1. 有些事,你现在不做,永远也不会去做. 2. 能轻易实现的梦想都不叫梦想. 3.所有的事都会比你预计的时间长.(做事要有耐心,要经得起前期的枯燥.) 4. 当我们的才华还撑不起梦想时,更要耐下心来 ...

  3. 洛克菲勒的38封信pdf下载_《洛克菲勒写给孩子的38封信》读书笔记

    <洛克菲勒写给孩子的38封信>读书笔记 洛克菲勒写给孩子的38封信 第1封信:起点不决定终点 人人生而平等,但这种平等是权利与法律意义上的平等,与经济和文化优势无关 第2封信:运气靠策划 ...

  4. 股神大家了解多少?深度剖析股神巴菲特

    股神巴菲特是金融界里的传奇,大家是否都对股神巴菲特感兴趣呢?大家对股神了解多少?小编最近在QR社区发现了<阿尔法狗与巴菲特>,里面记载了许多股神巴菲特的人生经历,今天小编简单说一说关于股神 ...

  5. 2014巴菲特股东大会及巴菲特创业分享

     沃伦·巴菲特,这位传奇人物.在美国,巴菲特被称为"先知".在中国,他更多的被喻为"股神",巴菲特在11岁时第一次购买股票以来,白手起家缔造了一个千亿规模的 ...

  6. 《成为沃伦·巴菲特》笔记与感想

    本文首发于微信公众帐号: 一界码农(The_hard_the_luckier) 无需授权即可转载: 甚至无需保留以上版权声明-- 沃伦·巴菲特传记的纪录片 http://www.bilibili.co ...

  7. 读书笔记002:托尼.巴赞之快速阅读

    读书笔记002:托尼.巴赞之快速阅读 托尼.巴赞是放射性思维与思维导图的提倡者.读完他的<快速阅读>之后,我们就可以可以快速提高阅读速度,保持并改善理解嗯嗯管理,通过增进了解眼睛和大脑功能 ...

  8. 读书笔记001:托尼.巴赞之开动大脑

    读书笔记001:托尼.巴赞之开动大脑 托尼.巴赞是放射性思维与思维导图的提倡者.读完他的<开动大脑>之后,我们就可以对我们的大脑有更多的了解:大脑可以进行比我们预期多得多的工作:我们可以最 ...

  9. 读书笔记003:托尼.巴赞之思维导图

    读书笔记003:托尼.巴赞之思维导图 托尼.巴赞的<思维导图>一书,详细的介绍了思维发展的新概念--放射性思维:如何利用思维导图实施你的放射性思维,实现你的创造性思维,从而给出一种深刻的智 ...

  10. 产品读书《滚雪球:巴菲特和他的财富人生》

    作者简介 艾丽斯.施罗德,曾经担任世界知名投行摩根士丹利的董事总经理,因为撰写研究报告与巴菲特相识.业务上的往来使得施罗德有更多的机会与巴菲特亲密接触,她不仅是巴菲特别的忘年交,她也是第一个向巴菲特建 ...

最新文章

  1. python3 requests 库学习
  2. c语言grade d10,《电子技术10级C语言课程设计报告书写规范》.doc
  3. MYSQL数据库时间字段INT,TIMESTAMP,DATETIME性能效率比较
  4. Python攻克之路-高阶函数
  5. java mockserver搭建_mockjs,json-server一起搭建前端通用的数据模拟框架教程
  6. 菜鸟学习笔记:Java提升篇9(网络1——网络基础、Java网络编程)
  7. mysql 双主 脑裂_MySQL双主(主主)架构方案
  8. TCP Socket
  9. Java使用蔡勒公式快速计算某一天是星期几
  10. ******实战案例解析
  11. 中职计算机应用基础表格制作说课稿,表格制作说课稿.doc
  12. mpvue(4)主页面静态页面的完成
  13. 中水处理设备:中水处理工艺流程的选择
  14. 网页实现文字转语音朗读功能
  15. Python帮助文档的使用
  16. 2021Vivo千镜杯
  17. html中stroke函数,HTML中stroke是什么意思?
  18. C#海伦公式三边计算三角形面积
  19. JS兼容所有浏览器获取浏览器高度和宽度
  20. 微信H5棋牌游戏APP下载链接被屏蔽的解决办法

热门文章

  1. neo4j 学习-2
  2. display属性值
  3. 电力项目十--整合文本编辑器
  4. jsp 页面实现增减行
  5. 操作系统——进程与线程
  6. MOOC推荐及三门基础学科
  7. 第6章 面向方面编程
  8. SSRS 动态设置分组依据及行组个数
  9. iOS tableView刷新
  10. GPFS文件系统笔记