学习方法论第02章

学习方法论—怎么下功夫才学的会技术

在上一堂课我们有两个作业,第一个是玩Swift Playground

第二个是倒着画自己的自画像

我之所以安排这两个作业的目的就是,要打破大家对学习的困惑

第一个困惑就是,很多人认为自己没有天分,所以他下意识的觉得自己不可能可以学会,所以我安排这两个作业
其实是想让大家发现,学习是有方法的,很可能只是你之前跟错了老师,用错了学习方法,让节课让大家玩的Ipad游戏,其实就是编程的一种,你会从里面发现,原来编程就可以用一句话去归纳解释,就是输入这个就可以输出那个,然后反复的做而已,而且你会发现,你如果玩这个游戏,竟然之后就入迷了


学新东西不需要了解原理

第二个困惑就是,很多人觉得学东西要先了解原理,先了解了原理之后才能实际操作,但是各位如果从倒着画自画像这个作业你会发现,学习绘画也不需要什么天分,也不要什么绘画技巧,你只要放下分析的心态,使用轮廓感知,也学得会一件事情,甚至还可以迅速累积成就感.

一开始我为什么要安排这两个作业?
是因为我在全职教编程之前我是有10年以上开发经验的资深程序员,我在行业里面的评价是我不仅仅自己程序写的好,也擅长去培训出优秀的程序员,关于训练程序员这件事情,我一直有一套独到的见解与训练方法,我用这个方法,在过去这几年间训练出了几百个学生,

这套方法总的来说是反程序员的直觉与政治正确的,但不可否认的,成果是相当有效,后来我在专职为全职的教练,教编程课之后,我将这套方法改良做成公开课,我的公开课学员背景非常多元,司机,保安,非计算机专业的学生,烧烤店老板,公务员,销售,客服,各式各样你想象不到的背景,他们的共同特征就是这辈子他们从来没有写过代码,然而最后他们都习得了编程技能,并且能够独立开发完成作品,从培训出这么多人的经验里,我发现了一些有趣的事情,就是有很多人同时都栽在同一个坑里面,没有办法继续往前,最后我发现,学习低效到最后失败者,都是在学习上有错误的认知,他们总共有四个错误的认知,

他们对待学习都是这样看待的:
第一,他们认为学习编程必须有天赋
第二,初学者在学习过程中必须看懂每一步,才能开始实际操作,初学时每一步学习都需要踏实的学习,完全掌握了以后才能开始下一步
第三,必须从基层原理开始学起
第四,他们对使用捷径这件事情非常排斥,觉得是投机取巧,他觉得复制别人的代码是可耻的行为,一定要一个字母一个字母的敲出来。

在这里我要跟各位分享,其实这四项是相当致命的伪概念

要知道初学一项技能,只有一个诀窍
就是你得让自己快速进入小获胜的高成就感 Small Win

你必须要进入到兴趣循环的里面,如果初学者找不到成就感,很快就会放弃了

事实上在学习的字典里面,都不应该有坚持这两个字

如果你的脑袋里面出现了坚持这两个字,那很可能就是你现在的步骤哪里做错了,当然有些朋友听到这些理论,可能会反击我说这是我胡说八道,我在这边一定要点醒你一个观念,很多人认为,必须在你学习编程的过程中,看懂每一个步骤,或者说必须要学习扎实,要从技术基础原理学起,更或者是说学习编程要禁止使用捷径,比如模仿,或者复制代码,这些说法,在某些情况下是对的,但是那是在你取得一项技能,重新复盘学习应该有的方法,他绝对不是初学一项技能应该要有的这样一个方法。

我在这里,想要跟各位介绍两个单词这两个单词有非常大的一个区别

Acquire Skill
取得技能

Learn skill
学会技能

这两个其实是不同的概念
如果各位能够把这两个单词分清楚
你之后再进行学习就不会焦虑了
比如说,举例来说,我们用学英文来举例好了。

所谓Acquire Skill 取得技能
其实就是说,可以去餐馆点餐,坐车去旅行,可以去旅馆,可以写英文信件

