Get answers and suggestions for various questions from here

Technical article reading posture


Reading technical articles can be said to be one of the daily routines of our programmers. Peak is also reading quantitatively every day. Close-up of a small article to share the experience, introduce the past few years, some efforts and achievements in correcting reading habits, may help some friends, save a little reading time, improve a little learning efficiency.

Almost two years ago, I started building an Android-related knowledge system. The initial idea is to start from the accumulation of basic knowledge. In the past few years, the technology sharing of the community has been popular. There are a lot of new articles published every day in the channels such as "Nuggets", "developer headlines" and "books". The theme is varied and the content is very different. It looks very good. After a few days of reading, I feel that I have stepped into the wrong direction. I read a more representative article: "What you need to know about Service", the quality of the article is much lower than the title. The expectation is nothing more than an excerpt from several points in the official document. In some places, the logic is incoherent because of the incomplete excerpts. After finding out the source, I found that the official document is my salvation.

When I first started learning iOS, I also walked through a similar detour. I was eager to master the key points in a short time. I was eager to start writing code as soon as possible, so I skipped the official documents that looked long and cumbersome, and searched for various summary articles. In order to achieve speed, the result is that all the knowledge points that are lucky enough to take the opportunity to skip, will become a time-consuming and laborious pit to fill in one day.

There is no better starting point for the construction of the basic knowledge framework than the official documentation. Of course, the official documentation is too comprehensive to read through at the beginning. The correct way is to read the relevant official documents before planning to go deep into a certain knowledge domain. If you still have doubts and then go to other channels to search for relevant knowledge points, and further in-depth exploration, this involves the following " The topic of intensive reading.

From this perspective, the three channels mentioned above, for the accumulation of basic knowledge, the reading value is not high, it is very likely that the whole article is a few bits and pieces of known knowledge points, and the results are very effective. Micro, most articles are stunning in title and thin. Of course, it does not rule out that occasionally you will encounter some high-quality deep good texts, but most of these good texts are reprinted, and they have their own distribution channels. According to my past experience, good texts are scarce resources, and the number is scarce and the distribution channels are stable. For example, some foreign companies like bugly are external channels, some excellent bloggers at home and abroad, or occasionally forwarded on Weibo. article. These channels can be sorted into the browser's favorites, so you don't have to go to the "Nuggets" channel every time to do a haystack search.

Reading behavior can generally be divided into two categories: extensive reading, intensive reading. The technical articles are nothing more than reading. The difference is that technical reading should be intensively read and read lightly. The key to the value of technical knowledge is whether it is finally precipitated in the reader's memory. Extensive reading is difficult to form an effective and profound memory, but it is easier to read more than intensive reading, so many beginners habitually do a lot of extensive reading behavior, and when they are interested in the title, they can click to browse. Reading a few articles, and finally forming a illusion of a lot of harvest, this is actually a lazy behavior under the subconscious. The knowledge gained in this kind of reading behavior, not to mention the difficulty of applying in the actual project, is that it is impossible to talk in the interview. This detour, Peak, has also passed.

After selecting and forming our own unique reading channels, we should adjust our reading behavior, try to force ourselves to do intensive reading, and dig deeper and digest the deep and good texts that we recognize. A good technical article, one day can be digested and cleaned, and it is possible that some articles need to be read one week in a row. Intensive reading of an article will indeed be hard, but you think that the people who write the article are more difficult, not only to understand the various knowledge points discussed in the text, but also to do a series of inductions into a system, intensive reading of a good text is once and a certain Experts in the field have the opportunity to communicate in depth, just browsing through the grass and missing a chance to deepen the knowledge domain. If the topic of the article matches the current focus of your own, the more difficult the article is, the higher its value. In short, the reading of technical articles should be less and less, and should not be general.

I believe that many people have experienced similar experiences when reading technical articles: find a strange term in the text, turn to google, find more terms or related articles, and switch to the new environment to continue reading behavior. Sometimes it happens to jump a few times, and finally there are more and more tabs on the browser, and I feel that the article can't be read.

This is because the knowledge system of technology is often a tree structure. Under a single term, there are related knowledge domains, which can involve more sub-terms layer by layer. When reading an article encountering such a tree structure, it is necessary to suppress the desire to constantly explore, and to only moderately extend the study of technical terms, and the ultimate goal is to complete the reading of the root article. Peak's reading habits are only one or two extensions. For example, when you first started learning ReactiveCocoa, you came into contact with functional programming, and you learned about functional programming and dug out the pure function. The pure function contains several other concepts. Continue to go deeper, but after the layer of pure function, you can actually stop, you can go back and complete the original reading task.

It is sometimes not easy to restrain the desire for knowledge. The reality is that we have limited energy and we cannot become experts in every field. When we see high-quality and in-depth sharing of good texts, it is easy to generate anxious feelings of knowledge, forcing ourselves to read topics that do not have much overlap, which is easy to cause time. And waste of energy. Between different technical personnel, there is actually no comparability in the amount of knowledge reserves. What really needs to be concerned is the ability to learn and solve problems.

Again, it is the choice of reading time period. When a programmer works, it is easy to be interrupted. Products, design, and testing are all likely to be found at any time. Once the reading is interrupted, the reading effect will be greatly reduced. We should try our best to choose the time period that no one is disturbing to read according to our own situation. It can be the morning when we arrive at the company, or when someone else is taking a nap, the quieter, the better no one is looking.

Finally, you can read some of the English original technical books from the esoteric technical articles during the reading time. This is the dinner of knowledge learning, the scattered articles written by others. More suitable as a dessert. For example, the "TCP/IP protocol detailed" that Peak is often recommended, this classic book, even if it takes a year to read, is far stronger than reading a variety of technical articles written by others for one year.

Said so much, refining the summary: For the reading of the basic knowledge, we must focus on the official documents, do not worry, after reading the document to form the knowledge system, then write the code is not too late. Reduce the extensive reading behavior and avoid browsing the technical articles without any purpose. Focus on intensive reading, one day is not too small, one week is also normal. Re-read the quality rather than the quantity, choose the time of day when you are quiet and not easy to interrupt, and read as much as possible.

Be careful, the text is complete.

Welcome to the public number: MrPeakTech