在学习编码时玩一场漫长的游戏

2020-10-13 19:56:30

学习编程可能是很残酷的。你不知道你是否学到了正确的东西,而且似乎有太多的内容要学。我们中的大多数人没有时间花几年时间来确定编程基础知识。

很有可能,您关心的是学习如何编码需要多长时间。你会感受到这种压力,要求你在尽可能短的时间内尽可能多地学习。你想摆脱你目前的角色,或者说你目前的角色缺失,并最终找到一份能给你编程带来报酬的工作。

有抱负的程序员倾向于采取这两种学习方法中的一种。第一种方法是尽可能快地学习语法。使用这种方法的人复制并粘贴他们完成项目的方式,并快速浏览课程和教程。不幸的是,许多人以这种方式耗尽了学习,最终无法将他们学到的东西应用到现实世界的问题中。

第二种学习方法首先强调理解。使用这种方法的人在学习如何编程的过程中玩着“长期游戏”,并不急于学习每一点语法。他们以有条不紊的速度学习,并确保在进入下一步之前理解每个编程基础。

在这篇文章中,我将看看这两个学习小组,并分析每个小组的优缺点。在这篇文章的最后,我希望告诉你为什么选择玩“长期游戏”来学习如何编程是更快、更有效的学习方法。

学习如何编程的最好的部分之一是,有大量的资源可以帮助您一步一个脚印。互联网上充斥着免费的在线课程、视频教程和社区,这些人随时准备帮助你指引正确的方向。希望以尽可能高效的方式利用这些资源是很自然的。

学习快速编码是有好处的。您接触到了大量的编程概念,并且感觉到在很短的时间内取得了很大的进步。有了这么多的在线资源,你可以在一天内完成几个教程和项目。最大的好处可能是你可以更快地开始申请工作,然后获得工作机会。

当我第一次开始学习如何编程时,我把完成两门Python初学者课程和完成三个不同的全栈开发项目作为我一生的使命。我在几个月内从打印“Hello World”到编写函数、类和寄存器文件。我觉得我在找工作的路上学到了很多,学得很好。

然而,我很快意识到我必须放慢速度。我开始面试编程角色,但每次技术面试都不及格。当面试没有成功时,我试着参加了W3School的Python测验,结果惨败。现实是,我满足于“完成”课程和教程的短视快乐。

许多有抱负的程序员都落入了我刚才描述的同一个陷阱。他们在不理解代码的情况下复制和粘贴代码,或者不加思索地“完成”课程和教程。如果你能理解并应用你所学的东西,那么一定要保持“快速学习”。如果你不能应用你所学的东西,那么我建议你放慢脚步。通过尝试解决学习环境之外的问题,开始优先考虑理解和测试自己。如果您的课程或教程正在指导您如何编写for循环,请尝试使用不同的数字或命名约定编写另一个循环。

快速学习编程会让你接触到大量不同的概念,你甚至可以更快地获得面试和工作机会。但是不要以不理解你学到的东西为代价来“学得快”。当你参加技术面试时,你会被问到一些问题,测试你的理解能力,而不仅仅是你反胃语法的能力。如果你现在把理解放在首位,你就会成功地解决面试问题,并向面试官展示你已经为这份工作做好了准备。

如果您想要在编程之旅中取得真正、持久的进步,那么在学习如何编码时,您应该抱着一种“长期博弈”的心态。这可能意味着理解一个编程概念需要更长的时间,而不是进入下一个概念。你可能不像那些“学得快”的人那样快去参加面试,但你在回答技术性面试问题上比那些只是简单地反胃语法的人有更好的机会。

最好的程序员抱着一种“长期游戏”的心态。他们并不急于记住每一点语法,而是专注于真正的、可持续的进步。他们知道每个编程概念都建立在另一个概念的基础上,直到他们理解了当前的概念,他们才会转向另一个概念。

当我在学习如何编程时,我一直在寻找一个神奇的起点,在那里我可以成为一名合法的程序员。我急于达到自我设定的基准,因为我觉得我需要学习如何编写代码,并尽快找到一份工作。这种合法性的感觉从来不是通过疯狂地完成课程或背诵语法来实现的。相反,当我开始接受成为一名程序员的“长期游戏”时,我开始感到一种正当感。我开始专注于理解我所学到的东西,并将我的知识应用于现实世界的问题。像递归和数据结构这样的概念更有意义,因为我花了额外的时间试图理解控制流和计算机内存。

如果你承诺终身学习,为什么不现在就开始呢?开始构建坚实的编程基础。每个概念都是在最后一个概念的基础上发展起来的,你会很高兴在进入下一个概念之前花了额外的时间来充分理解一个概念。

其他“学得快”的人参加面试的速度可能比你快,但他们在技术面试和获得工作机会上的胜算不会像你那么高。您将花费额外的时间来构建您的编程基础,并且您将能够将您所学到的知识应用于学习上下文之外的问题。

所以,是的,把重点放在理解你面前的概念上,不要担心匆忙完成这个过程。致力于一生的成长,拥抱学习如何编程的“长期游戏”。

标签:学习编码