After training a few hundred people in coding I think I can answer this one.
In my experience many learners make one or more of the following mistakes:
- They underestimate how hard it is to learn to code （低估学习编程的难度）
- They underestimate how long it will take and how much they need to learn （低估学习需要花费的时间）
- They fail to prioritize their learning, especially in terms of how much time they will need per day （没有规划好每天的学习编码的时间）
- They don’t connect with a network of other learners （缺乏和其他学生的交流）
- They give up too soon （不能坚持，过早就放弃了）
Here are my suggested solutions for each mistake, in turn.
- Learning to code is hard. For many, it will be the most difficult academic challenge they’ve ever attempted. All learners should internalize that they WILL get stuck, they WILL feel frustrated, they WILL feel like they aren’t smart enough, they WILL need to ask for help. A lot. This process will repeat for many months. （学习编码是很难的，可能是你遇到的最难的学科。所有来学习的人要有心理准备，你会越到困难会沮丧，会感觉自己不够聪明，你需要请求别人的帮助。这个过程会持续几个月。）
- With four hours a day to train and practice, it will take at least one year for a new developer to become an employable junior developer. It may take longer. There is a LOT you have to learn, it’s not just basic syntax. You need to also learn git, databases, basic networking concepts, debugging, a suite of coding tools, a way to deploy your apps, and possibly many other ancillary technologies. This is particularly a thing in web development.（每天4小时的学习和实践，新手至少需要一年才能变成一个初级程序员，甚至更久。有太多的东西要学习，不仅仅是简单的语法。你需要学习git, databases, 基本网络概念，调试，编码工具，应用程序的发布，以及其它辅助类的技术。）
- Learning to code isn’t a thing you’re doing, it is THE thing you’re doing for the next year. Everyone has to know this. You have to prioritize it over friends, your favorite TV shows, sports, exercise, self-care time, etc. It requires sacrifice, especially in the beginning. Even family time needs to be sacrificed to an extent. I’m not saying don’t talk to your spouse or play with your kids, but you have to set up a schedule and stick to it. If that means leaving the house at the agreed upon times, then do it. Getting your spouse behind you while you do this is a must. Have the conversation and make a firm agreement to prioritize what you’re trying to do. It is in the nature of spouses to try to steal some of their time back from your coding. Stay strong and remind your loved one that while you still care for them deeply, you are doing this for your family and your future.（学习编程不是为了现在，是为了将来，一时半会是看不到成效的。需要你牺牲掉看电视、玩游戏、社交、运动、陪伴家人等时间。你需要安排好你的时间，也需要家人的支持，优先安排你的学习时间。）
- Don’t learn to code alone! Find a local meetup group for coders. If there isn’t one, start one. Also, find online groups like the one at Free Code Camp. Ask for help and offer it to others when they ask. This is critical. You need to start taking steps into the world of software development.（不要孤独的编码，本地找一个队伍，如果没有就建一个，也可以找线上的学习小组好比：Free Code Camp。大家互相帮助，这很重要。你需要逐步进入软件开发的世界。）
- Quitting is a guaranteed path to failure. Please see point #1, up above. When the coding gets hard the best answer is not to give up but to persevere. Tenacity is talent.（退出就意味着失败，请看第一条。总之，当编码变的困难时，最好的答案就是坚持下去，不要放弃。天才来自坚韧不拔）