A,preface

For those who have just learned programming or who have learned programming, it is hard to avoid the idea that they should not take notes. Is to do a good job? Or is it better to practice a few times? I will share my personal thoughts with you below, hoping to provide a little help to you who are confused

Second,The problem

1. Is it necessary to take notes when learning programming?

2. What should I remember?

3. How to take notes efficiently?

Three,The body of the

Q: Is it necessary to take notes when learning programming?

Answer: very affirmation, must do!

  1. As a software developer, you can’t go through your career with only one programming language or skill
  2. When you’re learning only one programming language, it doesn’t matter whether you take notes or not. For example, when you’re learning C, you find that you can remember everything and use it
  3. However, when you further learn C++, Java, JavaWeb, Oracle, MySQL, Python, Linux, etc., you will find that the more you accumulate knowledge, the higher the complexity will be. At this time, if you do not take notes, the learned knowledge will soon be forgotten and mixed up. So the next study will not be easy
  4. So make sure you take notes, so a lot of people say, take notes? Remember not necessarily read! So why do it? In fact, there is no right or wrong to say, if you do not take notes and look at the notes, in most cases, you can only say that you do not learn enough or you repeated every day to do a certain part of the skills, exercise is not high, so notes are not meaningful. Taking notes doesn’t mean you’re going over every point like you did in high school. Taking notes means you’re going to focus on them, and you’re going to maximize your learning efficiency.

3.1 q:What should I remember?

Answer: There are “three notes” and “three no notes”.

3.1.1 three

Involves software installation and configuration

  1. Software installation and configuration here is not a foolproof installation of software, the next step is OK software, but need to involve the configuration of the environment and other software, such as Eclipse, MyEclipse, Tomcat, etc., these software configuration needs to configure environment variables, There are many configuration such as Tomcat configuration virtual path, modify the port number and so on, write down the configuration process, idle have nothing to do when forget to review, have to consolidate to improve
  2. If you don’t take configuration notes, trust me, you’ll go crazy when you learn how to build Linux servers and big data development environments like Hadoop.

Involves the project actual combat skills to remember

  1. When you are working on a project, there are a lot of issues, such as developing Web pages in Java Web, you will cover how to generate captcha, how to prevent SQL injection, how to avoid 404, how to control Servlet jump, how to control hidden domain submit additional information through JS
  2. Write down these skills and give yourself an environment to brush up on. How good you are at 13 depends on how good your skills are at 13. You can’t remember all of them
  3. How many people can build an SSH or SSM environment by hand without using documentation or an IDE without having to look at notes and documentation?

When it comes to errors, remember!

  1. This is the most important point, even if the above two you do not want to remember, but the error problem must remember!
  2. Why is that? If you make a mistake in programming and you don’t write it down, you’re likely to suffer from the same mistake a thousand times. Isn’t that fun?
  3. Here’s a quick example
    • Today you write a division using BigDecimal in Java, but you find an exception. You wonder why the even number division works but the odd number division is wrong. The reason is that the large number of odd number division will cause a repeating decimal problem, and you need to specify the decimal place to solve it
    • For example, if you set up a Hadoop environment on your PC and it tells you that namenode enters safe mode, it will not start. There are many ways to turn off safe mode on the Internet, but you realize that you are running out of space
    • When writing Web configuration Struts, it prompts you that log4j is not available, etc
  4. And so on, it’s ok to remember one problem, it’s ok to remember ten, but when you have hundreds of thousands I don’t think you can remember every solution!

3.1.2 sometimes remember