去的技能的意思是说不需要学习这个领域里面所有的东西,但是在课程结束之后有实际拿的出手的东西可以用

Learn skill 学会技能

熟练单词、语法、发音标准,腔调纯正。

然而绝大多数人学习上的困惑是,
你要先学会,才能够取得
而真正学的好的人,实际情况是先取得,然后再学会这个技能
一旦你没有先取得这个技能,后续的学习就会,无论你会多少个单词,但你还是看不懂文章,然后你就会满满的挫折感。

但是如果换个角度,如果你先得到这个技能为目的,围绕这个目标进行学习,然后你就不会盲目,对自己不会有那么高的目标,不会要求自己那么完美,而且当取得技能以后你就会发现很多东西,自然而然的也就学会了。

所以这是我们今天要讲的第一个重要的概念,你得先区分什么是得到技能,什么是学会技能。

两者的心态和起步方法是完全不一样的,那你换个角度去看,在学习当中,心理的压力就完全不一样了,所以后来你就发现为什么很多人自学编程,或者是接受培训
90%以上的人最后都是以失败告终呢?
因为这些课程安排的课表,从来都不是Acquire Skill为目标的,不是以取得技能为中心而设计的
他们通常都是这样安排的,他们的课表大部分的时间在讲授最基础的部分,很少一部分实际操作。他们给你很长很长的免费基础视频给到你,让你听起来很无趣,让你觉得自己一个人没办法能够学会,从而去报名他们的课程。
他们从不告诉你让你去练习,还强制要求你不要失去耐心,坚持一下就可以了,搞得好像在地狱里面历练一样,非常的痛苦,如果你不幸选择了这样一个课程,可能导致的最严重后果就是,你觉得编程太难了,你再也不要学习编程了。

比如一个16周的课程,前面12周都在讲理论基础和枯燥的概念,到了课程最后,他们觉得得让你有点实战经验,就安排了4周的时间,做一些小demo,让学生去模仿,美其名曰实战项目。

这样的学习效率是非常低的,效果也非常烂的,所以业界对培训学校的学生,是相当的反感,他们对培训学校的学生他们是这样来的,因为经过这样训练的学生,基础又不扎实,又不会搞实战,甚至别说编程学校,很多编程书,其实都是这样编辑的,前面啰嗦讲了一大堆自己都不明白的道理,让读者先失去兴趣。然后再示范一个跑不起来的项目。

当然我们也不能在这里去怪这些人是恶意的。

因为事实上编程与教会别人编程,这根本是两件不通的事情。

程序员通常会喜欢,在初学者不懂的时候,给教程里面添加非常详尽的解释,但是他不知道,设计的教程越详细,越让初学者崩溃。

因为学生的大脑在这种情况下,没有办法用未知解释未知,那教程写的越详尽,初学者不会感觉更开心,反而会感觉越来越崩溃。

这也就是我每次问大家目前的技术水平是什么的根本原因,我们的教程是针对不同技能水平而设计的,你只有找到最适合你现在水平的教程,才能最高效的进步。

之所以我的办法有效,是一开始就跳出了这个大坑,实际传授,我以前在内部培训当中总结出来的有效方法。

那这个方法与通常的培训都是有一些反常,但并不是不科学的。


我在这里先分享一下这套方法

我是想告诉你,如果你想要自学一门学问,假如是编程

第一步是要挑选, 实战型的初学指南
如果你不知道怎么挑,又想学习JAVA或者大数据的话,你可以报名我的课程

如果你不是要学JAVA相关的课程,比如你想要学前端开发的话,你一定要请这个领域的高手,你一定要注意,你找的这个人一定不是只高你一级的高手,而是要高上你10级的这样的高手,帮你挑一个很小的项目,最好是你如果是一个新手,在1到3天可以学完的这样一个小项目

你放弃前面的解说,直接进入后面的实际操作,不过你在这里有一个要注意的地方,就是最好不要去搞视频类的教程,最好这份教程是能够给你复制粘贴代码的,程序的版本越新越好

