preface

The IT industry is a rapidly changing industry, which requires us to continuously learn new knowledge and skills. However, after work, we often find ourselves learning very little, not because we have no time to learn, but because the efficiency of learning is too low. Over time, this translates into “one year of work experience, ten years of repetition”.

Of course, some people will say that they often work overtime, there is no time to study, this is just the appearance of time squeeze is always there. Do you think how much time you’ve wasted trying to be king? How much time has passed in order to brush today’s headlines?

In addition, many people advocate fragmented learning, but the efficiency of fragmented learning is very low for some things, such as mathematics.

#1 Some bad study habits

1.1 Passive rereading

It’s common for new programmers to buy a book like “C++ Primer” and “Javascript Primer” (recommended by a colleague) when learning something new. Such a book, usually between 700 and 1,400 pages long, can take months or even more than half a year to complete on an uninformative basis. Even a seasoned C++ programmer reading a book like “the definitive guide to Javascript” is unlikely to be able to understand it after just reading it once, let alone a novice. At this point, many people will choose to read multiple times. Some people read from the beginning over and over again, while others read only the chapters they didn’t understand.

That’s what I did when I was in college. I read a lot of C++ books, but I didn’t write much C++ code myself, nor did I do a large C++ project. Read a lot of books, in fact, are only a little knowledge, efficiency is very low. It’s even worse when you’re working because you don’t have time to do it.

1.2 Likes to highlight books

Many people prefer paper books because they feel good when reading, and they can use colored pens to highlight favorite sentences and key paragraphs. It doesn’t do much good except to give yourself the illusion that “I’ve highlighted everything in the book, so I’ve got it”. I like to read PDFS on my computer now, so I can write code while reading them.

When reading a book, there is also a mistake, is the brain passively following the author’s ideas, if it is a classic book, you will always be shocked by the author’s insight, a kind of “my heart” feeling. If the author’s writing is boring, you may throw it away after a few pages. When you read a book, you should have self-awareness in your mind. You should feel that you are talking to the author. You can not absorb the author’s point of view completely.

Also, I’m not saying that highlighting is bad, just that it’s not as efficient as you might think. Highlighting is a bit like collecting materials and web links. You’ll get a sense of satisfaction after you’ve collected a bunch of PDFS and video tutorials, but it doesn’t mean you’ve actually learned anything.

1.3 The code examples in the book think they understand, never start programming

This is a big no-no for beginners in programming. Until you write it, until you fight the compiler and the development environment, you’ll never know what the hell is going on in software development.

1.4 delay

This is the biggest problem and the reason why many people don’t study. There’s only one solution, do it now! Once you start doing it, your brain won’t reject it. No matter how perfect your plan is, no matter how classic the book you choose, no matter how high the video you choose, if you don’t watch, learn, and practice right away, you’ll never be able to stay in the dream stage. The best example of successful learning is the best example of successful overcoming procrastination.

1.5 Learn anything except writing “Hello World”

What does this mean? It’s not that you’re really only good at writing “Hello World,” but it’s that you need to get out of your comfort zone and try something you don’t know, something you’re not capable of doing.

1.6 Stay up every day to play Kings and LOL, seriously lack of sleep

Practice has proved that lack of sleep, nothing can be done, just want to sleep. Some people say I can’t sleep until that hour, but I have a trick. Take a Kindle, pick up an English book, read it in bed for half an hour and fall asleep. Although the effect of reading may not be good, but hypnosis is also very good.

1.7 Do not get clear about vague problems in work and stay in programming for Google

Encountered problems, without thinking about “Baidu” and “Google”, although now 80% of the problems can find a solution, but this is not much good for their own. After finding a solution, take a few minutes to explore the root of the problem. Look for background information so you can draw parallels the next time you encounter the same type of problem.

1.8 Read a book for a few minutes, type a few lines of code and then browse Zhihu and Wechat moments

