Seven stages of programming learning, seven stages of programming Learning

Source: Internet
Author: User

Seven stages of programming learning, seven stages of programming Learning

When learning programming, I will always encounter such difficulties. I have sorted out the problems and mentality analysis at each stage of programming learning. Hope to help programmers.

Stage 1: Opportunity

You are very happy. You have always wanted to learn this new content, such as a programming language, whether it is planning or environment-forcing. In short, you finally have this opportunity to learn.

Stage 1: no optimism

Google search-select one or two tutorials you are interested in, buy materials and books, and then start MOOC (large-scale online open tutorial ). The tutorial is very interesting, and even online REPL can make you play, and you think you are making progress. Of course, there are also troubles-Your fingers are not skilled, But you insist, don't give up, and are ready to enter your first project.

Stage 2: deep despair

You started to extend from "Hello, World". For example, you tried carefully to change the content to "Hola, Mundo", and then gained some courage, beginning to be reckless-as a result, error messages, stack tracking, and random behavior come together. Even if all the error messages and code that can work normally in the tutorial are left blank. You suddenly find that, even some seemingly stupid but benign nuances, will also lead to storms, let you go across the ship in the gutter, into a deep trap of despair. Even the simplest tasks make you suffer. You start to doubt yourself and doubt that you don't actually have the talent for programming.

Stage 1: lower the body

Slowly, through trials and wrong baptism, you start to accumulate knowledge in 1.1 drops by asking for help from colleagues, StackOverflow, and blogs. You begin to understand how to display data, how to communicate with databases, how to create interfaces, and how to override methods. Although you cannot really understand the working principles of any of the above, while constantly Mastering these magic spells and expanding the knowledge field, the completion of some specific and necessary tasks is becoming increasingly difficult. For some spells, you may be very comfortable with them. Even if you have some problems, you may be able to make them easy to complete. Debugging is a type of frustrating exercise. Whether it is because you feel that your goals have been achieved, you plan to put your time elsewhere, or you are looking forward to it because it is too difficult, or you have mastered your professional knowledge and made your own rational choices. In short, many people stop at this stage.

Stage 2: dawn

At this stage, you have saved enough pieces of information to find the connections between them. You start to be able to use your knowledge flexibly, instead of being as rigid as before. You start to have so-called intuition about some basic rules and begin to shift from rigid compliance to knowledge reception. This is also an unbalanced process-you may still be confused at the same time when you are interested in it-but you are confident that you can take it step by step and start enjoying it.

Stage 1: Professional

After a while, you have mastered the basic mode and begin to feel that programming is as easy and natural as eating. You can intuitively understand how things work, and easily mediate between architecture, coding, and debugging. Generally, you don't have to think about the problem, just as you go from home to the store to buy things-you know how to do it. If there are some new ways, you can also instantly weigh different options, and select an optimal route. At this point, the most difficult problem is the problem itself, rather than the operating system to support what you want it to do.

Stage 1: Achievements

You are now an expert with many years of experience. The time and energy you have invested have paid off. You write blog articles to help open-source projects and become recognized experts in the industry. This has become your identity and honor, and also your shackles. What you do must match the name of an expert. Suddenly one day, new things appeared. You know in your heart that this new thing is very good and will be very useful. It will be a trend in the future to help you easily solve problems that are not enough to be solved by existing tools. But at the same time, you clearly know the effort and time required to become an expert. You need to feel the shortcomings and setbacks again, ask for help from others, and so on. You 'd rather close your eyes, stick to the Conventions, and fold yourself together, as if the withered branches were slowly dying.

Recommended reading

Tianyi programming language ranking (May 2015)

What should I learn first?

15 most profitable programming languages in the U.S. market

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.