接下来你要做的事情是放弃原理的部分,全速冲刺把练习的项目能做的小国能尽快做出来,即便是复制粘贴代码也在所不惜。

然后把这个项目做上三遍。

特别注意

网络上的教程鱼龙混杂,随便一个前端项目就敢叫大数据项目,随便做几个动画效果,就敢说自己是BAT核心业务,请大家一定擦亮眼睛,实际操作才是王道,如何操作才是核心。

下面我教大家一下怎么做三遍,因为这个坐上三遍也是有诀窍的

第一遍,你可以先复制粘贴代码,根据流程,大致了解要贴什么代码会产生什么样的结果,如果这个教程上面有解说
,如果你真的很受不了不弄明白就没办法继续下去的话,那可以偷偷的看一眼了解一下,但是只能看一眼,不懂就随他过去吧,一定不要停下来看太久,也不要太纠缠,一定要搞明白,因为如果你坚持要搞明白的话,会把自己的学习初速度,往下大大的拉低

第二遍,你必须要跟着打代码,能打的就用打的,也不用钻研解说,和他对原理的各种描述,因为第二遍的目的是大致了解这个项目框架里面,到底大致上有哪些工具,包括错误信息要怎么阅读,如果解决打字的错误等等。

其实打错字是很正常的,遇到错误画面其实也是很正常的。如果你在学编程过程中,我希望你看到错误的时候,不是害怕而是兴奋,因为只有你看到错误才是成长的最好方式。

但是还是仍然有很多人在初学编程的时候,看到错误画面马上就崩溃了,但如果你仔细看,错误的英文画面也只是英文的字母,如果是开源的一些工具,他会尽量友好的把错误信息给到你,给你解决错误的实际操作建议。如果你能深呼吸一下,把上面的错误重新阅读一下,不过是一个错误嘛,其实不给你报错,就是不给你正确结果才是编程中最让你崩溃的呢。

那为什么看到编程的报错信息,那么容易让人崩溃呢?这是因为编程是一门相当特殊的学问,很多人在学习过程中,很容易把编程的这个报错信息,认为是对自己的嘲笑,跟攻击,尤其是特别敏感的人,你的一言一行,一眸一笑,在敏感人的眼睛里都会有特殊的深意。

在这里我奉劝各位一句,如果你是敏感的人,请刻意的锻炼一下钝感力,如果你是一个神经大条的人,我请你多关注身边的人的情绪感受,因为真的好多矛盾是由于对行为的过分解读,而很多矛盾也是因为神经大条的人太不在意别人的感受。

我们言归正传,在正常的生活中,你其实不会每天被别人嘲笑10几到几十次,所以他看到这么多错误自然会感到很崩溃,以为自己是一个失败者,那如果要学会编程,你得先把“失败者”这个单词,从脑袋里面干掉,你只要把他看成是一个忠实的反馈就行了,而设计者设计报错的初衷,其实也真就是这样的。

第三遍,还是跟着打代码,但是跟第二遍有什么不同呢?在这一边当中你要了解,当初你为什么会在这犯错误,那错误的原因又是什么,你要了解当中的小原理,在这一遍当中,你就要搞懂,这块的输入是什么,输出是什么,如果我改变着里面的输入,跟着的输出会有什么变化,如果我们的输入保持不变,我想改变输出的结果,我需要如何做改动
如果有不明白的地方,你就把他背下来。

我还要教给大家一个学编程的小窍门,当你在学习编程的过程中,你可以那一本空白的笔记本在旁边,把你在学习编程的过程中,犯的所有的错误记下来,把你犯的所有非常傻B的错误记下来,除了记下来以后,也把解决问题的方法附上去,然后公开的发表,注意,最开始你要做的是只记录错误的信息,在你工作了以后,你可以把正确的步骤和方法也像这个样子记录并公开。

