[学习能力]结构化你的学习能力: 十步学习法,你学会了吗?

不要用战术上的勤奋掩盖战略上的懒惰。 —雷军

文章目录

  • 导言
  • 前期准备
    • 第一步: 了解全局
    • 第二步: 确定范围
    • 第三部: 定义目标
    • 第四步: 寻找资源
    • 第五步: 创建学习计划
    • 第六步: 筛选资源
    • 小结
  • 后期实战
    • 第七步: 开始学习,浅尝辄止
    • 第八步: 动手实践,边玩边学
    • 第九步: 全面掌握,学以致用
    • 第十步: 乐为人师,融会贯通
  • 总结
  • 参考文章

导言

最近在看<<软技能— 代码之外的生存指南>>这本书,其中提到了“十步学习法”,对我很有启发,拿出来和大家讨论分享下。

十步学习法顾名思义共分为十步,前六步为准备阶段,后四步为实战阶段。准备阶段只做一次,实战阶段是一个循环反复的操作。十步学习法的本质核心要点就两个: 1. 目标管理 2. 利用好奇心“天赋”。

十步学习法不是一个学习“银弹”,只是一个结构化学习能力的一套方法论,通过“聚焦学习范围,关注重点内容”的方式来合理有效的将学习者的精力尽可能花在20%(20/80法则)上,于此同时。在后四步的学习过程里,通过“自我探索” “主动教学”的方式避免学习的乏味和加深学习内容的印象。

前期准备

在进行前六步的操作时,要克制住自己想要马上学习的欲望,在准备不充足的情况下满目的投入知识的海洋,容易出现没重点、易乏味、学习无用功等情况。不积跬步无以至千里,基础打得越牢,目标越容易实现。

总的来说可以是: 制定待学习清单,划分小目标、收集资料、制定学习计划。

第一步: 了解全局

此处的全局是依据于你的需求来进行了解的,“抛开需求搞开发就是耍流氓”,了解足够的全局后,才能避免学非所需、力所不及等情况。

第一步的难点就在于对于未知的东西怎么才能了解未知东西的全局(unknown unknowns),我们根本不知道自己知道够了没有。还好现代的互联网世界信息已经足够便宜和丰富,花点时间了解下大致全局就好: 清晰地了解要学习主题的全局和其下的主要子课题。了解到合适就好

如果刚好手上有一本权威书籍,可以参考该书籍对于学习主题的目录结构和相关的介绍性章节。粗略的了解下就好,不要太深入,更不要立马就投入看这本书,第一步只是做个全局性的了解。

要了解的具体内容

  • 背景: 谁创造的,什么时候
  • 用途: 为了解决什么问题
  • 原理: 大致思想是什么,大致知识体系是什么
  • 重要性: 在整个知识体系中位于什么地位,和其他知识之间的关联
  • 应用场景:具体用于干啥的,在哪些地方用上了,大致实现方式

行动

  • 网络搜索相关知识
  • 翻阅相关书籍的目录
  • 请教导师或了解这方面知识的人

第二步: 确定范围

在大致了解了全局后,可以制定学习范围,只有明确了学习的范围后才可以为之后的学习目标的制定打下基础。参照之前的“全局”、“子主题”可以划分出全局范围和子范围。确定范围也是确定主题,确定学习者要做的事。而随着主题的确定,学习者改为自己明确了学习理由。

