海军陆战队原则与编程
海军陆战队原则说:如果你找到身体条件合适的男男女女,通过正确的培训和训练,你几乎可以把他们中的任何一个变成独一无二的战士。编程也是一样的技能,就像弹吉他、游泳或骑自行车一样。人们不是天生就是自行车手的。

有很多聪明且有能力的人,他们的工作是程序员的两倍,但收入却是四倍。也许,他们只是还没有找到自己真正适合的岗位?
为什么选择编程?
在教会别人编程之前,最好先弄清楚这能给他们带来什么好处。
1. 简单且有趣的工作
编程是一份简单又有趣的工作。创造空间很大。许多初学者一开始可能难以相信自己现在做的事情是自己喜欢的,而且还能拿钱。慢慢地,他们会习惯的。
2. 薪水不错
看到有能力的专家经过五年工作后开始买车或买房,这感觉真不错。
3. 灵活的工作时间
严格的工作时间很令人不爽。每个在高峰期堵车,或者因为迟到五分钟被罚的人都能证明这个。那工作时间可以弹性安排,比如早上11点到岗,下午5点下班?你会说,这是梦想?对大多数程序员来说,这就是现实。只要完成工作,没有人会说你什么。在很多公司,你甚至可以不用到公司,远程工作。总能商量出办法。
4. 职业发展
几乎在任何组织里,要想拿到有声望的职位和高薪,都得升职。程序员只要保持专业水平就行了。你不用再学习从程序员转管理者,或者争夺领导职位。只要专业成长就可以。五到十年的经验,程序员的薪水都很丰厚。
5. 高国际流动性
全球最赚钱的三大职业:律师、外科医生/医生和程序员。律师在国外工作很难:法律不同,判例法不同。医生需要学新语言,适应不同的医疗标准,还要重新考试。程序员不用学新东西。语言一样,标准一样。客户也常常一样。
6. 行业最高薪资

这是行业里最高的薪资之一。尤其适合初学者。
不能只看书就成为程序员。这里至少需要500小时的实践。就像拳击一样。不能只看比赛录像就成为职业选手。你得在训练场上花费长时间的努力(所以在CodeGym里有很多实践任务)。
所有关于10小时学会编程的建议,都等于建议你用10小时学会拳击。然后上擂台!别这么做。
有时候,论坛上新手问:怎么成为程序员?有人会说:自己想点任务,然后完成它们。这样不行。因为人不可能自己想出超出自己知识范围的任务。你要么知道,要么不知道。
只有对主题掌握得很好的人,才能为你设计一系列任务,每个都能教你新东西,而且不用花一周时间搞懂。其实,我们就是这么做的。
创新的学习方法
在CodeGym的学习方式和大学不一样。你很快就会发现。它更有效率。
在大学,你可能是这样学习的:长时间的讲座和巩固的实践。这种方法旨在让你掌握广泛的知识。但你的实际技能往往不怎么样。说实话,你几乎学不到什么真正的技能。
这里的方法不同。理论是知识,而知识是对问题的答案。所以,先提出问题——一些用你当前知识难以解决的实践任务,然后给出答案(理论),让你更容易解决问题。
新内容分三个阶段:
- 认识(最少的理论或几个实践任务)。
- 核心知识(你必须完全理解内容)。
- 细节和工作中的难点(填补空白)。
这样,你会遇到同一主题至少三次。更别说,所有内容都紧密相关,不可能只讲一部分而不提其他部分。
有些学生还会抱怨任务:说我们还没学过这些。这其实是个提醒:用你现有的知识,怎么解决这些任务?你花一两个小时搞定它们,之后会很高兴遇到新的思路或漂亮的解决方案。
而且,现实工作中也是这样:先接到任务,然后找解决方案所需的知识。现实就是这样。越早适应这种方式越好。
GO TO FULL VERSION