我告诉你这个方法以后,也许你会有这样的疑问,我记笔记为什么要记录错误,而不是正确的地方呢?我必须要告诉你,所有的事情都是分阶段来做的,有一本书叫做《囚徒健身》教你如何循序渐进的锻炼你身上每一块肌肉的。还有跑步,老师我报名了10月份的一个马拉松,那最简单的方法就是保持频率。科学训练谁都可以跑下来,你只需要保持心率在160以下,之前不能长跑的同学,都可以试试。

为什么现在不让你记录正确的信息,因为正确的信息教程上就有啊,上面都是对的,你没有必要在这个阶段做啊。如果你只记录正确的东西,到最后反而什么都学不会,你的每一步操作,都是在践行正确的东西,而不是认真的记录一下,就觉得自己学会了,其实你需要重复的练习。

我在重复的讲一遍,因为这件事非常非常非常的重要、重要、重要。老师不是在这结巴,而是重要的事情说三遍。

请各位在学习新技能时,一定要把错误的信息记下来,并且把解决方法记下来,如果你遇到了一个怎么做都做不对,经常绊倒自己的地方,你就要把他先背下来,而不是跟他死磕,这其实是一个很简单的窍门,如果你不相信的话,你可以试着在下次学习的过程当中,试写三天的笔记看,我都说了,你就当最后一次被我骗。很快的你会发现。

如果你一直都是在记错误的地方,很快你的错误都不会再犯,你可以很快的加速前进

如果你在练习的过程中遇到BUG解不开,你可以花钱找一个程序员朋友,或者包个红包给程序员朋友让他帮你解决一下,不过你一定不要让他对你的学习方法指指点点,把他当做人肉Debug机就好了。你就当最后试一次学编程,严格执行这套方法,不要对这套方法怀疑,如果你还学不会的话,你再放弃也不迟

上面我说了这套方法,可能你听了还是不相信,因为这种反常式的方法,到底哪里科学,其实你大可不必怀疑,你就当被我骗,先实际跟着做,等你实际跟着做以后,就会发现这套方法的神奇

这当中背后的道理其实有几个,全是基于认知心理学发展出来的。

第一个理论就是,当你想取得一项技能的时候
初速度一定要快,一旦到达临界点,你的学习就会形成正向循环。你每向前一步,吸收到的知识和愉快心情驱动这你的下一步学习和完成,反复滚动。

第二个理论就是,如果你面对过去从来没接触过的领域最有效的学习方法,就是要配合大脑自然的学习模式,也就是左右脑的学习模式,互相去配合,你得先利用右脑模式,去进行肌肉的记忆,快速的有一个粗浅的知识去当框架,比如全盘不问道理的模仿,接着再用左脑模式精确的去分析其中的道理,一定是以取得技能为前提,不断的往前进。

这种方法对于学习那种之前没有对照经验的技能,非常有效

下面给我大家介绍一下大脑的运作原理

为什么我们一直主张这样的学习方法是因为一般人学习之所以低效,是不了解自己的大脑是怎么运作的。

一旦你了解了你自己的大脑是如何运作的,很快你就会发现,学习其实是有套路的。
甚至你可以用这套方法,去大幅的拉升自己学习的初速度

我先告诉各位大脑的几个特征
第一,大脑其实是不擅长思考的,而且大脑的思考是非常的缓慢的,
第二,多数的你认为的思考,其实不是真实的思考,而是调用过去记忆所组成的结果。
第三,人是用已知的事物去了解新的事物的,但是大家以为的理解,其实是记忆。
第四,如果你没有重复的练习,是不可能精通任何的脑力劳动。
第五,大家痛恨的题海战术或者填鸭式教育,有时候其实是有用的,甚至是必须的。

为什么我会说大脑不善于思考呢?
在现实我们最常见的一个现象是绝大多数人是不用脑袋思考的。
仔细想想你会发现大脑就真的是不善于思考的。

你可以让大脑随便做一则验算。比我们计算机的计算速度是低太多太多了是吧?