Do not focus on things, attention can not concentrate, this is also learning taboo. Using the Pomodoro technique, you can dramatically increase your productivity by giving yourself periods of time to focus on something.

#2 Some good study habits

2.1 Instead of reading over and over again, review often

Instead of reading the same book over and over again and writing the same “Hello World,” consciously review the books you have read and the knowledge you have learned. Just think about what you learned each night as you get into bed. Did you get any better today?

2.2 Practice, code, and learn from your mistakes

Read technical books to write more code in the book, even in the early stages of the book typing is not a problem. Carefully complete the exercises left in the book, and do not look at the answers until you have done your best. Don’t be afraid to make mistakes. Every mistake is an opportunity for improvement. Constantly testing yourself is the best way to learn, whether it’s “deliberate practice” or the “10,000-hour rule,” which requires us to reinforce what we’ve learned through constant practice in order to become masters.

2.3 Summarize more solutions to problems, write more reusable code, and refuse to copy and paste

Every day, summarize the solutions to problems encountered at work. Think about why you did it, what caused the BUG, and what the root cause of the BUG is. Was it your own logic, carelessness, or a complex framework? When doing requirements, try to avoid copy and paste, do not let the code inside the duplicate code. Don ‘t Repeat Yourself! Don ‘t Repeat Yourself! Don ‘t Repeat Yourself! “Important things three times!”

2.4 For what you want to learn, make a plan and study at a regular pace

I am a person who loves learning very much, but sometimes I still feel that learning is not efficient enough. Often due to some emergencies, the original learning plan is disrupted, resulting in a reduction in learning effect. Because learning a thing is the most afraid of fishing for three days, if I can continue to learn a thing, I can learn it well. At this time, I have to choose the best study time according to my own situation, during which I can not be disturbed and maintain high concentration. Like getting up at 6.30 every morning to read for an hour.

2.5 Try different ways to solve a problem

When faced with a problem for which there is no obvious solution, you may struggle to come up with a solution, but it is important to remember that the solution is not necessarily optimal, and there may well be a better way. It just takes you to step back, change your mind, or discuss it with your colleagues. This is why I love it when people Review my code, because they can see the flaws in my code. In addition, sometimes “micro-innovations” to existing solutions can make ordinary solutions extraordinary.

Also, accustomed to object orientation, why not try functional programming? Learning a new programming language with a different paradigm every year can greatly expand your horizons and give you different ways to approach problems.

2.6 Pay attention to combination of work and rest

Get more exercise and go outdoors. Exercise can improve your memory and sometimes inspire. If your health is not good, such as bad cervical spine, you just want to ge You lie down after work, because your instinct tells you, I can’t write code any more, will die… To be a great god, good health is a prerequisite. Some people become a god at 30, I’m not qualified, I can be a god at 35. Don’t break your body at 30 and then switch careers at 35, forever losing the chance to grow up to be a god.

2.7 Explain your knowledge and discuss it with others

Writing more blogs and sharing more of what you have learned and thought is also very beneficial to learners. By explaining what you have learned in language that others can understand, you are in itself demanding that you fully understand the knowledge. In addition, many people often sigh “AFTER discussing with you, I immediately become thinking”, which is actually the function of communication.

2.8 Keep learning focused

A lot of knowledge is difficult to learn well without enough concentration and enough time. It is especially important to keep concentration in study. Because your brain is in focus mode, your neurons are more active, and it’s easier to move from short-term to long-term memory. What’s more, your problem solving skills will improve under intense focus, and things that seem complicated may become less so under focus.

2.9 Find your weak points and make up for them

It is relatively easy to find and find your shortcomings, but it is very difficult to make up for them. Because people are always afraid of difficulties. Procrastination comes from your brain’s instinct to do things that make you produce more dopamine. If your English is not good, you must make up your mind to conquer it. If you can’t do math, you have to work hard to master math. Making up for shortcomings is like crossing the river. The sooner you cross the river, the faster you ascend to immortality.