“white book on brown wooden table” by Alexander Michl on Unsplash
近年来,很多人对学习代码产生了兴趣。 他们或者通过在线课程,或者通过线下见面会找到了自己的编程方式,或者只是单纯的想试一试。 像code.org、codecademy和freeCodeCamp这样的网站越来越受欢迎。网络上有大量的编码课程,YouTube上也有。 但编码并不容易。以下是我们在学习编码时都会面临的一些挑战。
1. 每天找到 "合适 "的时间来编码。
如果你是自己学习编码,你有可能在生活中还有其他责任。 你可能有一份兼职工作,也可能有一份全职工作,或者你可以是一个家庭父母。关键是,每个人在这生活中都很忙。那么,你怎么会有时间每天打码呢? 有些人可能会说 "嗯,如果你足够专注,你总能找到时间。" 的确如此。我同意这个观点。 那么问题就变成了: "你每天应该花多少时间来写代码?如果我每天只能抽出半个小时,那还算不算?" 这个问题只有你自己能回答。很难估计你每天应该打多少小时的代码。有些人建议保持短小精悍。15分钟就够了。 在另一边,我也听说有人通过每天编码9或10个小时,在一年左右的时间里进入了开发领域。如果你想要一些动力,你可以看看那个帖子。 底线是:只有你自己知道你每天能写多少代码,并且养成习惯,不至于焦头烂额。最后一部分真的很重要。 freeCodeCamp创始人Quincy Larson曾经在他的微博上说过。 "这不是关于你每天的进步,而是关于每天的进步。"
这是一个视频,讲述了一位在技术领域工作了几十年的资深开发者,讲述了程序员在工作时每天要做多少编程工作。 这不会是黄金标准,但它会让你知道,在每天学习代码的时候,如何给自己制定一个现实的,最重要的是可持续的计划。
2. 在 "进度不够好 "和 "被烧死 "之间找到平衡点。
对于我个人来说,我经常在这个问题上挣扎。 有的时候,我就是无法理解我读的书中的任何一个概念/代码片段。它只是没有沉入我的大脑。我会被烧坏,以至于我不得不让自己冷静下来,到阳台上深呼吸。 从那时候开始,我会不断提醒自己,不要过度劳累,以至于再也回不来了。 编程是不容易的。它需要你集中精力,尤其是在学习新东西的时候。它很耗费精神,有的时候你也想不通--为什么你的代码不能用,甚至为什么它能用。 我发现,每当我真正专注于当时正在处理的问题时,我的工作效率最高,但同时我又非常放松,享受整个过程。 这时,我。 发现一个我需要解决的问题 通过网上论坛找到了解决方案。 尝试了一堆不同的解决方法,只为看看哪种方法有效。 我彻底解决了这个问题。 为了应对我们学习的很多东西都是相当平凡而复杂的(数据结构和算法之类的),每当我在学习代码的时候,我就制定了这个50/50规则。 我用50%的时间去做难度较大的任务,学习基础知识、概念、算法之类的东西。另外50%的时间我在做自己的项目,我真正有激情的项目。这样,在我日常学习的时候,就会有一个平衡。 所以,说白了,你需要热爱你所做的事情。这就引出了下一点。
3. 热爱你所做的事情是在所有这些障碍中生存的唯一方法。
虽然听起来很老套,但有时候这根本就是真理。如果你爱你正在走的路,爱你正在做的工作,爱你要去的方向......你就不需要外界的承认。 这种满足感是无法借用或替代的,甚至更糟糕的是,无法伪造的。
4. 在投身于生活中的其他责任之后,继续回到编码工作中来。
现实情况是,在自学的时候,永远不会是你自己,在那里学习。 在生活中,我们都有各种需要投入的责任。你可能是一个丈夫,或者是一个妻子,或者是别人的父母。你需要照顾你的家人,或者你有一份工作需要去做。或者你是一名学生,需要完成你的文凭或学位。 在所有的职责都压在我们身上的情况下,我们哪来的时间来编写代码? 事实是,有时候你没有时间或者你根本就不能。有些日子,我跳过了编码。我最长的一次 "休息 "是两个月。 但在那之后,我又马上回到了编码工作中。而且我发现,我已经忘记了很多我学过的东西。当你拿起同一本书时,你根本不知道如何继续下去,这是很令人沮丧的。"天啊,我真的要把所有的章节重新读一遍,把所有的任务重新做一遍吗?" 这时候你就必须坚持,必须磨合。 你要告诉自己:"好吧,这第一个小时的学习可能看起来真的很慢,没有那么大的成效。但是没关系,我明天会通过学习更多的知识来弥补。" 没有办法用糖衣炮弹来形容,只能继续坚持,继续坚持。去编码论坛或Twitter上表达你的挫败感。但一旦你这样做了,马上回到编码工作中去。
5. 保持自己的动力,以任何方式。
自学和上学有很大不同。当你在编码的时候,你身边没有人。没有同学,没有社会交往,你找不到那个在隧道尽头等着你的 "盛大仪式"。大多数时候,你都是一个人在做。而大多数时候,你是孤独的。 所以你需要找到某种动力,让自己继续前进。 我经常查看这个子reddit(r/macsetups),因为那里有很多人都是开发者。而他们都在使用同样强大的硬件来创建他们想创建的软件。没有什么比这更有意义的了。 同时也要奖励自己,让它成为一种习惯。 可以是小事,也可以是大事。可以是一天结束时的一个热水澡,也可以是一杯冷饮。告诉自己,你做得很好。在学习代码的时候,经常需要这样做。把这张照片挂在你面前的墙上--因为你要相信有一天你可以成为坐在它面前的人。 帖子的图片
6. 不要陷入 "为学习而学习 "的谬误。去面试,去见面,去应聘。
有些时候,我们可以 说实话,这是我应该经常做的事情。去接触潜在的客户,哪怕是为家人和朋友免费建网站。 所以下次当你走进面试时,你可以展示你做过什么样的工作。这会给你的简历增加价值。第一步总是最难的。但无论如何你都要做。 以上都是你在成为开发者的道路上将要面对的挑战/情况。承认它们,用正确的态度面对它们--你所面对的这些障碍只会让你变得更强大,更优秀。 最后但并非最不重要的是,快乐的编码! 享受你正在构建的东西,无论是你的项目还是你自己的未来。