做个7×8的数学没问题,但是如果你算一下177×288你算算看 ,你会发现你的大脑瞬间就宕机了。 老师告诉你其实是等于 50976 你问老师咋算的,我会告诉你,老师那能是一般人嘛,最强大脑,相信有些人看过吧, 辻洼凛音那个小姑娘,你们有印象吧。 好吧其实我是背下来的。这里跟大家开一个玩笑。

我再用一个案例给大家理解一下,

一个空屋子里面,有一只蜡烛,一些火柴,和一盒图钉。我们的目标是让点燃的蜡烛离地面1米高,你已经尝试把蜡烛底部粘上蜡液,但是粘不到墙上,你不能用手扶,让点燃的蜡烛离地面1米高。

一般人如果没做过这个题目,很少能在20分钟之内解决这个问题。
但是如果你将这个题目具象化,也就是说真的把这些东西放到你的面前,你就会发现其实这道题目的答案非常简单,你只要把图钉倒出来,把盒子用图钉钉在墙上,把蜡烛黏在盒子上就可以解决这个问题。

蜡烛火柴盒图钉

这个实验证明,
第一,其实我们的大脑思考是非常缓慢的。
第二,思考是非常费力的,大脑是很难凭空想象,文字,图像,甚至是声音,并产生这个场景。再进行运算和解答,就难上加难了。

甚至有很多人,完全答不出来。
而且有一大部分人,听完我讲的,过几天几个月,几年以后也还是完全答不出来。

但是如果我们把大脑接上视觉系统,触觉系统。

因为视觉系统和触觉系统可以很快的回传结果到我们的大脑。
大脑其实是调用了其他区域可用的记忆资源,进行重新的编码运算。
大脑就更容易的得出答案

听完了以上,你会发现,既然思考对我们来说是非常费力的。
那人类平时是怎么做出不非功夫,日常生活中的各项决策呢?

这边我要给大家一个答案就是

所谓的习惯,其实就是我们做过某件事的记忆回路
习惯其实是大脑调用过去的记忆,让身体自动做出判断,

所以我们在这里要引出,我们今天要介绍的认知心理学的第二条

大多数人做的决策,其实并不是基于大脑所做的思考,而是调用过去记忆所组成的结果

大脑的决策其实是依照两种记忆混搭组成

一种是日常暂存用的工作记忆
一种是储存过去事实性知识的长期记忆

那什么是工作记忆呢?

工作记忆其实就是我们当下,在思考的工作区域,
以计算机来比喻的话,那就是计算机里面的内存,
他的特点是,
能记住的内容小,
资料存在的时间短,
关机或者断电就不见了

那什么是长期记忆呢?

长期记忆的就是过往,存储的事实性知识和经验,
用计算机来比喻的话,就是外存,外存就是外部存储的意思,
他的特点是,
他的内容非常的大,理论上是可以无限大的
资料存在时间长,可以永久存在的
而且可以长期的复用,你用的次数越多,记忆的就越牢靠,
对应计算机的理论,就是你可以把常用的内容可以cache到内存

其实我们在做决策的时候,很多时候其实是调用了长期记忆,长期记忆就是过去的经验或者还没有变化的科学事实,自动去完成的这样一个过程。

我们日常所谓的解题,或者思考,其实是复用了短期记忆和长期记忆组成的

比如177乘以288的这个例子


7乘以8是长期记忆,是我们小时候背的九九乘法表

如果我们要在脑袋里面计算 177乘以288 这就是工作记忆
突然之间你就会发现你的脑袋里面算不出来了,算不出来的原因就是,人类的工作记忆区,不够大,正常情况下只能存储 7正负2个结果而已

所以很多时候,人类对于复杂状况他是没有办法迅速决策的,但是如果他过去有经验的话,他就能迅速调取之前的经验,迅速做决策

所以事实上我们说穿了,人类大多数的时间,是在调用记忆在做决策的

第三部分,我要分享的原理是,人类是利用已知的事情理解新的实物

