• 新手学习编程的最佳方式是什么?


    我觉得虽然现在社会上的许多资源都很不错,然而我却注意到,成功的学生,无论使用哪种资源,往往都会在以下三个方面,比其他人有着更好的表现。

    • 聚焦习惯而不是目标
    • 独自学习非常痛苦
    • 项目实践

    一、聚焦习惯而不是目标

    聚焦习惯而不是目标听起来似乎不合常理,但是请听我把话说完:这是一个有关平衡的问题。

    “(当你的胳膊快要冻僵的时候,)按摩你的胸口,你的胳膊自然会暖和起来。”

    如果你将精力放在每星期编程 20-30 个小时的习惯培养上,成为一名 Web 开发者的目标很快就可以实现。如果你将目标设定为在数月内成为一名 Web 开发者,在什么时候能可以达成目标以及距离目标还有多远等不确定性的压力之下,你反而可能会一无所获。

    聚焦于习惯而不是目标。按摩你的胸口,你的胳膊自然会暖和起来。

    因此,你现在应该做的是:在你的日程安排上,每天花15分钟时间用于编程。不要多于15分钟,每天只要15分钟就够了。如果你能在一星期之内坚持做下来而不找任何借口,请试着把时间延长到一天20分钟。

    不要试图通过每天一小时的编程来过度扩展自己的能力,编程就是一场 10000 小时的马拉松,因此我们应该将精力集中在培养习惯上。

    与其在一天内花费大量时间学习编程,不如每天花费少量时间,但是能够天天坚持,因为这样更有效。

    二、独自学习非常痛苦

    当我在学习 Web 开发时,在我的学习过程中,拥有一位导师和加入一个社区是两个最大的组成要素。

    1、拥有一位导师

    大学期间,我曾在一家小型创业公司工作。暑假期间,我与该公司的一位联合创始人一起工作,我在此期间学到的东西比我之前三年在大学学到的还要多。

    跟随一名经验丰富的专业人士一起工作,可以真正地加速你学习的速度,你会了解到他们是如何思考问题的。同时,也会发现自己的不足之处。这就是为什么师徒制通常成为学习一门新技艺默认的标准的一个原因吧,因为它非常有效。

    2、加入一个社区

    我加入了的两个社区,一个是我们学校的一个学生组织,另一个是一个面向黑客和创业者的大型在线社区。

    我没有从在线社区内学到任何有关对象和类的知识,但是我学到了一些别的东西。我知道了什么工作喜欢 JavaScript,我知道了 Python 程序员是编程领域的潮人等等。

    总之,我学会了如何说行话。当你和其他程序员一同工作的时候,这一点非常重要,也正因如此,才使你觉得自己就是一名程序员。

    三、项目实践

    在学习 Web 开发的第一年,我动手实现了以下项目:

    • 一个 Digg 的克隆版(来自书上的例子,我想现在它已经过时了)
    • 一个在线购物应用程序
    • 一个 GeekSquad-esque 应用程序(个人项目)
    • 一个实时在线课堂应用程序(个人项目)
    • 一个外语学习应用程序(课程项目)

    我认为构建真实项目之所以非常重要的原因有很多,就我而言,最重要的一个原因是它充满了乐趣。这恰恰是在传统教育中严重缺失的,也正因如此,它才成为了诸多原因中最重要的一项。

    四、要具有“小强”精神

    对于那些能坚持读到此处的读者们,我偷偷地增加了第四项内容。 Paul Graham(硅谷创业之父) 曾经对 Airbnb (爱彼迎)的创始人说过:

    “你们这些家伙是不会失败的,因为你们就像打不死的’小强’一样”

    在某一段时期内,你可能会有放弃学习编程的想法。就像任何具有同样价值的事情一样,学习编程真的很难,有时你会觉得自己真的很笨。

    这就是为什么第一项策略如此重要的原因,不要过度担心是否已经取得进步,或者需要花费多长时间达成目标。

    你要做的就是每周坚持10-30个小时的编程。就像执着的’小强’一样,你就不会失败。

  • 相关阅读:
    HDU
    HDU
    HDU
    【JZOJ4231】寻找神格【分块】
    【JZOJ4231】寻找神格【分块】
    【JZOJ4230】淬炼神体【数论,数学】【二分】
    【JZOJ4230】淬炼神体【数论,数学】【二分】
    【JZOJ4229】学习神技【数论,数学】
    【JZOJ4229】学习神技【数论,数学】
    【JZOJ3771】【NOI2015模拟8.15】小 Z 的烦恼【高精度】【数论】
  • 原文地址:https://www.cnblogs.com/qf-dd/p/10609533.html
Copyright © 2020-2023  润新知