An interesting article Article . Fast iterative learning and practice "It is very similar to some of my previous ideas, and I think this is also called" Fast "It does help a lot. If you are interested, you can check out ^_^.
Source: http://www.cnblogs.com/netgarden/archive/2006/12/15/590009.html
Most Chinese people prefer to use martial arts novels to compare software development. However, in practice, only the sunflower collection is the most powerful, and it can be called "unbeaten" only after mastering the sunflower collection ".
But what is the sunflower collection of software development?
Let's start with some phenomena. Our premise is that software development is an intellectual-intensive labor. For intellectual-intensive labor, we have observed that individual performance is very different and the team's
The performance is very different, the organization performance is very different, and the country performance is very different. Unlike physical labor, the speed of running a hundred meters is only 50% faster than that of me. But in chess, a master can
Several low-handed cars in the round, and beat them one by one without exception!
These athletes are characterized by accurate computation and high speed. Its behavior is very undefeated in the east. Although there are many legends about the sunflower collection, the most accurate description is only one word "quick ". The invincible position in the east is almost scary. Just as casparov is almost reaching deep blue.
There was an anecdote about the physicist bord, who once listened to two young professors at Princeton University to give a speech about their work. During his speech, borl suddenly said that if you calculate it based on your research, you will get a very interesting inference. As a result, the two young professors returned for two days and came to the same conclusion. How can we achieve this fast?
In software development, we also noticed that they can write about one thousand lines of high-quality data every day.Code. They can use some existing software packages to quickly complete a new product. They can learn a newProgramLanguage or new technology. They showed a magical speed.
In martial arts novels, all the masters have performances beyond the reach of ordinary people. Like Zhang Wuji to learn taiji, he defeated the famous Longclaw hand with the Dragon Claw hand. Qiao Feng beat the hero of the world with the Great Ancestor's fist. Gu su Murong also managed his body with his own way, ling Hu rushed a sword to blind more than a dozen eyes and so on. I think the key to achieving this is their speed.
Fast does not mean inaccurate or poor quality. Fast and quality are not in conflict.
The speed of the Experts actually includes high quality. If you question the quality of a master because of the high speed, it is equivalent to asking: Is it true that the East cannot beat the game so quickly? The undefeated Oriental market is not satisfied with biting his opponent. He will stab a flower on his opponent. He turned murder into art. To be precise, his true interest lies not in killing, but in art.
To put it back, even if the first unbeaten strike in the East is a little biased, the second and third hits that he wants to hit will be followed immediately after he makes a slight correction. When the opponent's sword was not drawn out, he had killed the opponent and stabbed a flower.
So the real software master, he is not satisfied with his code can work effectively, he thinks programming is art, and is fascinated by it. In the time when a low-handed version can be written, he has written the tenth
. Of course, its quality cannot be the same as that of the day. Just like a 9-segment player, he can calculate ten possibilities within a given period of time, and after calculating each possibility to 100 hands, he can choose the most advantageous method. Low-handed
Is there a chance to be honest?
Highly-handwritten software is constantly refactoring (refactoring ). Experts like iterative development. Experts say that Incremental patching and iteration are re-engineering. For software, writing it once may be OK (it is not easy to do it). Writing it ten times is a great product, and writing it again is even greater.
The trick is that he is familiar with various things. A master reads books very quickly, because each new book contains only one or two chapters of new technologies. He can quickly read the book and understand its central thoughts and values. For a newbie, every sentence is new, and he needs to understand it. For each example, he needs to try it.
It is rare to see a new 100% technology or theory. Just like Java language
As mentioned in specification, Java does not use any new technology and uses industry-proven technologies. He is familiar with those technologies. Naturally, he will soon
A c ++ master has become a Java master. If a beginner in programming learns Java, he is not as good as a master for two months. Learn new things quickly.
High-speed handwriting code. According to the statistics, the valid Code speed per person per month is about 300 to 400 rows. But that is the industry average production efficiency. This number is too low for experts. Each
It is entirely possible to write 300 to 400 rows per day. Because when writing code, all the knowledge is ready, there is no need for him to spend more time. He rarely needs debugging.
The ability of experts to reuse code is very strong, and it is very fast to get familiar with new APIs. This is also because he has used many APIs and used a lot of code. He knows what is available and what is missing
. He has used both QT, GTK +, Windows API and MFC, and AWT &
Swing. The new API is also an old acquaintance to him.
Experts like to use lightweight tools, such as VI and notepad, which can be as complex as ultraedit at most. Experts use this tool to write a lot of things. These tools are like unbeaten needles in the east. The needle has magical magic. Sometimes it can be used as a laser gun.
Although some heavyweight tools are not commonly used, they are more powerful than ordinary people once used. If you fail to use the sword in the East, the most powerful swordsman will also be ugly. Experts have actually used a lot
Tools, and are well aware of their advantages and disadvantages. Therefore, we can maximize the power and minimize the defects. However, low-handed users do not always carry forward defects without knowing what the essence is. Just like
Many people use UML, RUP, XP, and design pattern.
The experts are well-learned and integrated. When the experts are doing nothing quickly, when the low-handed is still in a sorrow, the experts have successfully solved the problem and have done other things.
I believe you want to become a master. However, there is a problem to be solved, that is, the problem of "first self-healing is necessary to practice the power of the Gods. This is actually a metaphor. That is to say, you must discard things that are highly valued by secular people. Evidence of Poetry:
The world knows that they are good, but they are lonely.
The world knows how good it is. Only fame and fortune cannot be forgotten.
The world knows how good it is. Only money is required.
The world knows how good it is.
The world knows the best, the best without writing code
The martial arts of experts were not completed overnight. Do you still remember the anecdote of bord? He replied that he had computed many questions when he was young. On the basis of a lot of computing, experts can cultivate a feeling.
A master can do the design without writing code because he has written a lot of code before. In addition, they will keep writing code to ensure their own level does not drop. Think about how the 9-segment experts practice it. The most difficult thing to do is to endure ten
The loneliness of years. When others coquetry at their parents, they work hard. After ten years of sharpening, the sword became an unbeaten pin in the east.
After you make up your mind to be a master, that is, after you make up your mind to abandon those secular pursuits, that is, after you make up your mind to endure the white eyes, attacks, and abuse of those vulgar people, you have the necessary conditions for achieving the power of your work.
In fact, you don't have to exercise the power from the very beginning. At the beginning, everyone may make programs for money, houses, cars, and beautiful women. However, art came into being later. Then the Experts no longer pay attention to those things. He once said that he started to enter that circle for money, and then art came into being. Of course, some people started out for art and later for money.
The so-called thirty, that is to say, thirty, you find your true love, the one that is worth your life to pursue. For example, some people think that they should make as much money as possible in their lifetime when they reach the 30th, which is nothing
Poor, you can also turn making money into an art, the so-called capital operation is also. So before the 30th, I had nothing to worry about. It would be shameful after thirty. I want to be a programmer.
Everyone does what they like best. This world requires programmers and capital. All Real Programmers like programming and themselves. If he went to become a CEO and didn't program any more, he would not have been a real programmer.
On the way to becoming a master, you must be enthusiastic, step by step, and persevere.
You have to rely on yourself to read books quickly. Try to quickly understand its subject. In fact, you can quickly view the amount of information you accept, which is similar to what you slowly accept. It depends on your skills. To
Later, let's look back. A book that has too many new things for you, don't expect to read them all at once. It's like a lot of people who are not competent enough to look at design.
The book patterns is the same. It is better to find multiple sources of information. Reading a book is far from enough for a completely unfamiliar field.
You must rely on yourself to do things quickly. A friend, I introduced him a few years ago to play with Linux. He also said he wanted to play, but he hasn't touched it yet. He lost many opportunities.
At ordinary times, you need to consciously improve the speed of writing your own code. In fact, you write 15 lines of valid code a day, which is similar to writing 50 lines of valid code. You should put the average in the industry to the brain
Then, surpass yourself as the only goal. When you write a lot of different types of code, your level is not average. A teacher once told me how to learn English.
This is a great distance from the average person. This is the case. If you write too slowly, how can you write too much? How can the level be improved?
You have to learn things that others are afraid. Low-handed people always say: how can we learn so many things. As a result, you will not learn more or less. In this way, it cannot become a master. Experts have a wide range of knowledge and rich experience. I know a lot of things that I don't know. I have played many things that I have never heard of before.
We need to rely on ourselves to meet the various needs of our customers. Personal skills are improved to meet various customer needs. For example, if you like to use Delphi and the customer says that you must use VB, then you promise him and cultivate yourself into a master of VB. User needs seem to be **, but it is an opportunity for you.
One obvious way to achieve faster reading, faster code writing, and faster learning new things is to parallel work. When you make on a machine, you can also read other documents and chat. Pair
This is true for computers and for humans. If you can only handle problems serially, your speed will be improved. Your brain has great potential to be tapped. It should be a multi-task time-sharing system. Try to reduce it
Idle time. The economic-making Samuel is called the human brain main frame, showing how fast his brain is.
To make your thinking faster, you will be different from those who are slow to respond. If you cannot extend the path of your life, extend it. The world is changing fast, and you need to be faster than it.
This will not take you short-lived. On the contrary, you have more time to enjoy your life and exercise. Your life will be more quality, richer, and meaningful. You will remain undefeated in the face of changes. We all race against ourselves and need to run faster than we did yesterday.