但理解其实是记忆,我们所认为的理解,其实不是一个调用大脑思考的一个过程,而是一种匹配记忆的过程,所以很多行业不喜欢招小白,事实上就是因为小白的经验过少,他缺乏相关的记忆,可以直接去匹配学习

注意

但是现在互联网社会的一个特点,并不是是你之前会多少,而是要看你的增量是多少,比如一个投资机构,投资给一个公司,他看中的不是你的公司今年能赚多少钱,而是他看你今年比去年增长率增加了多少,我们大学的教育,跟不上时代的发展,才催生了想我们这种培训的机构,就是因为学校的教材,和教育方法,和企业中实际要的不一样。学校的教育是给你讲各种知识点,然后期末给你一个不超出范围的一个考题,但实际工作中,往往老板给你的一个问题,没办法有现成的经验和

为什么一般人难以上手编程,而且对于学习编程感受到痛苦,是因为在学习编程的时候,编程里面大多数的知识,是跟之前所有的生活环境原理,几乎是不匹配的,所以很多人觉得,编程语言虽然是英文,甚至还有中文的编程语言,但是却无法理解,而大量调用大脑资源去匹配思考,结果确实都匹配不上,在没有有效回传的情况下,你就会造成意志力崩溃了

这根我们学习英文也是一样的,我们试图把中文和英文对照在一起记忆,因为中文是你熟悉的,而事实上英文的语法是你中文无法理解也从来没有见识过的。两个在很多时候,是没办法匹配的,就算能够匹配,也是有很多意外的状况的。所以你就会觉得学习英文非常非常的困难,也会感觉到很痛苦。

很多人学习英文和编程,都是被一些所谓枯燥的基础所吓倒的,但是很多时候,在教学的时候,老手会觉得基础是非常重要的不能跳过,而且要放在最前面讲,其实这种方法也是无可厚非的,但他们所不知道的,基础知识对于新手来讲根本就是没办法理解的,就算你讲的再好,讲的再细,他也没有办法理解的,也是没办法能够记住的

关于讲的好和讲的不好的问题

在培训的过程中,我经常能听到一些声音,这些声音怎么说,就是老师,我觉得XXX老师的视频讲的,比咱们XXX老师好,(或者说句不谦虚的话,老师我觉得你讲内容,比讲相同内容的XXX老师的视频好),其实这些话我是理解的,你之所以觉得这个老师讲得好,是不是你原本听过XXX老师的音频就听了一遍了,已经听懂了一部分内容,然后再听我的讲解,有更多的关联,然后记住了,然后就觉得我讲的好呢?其实大家可以反思思考一下。
其实我们同行培训的讲师,授课的内容,我们都是会通过各种手段,买回来学习的,我讲课的内容,我基本上都看过很多机构很多老师关于这个知识点的多种讲法,我所展现给大家面前的,是我觉得你这种方式能听的懂的讲法,但每个人基础不太一样,我的目标是浅显易懂,但个人能力有限,如果不是马老师给我们做课程的把关,我也很难说怎么讲一个知识点最恰当和合适,
我曾经做了一些实验,就是我把我讲课的内容,给我媳妇讲,因为她是没有太多编程经验的这么一个人,如果他能听懂,我就认为可以了,但也还是经过不断的打磨的。


好,我们回到正题

比如说我要引述一本书,这本书讲的是程序员界用于管理代码的一个工具叫做Git,他的初学指南上的描述,我们就来看以看Git是如何来运作的,这本书的初衷是让初学者很快的了解Git是什么,他是这样说的,我在这边给大家念一下

那么,简单地说,Git是一个什么样的系统?这第一章节是非常重要的。若读者了解Git的本质以及运作的基础,那么使用起来就会很轻松且有效率。在学习之前,试着忘记以前所知道的其他版本控制系统,如:Subversion以及Perforce。这将会帮助读者使用此工具时发生不必要的误会。Git存储资料以及运作他们的方式远异于其他系统,即使他们的使用者界面是很相似的。了解这些差异会帮助读者更准确的使用此工具。

