美文网首页
程序员们必须在工作中不断的学习成长

程序员们必须在工作中不断的学习成长

作者: Zer01 | 来源:发表于2019-04-30 10:13 被阅读0次

    IT 行业是一个变化非常快的行业,它需要我们持续去学习新的知识和技能。 但是,工作以后,我们经常会发现自己学习的东西很少了,倒不是没有时间去学习, 而是学习的效率太低了。久而久之,就演变成『一年的工作经验,重复用十年』。

    在9月初,我在新西兰的Kiwi PyCon上做了一个关于有效学习程序员的演讲。演讲有两部分:一是关于心态,一是关于我们可以使用的学习策略。

    在我去年加入Dropbox之前,我在纽约的一家叫RecurseCenter的公司工作了两年。RecurseCenter就像是程序员们的隐居之所。参与者可以花3个月的时间做最感兴趣的事情。所以人已经连续十年可能会编写Java RC像Clojure学习一门新语言,或刚毕业的人拥有计算机科学学位,可能会在学习web开发技能。这个项目几乎没有任何规则——没有deadlines,没有任务分配,没有培训。这是一个针对成年人的非结构化学习的实验。

    我作为一个促进者的角色是帮助人们充分利用他们在RC所拥有的那种令人困惑的自由。那些来自传统教育经历或传统工作的人往往不知道该怎么做。所以我会帮助他们设定目标,帮助他们充分利用这些经验。我们经常思考的一件事是如何让程序员获得最有效的学习经验。今天,我将谈谈如何成为一个有效的学习者的一些研究,以及我们作为程序员和工程师,如何将这些研究应用到我们的日常生活中。

    成长心态:Carol Dweck

    让我们谈谈有效学习的第一个关键。社会学家卡罗尔·德维克(Carol Dweck)做了大量有趣的研究,研究人们是如何看待智商的。她发现有两种不同的思维框架。第一种,她称之为固定心态,认为智商是一种固定的特质,人们几乎不能改变智商高底。另一种心态是成长心态。在成长的心态下,人们相信智商是可塑的,并且可以随着努力而提高。

    德韦克发现,一个人的智力理论——无论他们是否持有固定的或增长的思维方式——会显著影响他们选择任务的方式,他们应对挑战的方式,他们的认知表现,甚至是他们的诚实。我将从她在这里的工作中得到一些最有趣的结果。

    这些心态导致工作上的差异。

    第一个有趣的结果是,这种框架影响了人们如何看待努力。如果你有一个固定心态——你相信人聪明或他们不,他们不能改变,那么你也倾向于认为,如果你擅长某事,这对你来说应该很容易,如果有困难你比你必须不擅长它。这是一个固定心态的观点。拥有成长心态的人认为,你需要努力工作,并努力在某件事上做得更好。

    一些研究发现,有固定心态的人可能不愿意真正地努力,因为他们认为这意味着他们不擅长他们正在努力工作的东西。Dweck指出:“如果每次任务都需要努力,你的智力就会受到质疑。”

    “赞美适得其反”

    第二个有趣的结果可能是最有名的。德维克和她的合作者们发现,给学生细微的不同的表扬会对他们的表现产生很大的影响。

    在这项研究中,Dweck和她的合作者给了一个学生一系列的问题。在第一组问题之后,所有的学生都做得很好。然后,一半的学生被告知:“哇,你在这些问题上做得很好——你一定很聪明。”而另一个“哇,你在这些问题上做得很好——你一定非常努力地工作。”然后他们又遇到了第二套问题,难度更大,每个人都做得不好。然后他们得到了第三组问题,就像第一组一样,回到更简单的水平。

    在这里,他们在第一组学生(你的表现表明你很聪明)和第二组学生的成长心态(你的努力推动你的成功)创造了一个固定的心态。

    他们从中发现了很多有趣的东西。实验的第一个方面是,在第一个和第二个问题之间,他们问学生,他们是否愿意做一个更简单的练习,或者一个更困难的练习。(在实践中,每个人都得到了下一个更难的设置。)Dweck等人想看看得到不同类型表扬的学生之间是否有区别。果然,有90%的学生都称赞了自己的努力,选择了更困难的一组问题,而只有三分之一的学生因为智力而受到表扬。受到表扬的孩子们对挑战更感兴趣。

    他们研究的第二件事是学生在第三组问题上的表现。他们发现,那些因智力而受到表扬的学生在第三个问题上的表现要比第一组糟糕得多,但那些因努力而受到表扬的学生表现得稍好一些。获得智力表扬的学生在第二组问题上不能有效地恢复,而努力表扬的学生可能会反弹。

    在这之后,他们让学生给笔友写信,说“我们在学校做了这项研究,这是我得到的分数。”他们发现,几乎有一半的学生对自己的分数撒了谎,而且几乎没有人因为努力工作而受到表扬,这是不诚实的。

    因此,这里有三种含义:一种成长心态让学生更倾向于选择挑战而不是简单的事情,更有可能在挫折后坚持下去,更诚实地对待自己的表现,而学生则有固定的心态。

    这其中最吸引人的地方在于它对表扬的细微差别。被告知你很聪明,会导致所有这些试图保持你的聪明,只做一些简单的事情,你知道你可以表现良好,并隐藏你的糟糕表现。别人告诉你,你努力工作,努力保持工作努力的样子,最好的办法就是努力工作。

    应对困惑

    另一项研究调查了学生们在面对一段短暂的困惑时所发生的事情。德韦克和她的合作者设计了一门关于心理学的短期课程给小学生。这门课是一本关于心理学的小册子,后面跟着一个小测验。有些书里面有令人困惑的段落,有些则没有。令人困惑的部分不在测试中,所以学生可以自己选择是否他们可以忽略令人困惑的部分。研究人员想要看看学生们是否能够从这本小册子中完全被迷惑的情况中恢复过来。

    他们发现,拥有成长心态的学生在70%的时间里掌握了这些材料,而不管是否有令人困惑的段落。在有固定心态的学生中,如果他们阅读了没有令人困惑的文章的小册子,大约70%的学生掌握了材料。但是,那些遇到了令人困惑的段落的固定思维的学生,他们的掌握能力下降到了30%。有固定心态的学生在从困惑中恢复的时候很糟糕。

    “一个人怎样才能最好地描述那些最会模仿别人的人的本性呢?”这些人是我们想要成为的人,因为他们很好,还是他们是我们想要被喜欢的人?”

    我想写一段令人困惑的段落,因为这让我产生了共鸣。如果你已经开始使用一个新的工具,并使用这样的文档,请举手。大约100%的人举手。这是常有的事——你可以让领域专家为初学者编写文档,或者是过时的文档,或者其他一些问题。这对于程序员来说是一种非常重要的技能,能够克服这种混乱,并且能够成功地保留我们正在阅读的文档中的其他信息。

    程序员需要一个成长的心态。

    程序员需要一个成长的心态!对于程序员来说,关键的技能——比如应对困惑、从挫折中恢复、愿意接受新的挑战——都要容易得多,而且要有固定的心态。

    有人相信固定的心态吗?

    有时候,当人们听到这种固定心态的想法时,听起来就像一个稻草人。科技行业的人真的相信这一点吗?我认为完全固定的心态是一种普遍的信念。这里有几个例子。

    英雄崇拜

    我们看到的另一个例子是英雄崇拜。所以Julie Pagano在2014年的PyCon大会上做了一个关于impostor综合症的精彩演讲,她的一个建议是“杀死你的英雄”。不要把其他程序员放在台子上,不要说“那个人跟我太不一样了。如果你有编程英雄,你认为他们与你完全不同吗?你会变得更像你欣赏的那种人吗?如果你不这么认为,那就是一个固定心态的证据。

    你能改变一个固定的心态吗?是的

    希望你现在确信,成长的心态比固定的心态更适合你。所以下一个问题是:这是可塑的吗?你是否能以一种固定的心态,把它转变成一种成长的心态?答案是,是的,你绝对可以改变一个固定的思维模式。

    事实上,在Dweck的许多研究中,他们通过实验诱导了一种固定的或增长的心态,通常以非常微妙的方式。表扬学习就是一个例子:一句话的表扬改变了学生的行为。在其他的研究中,他们让学生读一段关于一个名人成功的段落,最后说“因为他们工作非常努力,”或者“因为他们的DNA是这样的”。“这绝对是可塑的。

    那么,你如何改变一个固定的心态呢?有时候,挑战主要在于确定固定的心态,一旦你听到自己说“我永远学不会物理”这句话已经很明显了,那可能不是真的。但有时很难根除这种固定心态。这里有一些标志可以用来识别固定的心态,这样你就可以将它们根除。

    你如何确定一个固定的心态?

    “我……”

    “有些人就是……”

    如果你在寻找思维定势的地方,你应该听这样的句子。比如“我从来都不擅长CSS”或者“我不是一个人”或者“有些程序员只是比其他人快。”任何以“我是……”开头的词都是候选人。“just”这个词经常出现。

    现在,很明显,你可以用“我是”来表达,这不是固定心态的标志。相反,这里的重点是,把像这样的句子当作是你自己的一面黄旗,来通知你,然后更仔细地审视你的心态。

    顺便提一下,“我不是一个人”这个例子是由研究支持的,Dweck和合作者做了一个关于交友和社交的研究,这项研究也在那里进行。

    你如何改变一个固定的心态?

    重塑表扬和成功

    好的,一旦你确定了一个固定的心态,你该如何去改变它呢?这里有四个策略。

    第一个是重塑赞美和成功。我的意思是,当你得到了错误的赞美,把它们转化成成长心态的赞美。所以如果有人说,“哇,这个项目很棒,你很聪明,”翻译成“是的,很棒,我在这个项目上非常努力。”“你不需要大声地把它弄出来!”但是,这种重构强化了你自己,你通过寻求挑战和努力来获得精通。

    你也可以用同样的方法来获得成功和成就。当某件事进展顺利时,不要想,“那当然很好,因为我很了不起。”相反地,“我在那个项目上使用了一个有效的策略!”我应该经常这么做。

    重新定义失败

    当然,这种动态的另一面也很有效。一个固定的或成长的心态的很大一部分是你如何应对失败。当你面对挫折或得不到你想要的东西时,你的自我对话是什么?如果你说,“也许我根本不适合这份工作,”把它当作一面红旗。相反,问问你从失败的尝试中学到了什么,或者你可以用什么策略来代替。这听起来很俗气,但确实有效。

    庆祝的挑战

    第三种改变固定心态的方法是庆祝挑战。当你不得不挣扎时,你该如何回应?试着明确的庆祝。当我在递归中心的时候,这是我一直坚持的。有人会坐在我旁边说:“(叹气)我想我有一个奇怪的Python bug,”然后我会说,“太棒了,我喜欢奇怪的Python bug !”“首先,这绝对是真的,如果你有一个奇怪的Python错误,让我们来讨论,但更重要的是,它强调参与者发现他们挣扎一项成就,这是有意的,这对他们来说是一件好事做的那一天。

    正如我提到的,在RC没有截止日期和任务,所以这种态度是非常自由的。我想说,“你可以花一天时间在瓶子里寻找这个奇怪的虫子,多么令人兴奋!”现在,在Dropbox上,我们有一个产品可以发货,还有最后期限和用户,我并不总是喜欢花一天时间在一个奇怪的bug上。因此,我同情世界上存在最后期限的现实。但是,如果我有一个bug要修复,我必须修复它,并且抱怨bug的存在不会帮助我更快地修复它。我认为即使是在一个截止日期迫近的世界里,你仍然可以运用这种态度。

    询问过程

    改变固定心态的最后一个策略是询问过程。像你们很多人一样,我和一些伟大的工程师一起工作。有时候,我会试着修复一个棘手的bug,并且不能,然后其中一个就能马上修复它。在这些情况下,我试着对他们如何做到这一点非常自律。特别是当我刚到Dropbox的时候,答案会很有启发性。有时候这些信息来自我不知道的来源。既然我已经在那里呆了更长时间,这通常是一种技术或策略上的差异,或者是为什么我的策略没有成功的细节。

    从长远来看,这是一个非常有用的策略,而不是说“噢,当然,那个人得到了错误,因为他们是一个巫师。”

    公众号:程序你好

    相关文章

      网友评论

          本文标题:程序员们必须在工作中不断的学习成长

          本文链接:https://www.haomeiwen.com/subject/sormnqtx.html