Don’t remember some knowledge points on the book (except configuration, actual combat skills and error prone points)

  1. By book, I mean you buy a physical book like Pythonxxxxx. I don’t remember all the things in the book. I need to write everything down!
  2. Idea is very good, but out the necessary, so to speak, 99% have electronic common programming books, I believe the book to write to you is much better than you remember, so people like themselves to buy e-books in the phone book, take the bus at a loose end to review your take out when the book already write very detailed, and there are electronic version to you, Why go and memorize everything in the book again?
  3. You can quickly find the knowledge you need in an e-book

    I like the saying, “If you like a book, you can read it the second time.”

  4. Programming books, unless you have a photographic memory, otherwise you must not remember! So you will go back to look at the second or even more times, this time the structure of the book and the distribution of knowledge you are very clear, this time you go to read an e-book, you can easily locate the need to consolidate the place, I believe the effect will be very good! But that doesn’t mean you don’t remember anything, if you look at it the second time and the third time and you don’t understand it that’s what you need to remember, right

There is already a perfect reference manual on the Internet

  1. There are also some knowledge, such as HTML elements, which are not listed in the book, but websites such as W3cschool have summarized it well for you, which is very convenient for you to find. There is also an offline manual. What’s the need to remember these things?
  2. Why take the time to do better than others? Isn’t it? And instead of spending time trying to remember something that doesn’t make sense, take the time to save the manual offline, put it on your own web disk, etc., it’s easy to find, don’t be a waste of time!

Don’t remember when you’re reading

  1. Many people study very efficiently, many people study very inefficiently, why? Mostly because of your level of commitment!
  2. For example, others can understand this knowledge in a minute, but you need three minutes, why?
  3. Because the other person is 100% invested in this minute, and you are only 30% invested in each minute of the three minutes, which adds up to 90%!
  4. So don’t take notes when you’re reading, concentrate on understanding the knowledge and code, and maximize your focus
  5. If you take notes while reading, when your mind jumps from learning to taking notes, it will seriously disrupt your study efficiency! Do not recommend reading while remember!
  6. If you need to remember something, make a mark and come back later. Hope to do one thing at a time!

3.2 q:How to take notes efficiently?

A: As a person who learn computer, if you say you use a notebook (paper) to remember, I think or don’t say you are learning computer, a bit can’t afford to lose people (personal view, don’t like can ignore), if you now notebook notes half of this, I want you to check XXX knowledge point you want to check how long? Or CTRL +F on the computer and it takes a few seconds? Taking notes must be done professionally, such as using Youdao Cloud notes, Evernote or even building an environment and typing a catalog in Word, which is dozens of times more efficient than using a notebook! So we must use software to remember, can be multi-terminal synchronization, computer on the phone will be remembered to complete synchronization, to see on the open can. And project and work encountered problems open notes CTRL +F immediately can find their own needs!

Secondly, we must sum up, especially important, will not sum up just blind learning, why can others draw inferno? Because other people are good at summarizing. Summary is not to write down each knowledge point, but a section or a chapter of the knowledge point soft into a refined note, will learn their knowledge combing, extract the essence

The most important thing is to learn to solve problems independently! This means that when you encounter a problem, you should first look at the error information and see if you can solve it. If you can’t, you should paste the error information to Baidu and see how others solve it. When these mistakes are solved, you should write down the problem. Don’t ask others every time you make a mistake. You will never learn to solve a problem on your own. Only when you can’t find a solution, you can grow and improve by asking them for advice

Iv. Additional mention

  1. As a developer, I want to take notes more often using MarkDown
  2. Regular text notes take some time to compose, and Markdown helps us do that
  3. There are many software programs for taking notes, but the following two are currently in use

Sparrow: professional document knowledge base, markdown support, wechat and Alipay small program side, convenient synchronization; Many functions, you can try

Typora: One of the best software to support Markdown, the disadvantage is that it does not support synchronization, but can integrate PicGo+OSS to build their own storage server

  1. Of course, there are many optional software such as Youdao Cloud Note, Evernote, Brain Map, Word and so on, all of which ultimately serve the same purpose, which one is based on your preference
  2. And getting into the habit of sharing, such as blogging, is one way to create your own business card. Learning is very OK, sharing out is rare