Git与其他版本控制系统(包含Subversion以及其他相关的)的差别是如何处理资料的方式。一般来说,大部分其他系统记录资讯是一连串档案变动的内容,这些系统(CVS、Subversion、Perforce、Bazaar等等)存储一组基本的档案以及对应这些档案随时间递增的更动资料。

Git并不以此种方式存储资料。而是将其视为小型档案系统的一组快照(Snapshot)。每一次读者提交更新时、或者存储目前专案的状态到Git时。基本上他为当时的资料做一组快照并记录参考到该快照的参考点。为了讲究效率,只要档案没有变更,Git不会再存储该档案,而是记录到前一次相同档案的连结。

这就是一般程序员,或者一般培训讲师(比如说我),会写给新手,或者讲给新手的知识,你会觉得,这里面每个字都是中文的字,但就是连在一起不知道个所以然,那这本书的写作初衷,作者写了,他说若读者了解Git的本质以及运作的基础,那么使用起来就会很轻松且有效率。所以他花了很大的篇幅试图去解释Git是怎么样运作的,听起来逻辑是对啊,但效果你不觉得是很讽刺的吗?

他竭尽所能的要让你了解原理,但事实上你已经听的快睡着,当然在我在这里不是要讽刺他写作是什么水平(因为我的水平也不怎么样,毕竟人家已经出了书,我却还没有出书,不过不用急,不久之后会有的),我是因为需要学习这门技能的人大多是一无所知的编程小白,而这边教程里面提到的,绝大多数的名词,对于一般人来说也是无异议的,不只是一般人,甚至是一些初阶的程序员来说,这段他到底在说什么。

那么我们如果要写一篇人看的懂的教程,要让非计算机背景的读者,了解这个机制,我们要怎么做呢?

强势插入

说到这我又想起来一个段子,就是罗振宇,罗胖,我为什么喜欢他讲的故事,因为他讲的一些专业的知识,对于我这样的一个门外汉来说,我会认为我听懂了,虽然到最后还是什么都记不住,但我当时是以为我懂了的,而与之对应的还有另外一种情况,当一个人在某一领域不是很擅长的时候,他更可能认为自己是这方面的专家,这其实是有个专有名词的,叫做二阶不胜任
举两个例子,你就懂什么叫二阶不胜任了,比如有人会说:
“公务员,我懂的,无非是官官相互”,
“读书用处不大的,实践才出真知”
,也不知道这帮心理学家是怎么想的,反正我们老家那称这种人叫,心没数。他要是不弄出个二阶不胜任,不能显示他高人一等的地位。
这么说话有点狂,但如果我不狂,你就不信我牛逼,整因为我不牛逼,我在只能装作我很牛B,其实我不想的,是你们逼我这样的。

说到这我又想起来有一个段子,说一个男领导性侵以为下属,下属不从,他把人家胳膊给弄断了,当警察问他为什么要这么做的时候,他说我也不想的,是女下属逼他这么做的,如果当时他不反抗,就不会把人家的胳膊弄断

这在段在心理学上又是一个术语,行了,我不在这装B了,感兴趣的可以自行百度一下。

好吧,我承认我说的都是鸡汤,但是不是毒鸡汤只有你喝了才能知道,我唯一可以确定的一点,就是没有解药。

对吧,你们说我一个一天只会灌鸡汤,吹牛逼的人都能学会大数据,你们有什么好担心学不会的呢?毕竟我只关注灌鸡汤和吹牛逼,而你们关注的是学习计算机技术,你说是吧?

哈哈好就没这么认真的装逼了,好爽。

http://www.jianshu.com/p/89ecdf42dd31

我们言归正传


那么我们如果要写一篇人看的懂的教程,要让非计算机背景的读者,了解这个机制,我们要怎么做呢?

如果是我的话,我就会介绍Git就是写作代码的时候用的时光机

而且我们可以用一套图形的界面去操作这个时光机,任意回到希望回溯的时间点,我们可以任意的时间点,检视之前写的代码并且观看他的变化,所以,不仅很多开发团队在用,后来我发现很多写作团队,他也在用这套工具去实行协作。

