如何避免陷入教程地狱? - josh

21-11-07 banq

人们常说,互联网使教育民主化:人类知识的总和只是谷歌搜索!然而,获得信息只是故事的一半;您还需要能够将原始信息转化为可用的技能。

对于我们中的很多人来说,者两者之间的差距可能会导致像教程地狱:在一个接一个的教程中陷入困境,却从未感觉自己取得了实质性的进步。

何有效学习非常重要,尤其是作为软件开发人员;学习新事物实际上是整个演出!如果你能学会快速掌握新的语言/框架/工具,你就能比普通开发人员更有效率。这是一种超能力。

在这篇博文中,我将分享我在学习中学到的东西,并向您展示我如何掌握新技能 lickety-split!

 

两种学习Learn

从广义上讲,学习分为两类:

  1. 有指导:阅读教程、参加课程、观看 YouTube 视频。您遵循指南的任何地方。
  2. 无指导:从头开始创建自己的项目,扩展教程,在文档中查找内容。任何您没有遵循指南的地方。

如果您只遵循有指导的学习,您将陷入教程地狱。您不会培养作为开发人员取得成功所需的解决问题的技能。当您尝试构建自己的项目时,您将不知道从哪里开始。你会觉得你花了很多时间练习,却没有培养任何切实的、实用的技能。

另一方面,如果您完全专注于无指导的学习,则需要时间很长。如果没有经验丰富的指导,您将需要重新发明每一个轮子,花费数天或数周的时间来解决已经解决的问题。这是一条漫长而令人沮丧的道路。在最坏的情况下,你可能会完全退出,确信(错误地!)你只是不够聪明,无法处理这些事情。

 

故意犯错

如果你和我一样,你不喜欢犯错。你希望一切都完美无缺。

这种心态通常对生活很有帮助,在其他领域也很有帮助。如果您是一名汽车修理工,错误可能会导致零件损失数百美元。如果你是一名牙医,一个错误可能会毁了某人的笑容。

但是,在软件开发中,错误是免费的!如果我们犯了错误,我们可以返回编辑器,更改代码,然后重试。我们甚至有有用的错误消息,可以(有时)为我们指明正确的方向。这是一种令人难以置信的奢侈,而且我们还没有充分利用。

当我学习教程时,我喜欢玩代码。不要逐字复制/粘贴提供的代码,而是尝试对其进行试验:如果省略其中一行会发生什么?或者如果您更改某些值?

我试着表现得像个科学家。如果我对这段代码应该如何工作有一个假设,我会通过更改代码来测试该假设,并查看它是否以我期望的方式中断。当我发现我的假设有缺陷时,我可能会绕过教程并在谷歌上做一些研究。或者,如果兔子洞似乎太深,我可能会将其添加到“稍后要探索的事物”列表中。

这个过程可以帮助我们避免跟随自动驾驶教程、复制/粘贴代码而没有真正理解它的作用或我们为什么这样做的险恶节奏。

学习是一个主动的过程。戳戳代码将帮助我们为正在发生的事情建立一个心理模型。

 

3
猜你喜欢