第二步的难点就在于学习者试图解决太大的问题而把自己搞得不堪重负。正如下文所示,我们在了解全局后得出了一个大的范围(例如学习C#),可以切分为一个“控制台程序的开发”等。此外一定要克制住扩张学习范围的诱惑,尽可能的保持专注

[学习能力]结构化你的学习能力: 十步学习法,你学会了吗?_第1张图片

行动

  • 构造一个知识图谱,注意 考虑时间因素、合理切分
  • 拟定一个学习提纲,再然后划出你目前需要学习的部分
  • 请教导师,让过来人帮你写个学习提纲

第三部: 定义目标

好的目标一定是具体清晰有边界的,并且可衡量、能判断成功失败的。具体的目标制定方法可以参考SMART原则。制定目标不要贪大贪全,目标制定和敏捷开发一样都是小步前进的。充分评估自己的个人特质,制定出有一定挑战但不至于难实现的目标。好的目标制定可以勾起我们的动力,每达成一个目标内心就收到了鼓舞。

SMART原则

Specific 具体的;

Measurable 可测量的;

Attainable 可达到的;

Relevant 相关的;

Time based 时间的;

第四步: 寻找资源

在明确自己的目标后,寻找合适的资源来进行深入学习。资源来源要足够广,足够多。不要因为单一来源的信息而产生偏见,尽可能的获取各种各样的信息。信息来源可以如下所示

  • 官方文档 : 最准确、最及时的资源,但一般没有中文版。

  • 图书 : 书籍一般都比较深刻、系统,但一般不能紧跟最新的知识,具有一定的时延性。

  • 博客文章 : 及时丰富但层次参差不齐。

  • 在线课程 : 最为生动,但较为费时

  • 专家: 可遇不可求的。

第五步: 创建学习计划

打好基础、做好铺垫,层层递进。不要妄图一步到位,脚踏实地的学习,同时也要充分利用好“碎片化学习”。不要超过学习范围,注意时间上的规划。

制定学习计划就像写一本书一样,因此可以参考一些权威书籍的目录安排。

第六步: 筛选资源

第四步的收集资源的过程中肯定有很多数据、资源是冗余的,而且并非所有的资源都适合你的学习计划(不要把书籍中超过学习范围的知识点,纳入你当前的学习计划)。这一步的目标是尽可能的精简你的学习资源,找出哪些内容内容足够覆盖你的学习计划,并将其整理出来。

小结

前六步也不是就一定是按部就班的一个个执行,它们之间的顺序可以随着个人特质来进行适配。

前期准备得有多牢固才算足够,多了就不是十步学习法,而是“瀑布流式”学习法,少了则准备不足盲目投入精力,浪费了大把时间。平衡无处不在,只有一次次的试错、反思、复盘才可以做好自己的trade-off。多一分不多,少一分不少。

后期实战

实战部分其实就是理论知识和实践互相促进的阶段,这一阶段需要不断循环反复的进行,以理论促进实践,以实践而产生的好奇心促进理论学习。后四步可以形象的比喻成在7、8、9、10梯子上上上下下

[学习能力]结构化你的学习能力: 十步学习法,你学会了吗?_第2张图片

通过 “学习——实践——掌握——教授”(LDLT)的方式来真正领悟知识。通过掌握恰到好处的基础知识开始,通过动手实践来学习,同时通过自我探索收集问题。之后,掌握了足够多的有用知识。最后,将自己所学教给他人,以此来弥补自己在学习过程中的不足,同时通过深入思考巩固知识。

第七步: 开始学习,浅尝辄止

这一步的易错点就在于理论学习和实践的平衡掌握。理论知识掌握的太少,实践起来就处处碰壁,理论知识准备太多就导致实践太晚,知识消化不完。在学习的过程里注意过犹不及的关键思想,对于学习计划中的内容逐个攻破比一股脑吸收要好得多。

专注于下一步动手操作的所需的、最小量的知识,不要盲目冒进。

行动: 可以通过参考每章摘要、各种简介来对接下来的学习内容有基本的认知。

第八步: 动手实践,边玩边学

这一步的重点在于,像摸索着使用新手机一样玩耍你的“新知识”,边玩边学的核心奥秘就在于“小步前进”的学习。

大多数人会试图通过读书、观看视频的方式来掌握某个主题。他们会提前吸收很多的信息,然后再付诸实践。这一办法的问题在于,学习节奏完全跟着别人走,不清楚哪些是终点,循着他人设计好的学习路径学习。

使用“小步前进”学习法,可以在实践操作的过程里产生各种问题: 它是如何工作的? 我该如何解决这个问题? 不断产生的问题会促进我们不断学习,引导我们走向真正重要的方向

但你学习完了一遍后可以因为“玩”的原因交叉地再学习一遍,这一遍也会更深刻,更有重点。

第九步: 全面掌握,学以致用

前两步对于所学内容浅尝辄止,并因此而产生了一部分的问题,这一步可以就这这些问题深入学习下相关的内容。为进一步利用好学习资料,阅读文字、观看视频、与他人交流都是必要手段。

不要害怕回头再去操作,因为这不仅仅能找到问题的答案,也能让你学到新知识。

试着把学习的内容和最终目标关联起来,掌握的每个模块都应该推动着你向着终极目标前进。

第十步: 乐为人师,融会贯通

许多人不敢为为人师,但要做好融会贯通,除了“好为人师”别无他法。许多专家由于过于专业,看不到初学者的很多不会的地方(专家盲点),反而没有初学者教的得心应手。

走出自己的舒适区,将自己学到的知识教给别人。

行动

  • 将你所掌握的知识,写成文章,发布到网上,并回复别人的留言
  • 写一个开源的demo项目,用于阐述你所掌握的知识
  • 发表相关演讲和交流会
  • 在stackoverflow上回答相关问题

总结

十步学习法不一定就是十步,可以根据自己的个人习性来自适应设计出适合自己的学习框架,因此我认为十步学习法还可以有一个十一步,用户反思复盘自己的学习过程,优化学习框架、学习方法论,不断磨合适配出属于自己的学习方法。

参考文章

  1. <<软技能>>
  2. 程序员十步学习法
  3. 软技能:十步学习法
  4. 程序员十步学习法
  5. 十步学习法,助力高效学习

[学习能力]结构化你的学习能力: 十步学习法,你学会了吗?_第3张图片

你可能感兴趣的:(杂学,编程语言,个人成长,学习能力,学习)