比如,我组织了一个小组织,大家一起协作做一些教程出来,做教程的方式很简单,0基础的人也可以做,那我们协作的时候,也是想用这样的工具。但由于有学习成本,我们先用其他更简单的工具。

那么我换个方式讲,是不是瞬间可以理解这个工具是什么?
和用来解决什么问题的?
你看着当中的差异是什么?

这个差异,就想是我和马士兵老师之间关于讲课这个技能之间的差异。

我用时光机去比喻Git这个工具,是因为绝大多数的人曾经看过,我哪时候叫,机器猫,台湾叫小叮当,现在叫哆啦A梦,或者看过科幻电影,他能够理解时光机是什么,也可以知道时光机能带来的好处是什么,所以一旦想要回溯他的代码,他就像到听到这个概念以及工具以后,他就像要去接触和使用这个工具,以提升他开发的效率

甚至他可能在听完我讲这个例子时候,就已经产生兴趣,要去使用了。

等到他们理解了,这套工具可以帮他完成什么效果,他想要控制更多细节的时候,就会深入的去学习和使用,

你真的不应该花上一堆时间去仔细告诉小白,这里面的运作原理,这绝对是徒劳无功的

这个例子就是要去解释,一般人在学习编程时会遇到的坑,我们的话题扯的太远了,都快回不来了,总之,我是想让大家理解,让程序员说人话是有多么的难。

还记得我们这段表述的论点是什么吗?

就是人类只能用已知的事物去理解新的事物

在很多教学界里面,必提到的金科玉律。

人类的理解,其实是一段不断在旧有记忆上累加的这么一个过程。

第四部分,没有重复的练习,不可能精通任何脑力活

我们前面提到了人类的工作记忆,工作记忆区的容量非常的小,
如果你要做的意见事情,需要大量调动工作记忆区,那么很可能,这个人瞬间就决策瘫痪了。

因为新手和大神他们之间的差异处在于,大神已经把很多复杂的状况,变成直觉了,所以他瞬间就能进行判断和处理。

比如我们谈足球这个运动。

所谓我们讲的直觉,就是

一般人所谓的学习,是将新东西放在短期记忆里面,进行理解的联结

如果我们不进行反复的练习,就很难把他放到长期的记忆当中

我主张题海战术和填鸭式教育,很多同学会觉得很奇怪,我不向来都是,离经叛道的吗?怎么会推崇大学教育,或者反过来说,大学教育那么有用,我们应该学会了才对,而不是需要出来做培训啊

我们传统教育就是这样的教育方式啊,我们经历了9+3+4 16年的教育,有的人可能还更长,听到这种方式,就深恶痛绝的痛恨

所以你就对我说的这种通过不求甚解的,重复练习这样的方式不赞同,

甚至有些人太痛恨题海战术和填鸭式教育了,所以他立志,如果以后他教育别人的时候,一定要用理解型的教育

那我必须说这个结论看起来是正确的,但是事实上是错误,并且有毒的

如果让小朋友理解 7乘以8等于 56

你的手指头够用吗?

如何让中学生理解 E= MC^2

你发现这根本就做不到啊

因为小白脑袋里面根本就没有东西做联结,所以我们只能进行填鸭式教育,让这些内容,强制的存储在长期记忆区里面,当日后接触到更多的材料的时候,才能够将这些硬背下来的东西,安放到更正确的地方去。。

未完待续。。。。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 206,378评论 6 481
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 88,356评论 2 382
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 152,702评论 0 342
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 55,259评论 1 279
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 64,263评论 5 371
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 49,036评论 1 285
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 38,349评论 3 400
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,979评论 0 259
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 43,469评论 1 300
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,938评论 2 323
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 38,059评论 1 333
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,703评论 4 323
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 39,257评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 30,262评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,485评论 1 262
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 45,501评论 2 354
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,792评论 2 345

推荐阅读更多精彩内容