Previous article on the public number of students to give me a message: Colombia, I am a sophomore student, I like Android, but I feel my logic is a bit slow, learning methods can not be clever, so, ask you have any suggestions? Or that I am not suitable to learn programming, college computer major!
In fact, not only this classmate, before a lot of people give me messages, said because of interest, choose programming, but also very hard, but also persist in learning, but feel that they do not have any progress, and even once doubted that they are not suitable for programming. There are work for a year or two of students to give me a message, said that I feel very hardship, and do a lot of projects, but always feel that they have been at the primary level, no progress ...
I believe the above is not a person, these people can you say they do not work hard? Not necessarily, but if you work hard and have perseverance, then I think it may be the problem of learning methods, so write a separate article today to talk about learning methods.
What kind of person is suitable for programming?
Before talking about learning methods, the most important thing is to ensure that your direction is right, because many times if you are in the wrong direction, no matter how hard you try, how to correct the way, it may be on the wrong road farther and farther, so the direction is very important.
Many people always suspect that they are not suitable for programming, so this problem I think is a priority to solve. Really not everyone is suitable for programming, I think the logical thinking ability is the most important ability of programming, and is usually a science and engineering people's logical thinking ability, especially high school mathematics, physics is also good people, this part of the people learn programming completely do not have to worry about not suitable. Conversely, if your logical thinking ability is poor, and the programming is not interested in, a pair of computers on the dizziness and so on, this part of the people may really choose the wrong direction.
As for their own computer is not a major difference, if it is a computer professional, you can only say that you are better than others, get started faster, but good grades in primary school, does not mean that after high school performance is good. How far you can go in the future depends on your ability to learn and enough to work hard enough.
Learning methods
In the case of making sure that the direction is right, or almost no deviation is too large, you work hard, and the effect may be the problem of learning methods.
I always think that there is no shortcut to learning, there are two: hard, adhere to! However, there are some learning methods can be consulted, suitable for your learning methods can help you improve learning efficiency, but also for you to adhere to better.
I believe we all have such an experience, in school when there are always a group of people, always feel every day in play, but the results are very good, and I am such a group of people. And there is always another part of people very hard, almost every day in reading study, but the results are still very general, even poor, you can say that he is low IQ? I do not think so, I think most people's IQ should be similar, there is no fundamental difference, so in the final analysis is probably the problem of learning methods!
- Develop your own learning patterns
My own early, high school performance is very good, but usually do not read a book, give people the feeling is to play every day, but the results are very good, however, I am not not reading, I just used to read books at night. Occasionally I found that I learned in the evening to learn to go in, high efficiency, so I trained this habit, and then put it to adhere to, and then formed their own learning laws, one night will take notes out to digest. In fact, most people are inert, so a lot of people like to watch chicken soup, after watching chicken soup feel full of energy, and then strive for a while, but not a few days later back to the essence, this I call it impulse learning, is not enough to continue.
So there was a message that let me send more chicken soup, chicken soup useful? Really useful, I self-study programming when I even actively find some chicken soup to motivate themselves, but can not solve the problem of persistence. I said in front of the study of two, efforts and perseverance, and strive to believe that a little bit of self-control can do, but insist is the hardest. and the training of their own learning laws in essence is to solve the problem of persistence, so, try to find suitable for their own study scene, you are accustomed to reading in the morning or reading in the evening, is the habit of learning in the classroom or in the dorm study, is used to reading books on the subway or the company work overtime reading.
In short, find the most suitable for their own learning scene, training into their own set of learning rules, the habit is enough to continue!
- Find a way to fit your own reality
When we study people read paper books, some people read e-books, some people watch the video, some people read the blog, some people look at official documents, some people look at the source code, and so on, these are different ways of learning, there is no distinction between high and low.
It is important to find a suitable learning method, but you must combine your own reality. I think very representative of an example is that some of the great God to share their learning experience is to see the source code, read English documents come over, and then some people copy this set of learning methods, however, even though the basic programming is not, even simple Chinese documents do not understand, learn the great God to see the source code, read English document is not in the nonsense Is the great God's method of learning useful? Of course it works, but it's not for you.
For most people reading is the most common way of learning, but is because the most common, the lowest threshold, so most people read self-learning programming stage level gap did not how to pull, but once the introduction, everyone found their own learning methods, this time the gap slowly began to reflect. English good, choose to see official documents, this is the most authoritative, more convincing than any book, blog, but not everyone can understand. 0 The foundation of the beginning may be a bit of reading can not understand, so some will be combined with video, to help their understanding, but once the level of advanced, and then see the video will feel very inefficient, a few minutes to see the article to understand the knowledge point, watch video to talk about half an hour. It is because you are in different stages, you know that there is the most suitable for your own learning method.
Therefore, the great God to share the learning method can not blindly to copy, to control their own actual scene, the starting point of high-level reading English documents or, source, the low starting point on the book combined with video, in short, to find the most suitable for your own method the most important!
We do one thing is always purposeful, such as school when learning is to get good grades, admitted to a good university, later as CEO, marry Formica beauty! Learning to program requires a purpose, no purpose, and you have no motivation.
Before someone asked me, said: Colombia, you work so hard, in the end for what? In fact, I want to say, sorry, I am vulgar, I try so hard is to make money!
Yes, I chose to teach myself that the purpose of programming was to make money, because I experienced the hardships of life before I realized how important money was. So I self-study programming no other so noble purpose, very simple and rude, but very clear, so I learn to be more than the other people have more motivation, the thought of studying later can be a monthly salary million, immediately full of morale.
So it's important to learn to have a purpose, you want to know what you're learning for, and if you haven't figured it out, then don't be too quick to learn, it's not the same as going to school, school is forced, we have to, but now you can have more options. Now of course I think, most of the readers learning programming purposes may be as vulgar as I, is to make money, if you are not, congratulations, you are not vulgar!
The purpose of learning is to make money, but money is a general direction, not specific enough, there is a specific small goal, and this goal is to see can be achieved.
If I set a goal for myself at the beginning of the monthly salary of 10w, I think I will be very frustrated, because no matter how hard I try, how to pay may not be achieved. So I initially set the goal is a monthly salary of 1w, that will be thinking every day when the monthly salary of 1w is good.
However, when I was really 1w a month, I realized that by my own efforts is really able to achieve their dreams, more confident, more efforts to drive. But the joy, I also set the next goal, is the monthly salary 1w5, see the market monthly salary 1w5 about what level, this level of development probably need to have what kind of skills, then go in this direction to continue efforts.
In this way, I step by step to achieve their own small goals, after reaching to set a small goal for themselves, it is so simple and direct effective!
- Practice and practice again
Programming is a much more important practice than theory, maybe you read a lot of books, lots of blogs, but far from being effective in doing a project yourself.
Compared to my age of information scarcity, now can be described as a time of explosion, a large number of technical articles every day to see, the digestion of information becomes very important. Before many people asked me, said that I want to update some of the technical articles, preferably a day, I do not have time and energy to keep up is a reason, step back to say that even if I have a lot of time and energy to every day more new technology articles, you really digest it? For technical articles, seeing and digesting is completely two concepts.
The technical articles you see every day are not purposeful, just see them, or you can collect them. But not much value, the next time you encounter the same problem you do not know how to solve, and if you are in the project, or have encountered problems, such as the need to use a custom View project, this time because of the project needs, then go to search engines to find answers, and then to learn, research, practice, This is the best way to digest information.
And I think that the practice before finding a job is generally divided into the following three phases:
1. To the stage of the Code of the book or video: This is the initial stage of learning programming, even if the full follow out of the book, but also more than you just see more effective, only to personally tap the code you can deepen the impression, to facilitate your deeper understanding;
2. Imitation: When you have a certain basic knowledge, but the lack of practical experience, in fact, the most confused at this time, I will point the foundation, but I do not know how to write the project at all, this stage I recommend you from imitation to start. Online a bunch of demo, from these demo start, combined with code, their own understanding, side understanding of the demo hit the code, until you can not see the code can be knocked out of their own so far. Perhaps from a small action, to a semi-finished demo, and then to a complete project of imitation, in the process of imitation you will gradually progress, and then to a real project to understand. So, I think imitation is the Enlightenment of project experience!
3. Practiced hand project: When you cross the stage of imitation, this time to think about yourself to do a project practiced hand, perhaps imitation of other people's project, but is completely self-built from 0, no longer need to rely on the existing code can toss out their own projects, at this stage will encounter various problems, believe me, Even before you know the skills, you will still encounter problems at this stage. But once you have experienced this stage, you will make great progress!
Generally after going through the above stage can consider looking for an internship or to find a formal job, in the work of different people progress speed will vary, some people in the work of continuous learning, experience, and actively strive for new opportunities, some people status quo, muddle through, put their eyes on the matter done on the line. This is in itself two attitudes, the work of doing their own things do feel OK there is no mistake, but if you only consider yourself as a working person, then you may always be a working!
Finally, a lot of people always feel that their progress is very slow, learning efficiency is very low, this is normal, most people are like you, including myself, have experienced the same stage as you, to apply the opinion game often say: when you meet the enemy, it means that you go the right way. What you need to do is to make sure that you are on the right track to find a way to learn, to follow your own pace, to keep on trying, and to keep going!
The original published in the public number Androiddeveloper,id:googdev, reproduced please be sure to indicate the source!
Talk about learning methods