Impact of R-type thinking model on software development (draft)

Source: Internet
Author: User
The pragmatic programmers

I have been reading some books after work. Before that, I mainly used computer-related algorithms, compilers, and mathematics in English versions. I want to improve my daily work efficiency by reading these books, with little effect. First, because English-only books are slow to read, and second, they are also the most important point. They are found to be slow and may feel that they are far away from their work, the two cannot assist each other. Third, they cannot directly give back to the work itself.

Simply change the type. The first step is agile software development-principles, patterns, and practices. Then we review code complete. I still feel that I cannot easily use it when I use it (write code or discuss it with others.

Change the type again. This is the pragmatic programmers series. Eureka! I need to enhance my learning in these areas. First, I started to read "programmer's thinking cultivation-nine lessons for developing cognitive potential", which mainly discussed how to pragmatic thinking and learning, refactor you Wetware. We have heard of software, hardware, and what is wetware? Your brain!

Delifors Model

In the previous sections, this book mentions the dreyafs model, which is used to study how humans acquire and master a skill. It has five phases:

Phase

Features

 

Beginner

L have little or no experience (including nine years of experience, that is, ten years of experience .);

L be very concerned about success or not, and it is easy to be confused due to failure;

L I don't really want to learn, I just want an immediate goal;

L if they are provided with context-independent rules for reference, they will become very competent. Remember that they will not be able to make the right choices when the situation is related.

LA command list is required. The list can only let you go, but it won't let you go far.

For example: call center staff, give them rules, step by step, execute according to decision tree, everything is OK.

Beginner

L advanced beginners are more or less able to get rid of fixed rules. They can try to solve the problem on their own, but it is still difficult to succeed.

L they want to get information quickly. When browsing an API, they don't want to go into details or review the basic knowledge.

L according to past experience, it is difficult to gradually adopt suggestions in the correct situation.

L they do not have a comprehensive understanding, and do not want to have a comprehensive understanding.

Do you care about the annual sales data presented by the CEO?

Winner

L ability to build conceptual models of problem domains and use them effectively;

L independently solves problems and starts to consider how to solve new problems;

L they began to seek and use experts' opinions and make effective use of them;

L The winner will explore and solve the problem;

L without more experience, it will be difficult for them to determine which details will be followed.

L proactive, resourceful, and insufficient ability to reflect and correct itself

 

Excellent users

L observe and learn from it

L have a global thinking to find and understand a larger conceptual framework;

L ability to reflect on and correct past poor performance and improve itself;

L predict what will happen next;

 

Experts

L experts are the main sources of knowledge and information in various fields;

L they are constantly looking for better methods and ways to do things;

L they can choose different response methods based on different situations;

L they write books, liyan, and give speeches;

L work intuitively, "I think this is correct", and no reason is needed;

L based on past experiences, I know where to ignore details and grasp major contradictions;

 

Later, I will use this model to locate myself. At the same time, I also want other people to find their own reasonable positions and then know how to change the status quo.

Wetware refactor

Wetware mentioned here is the human brain.

Refactor, I think it is a new word invented by IT practitioners (so far, this word is not found in the eighth edition of the Oxford high-level dictionary), which means that the Code is not well written, re-organize the code without changing functions to make it easier to read, understand, and maintain. Simply put, it is like cleaning up the house: You feel that she is dirty, messy, and the layout is unreasonable, so you can relay the layout, clean it, or even renovate it, then she looked at it again.

Like code refactor, wetware refactor must first understand the object of refactor: the working mechanism of the brain to ensure a good refactor.

Left and right

Starting with a very successful experiment, this experiment won the Nobel Prize in 1981 by its pioneer psychological biologist Roger W. Sperry.

First, do a small experiment on your own. Sit down, raise your right foot and rotate clockwise. At the same time, write the number 6 in the air with your right hand. When I started writing 6 in this experiment, my feet started and handwriting 6 all the time. You can also test it. This is the result of brain association. Cutting this association will make you show some weird behavior.

Cut this association? How to cut it? Open the skull, take the scissors, find the corpus luteal, cut, and you can. It's so bloody. In fact, the chance of this experiment was given by epilepsy patients in 1960s. These epilepsy patients suffer from frequent convulsions due to brain lesions, and the brain doctors cut off their corpus luteum in anger, separating their left and right brains, and controlling the brain lesions, surprisingly, these patients had no abnormalities after the procedure, but were very happy. As a result, our wise Sperry discovered the opportunity. He immediately invited the split-brain people to join his experiments, while the young psychologist Michael gazzaniga joined the Sperry experiment, so the famous split brain experiment in history kicked off.

 

The researchers showed different pictures to the two eyes of these split-brain patients at the same time. If they were asked to show the images they were seeing, they would report the pictures they saw in the right eye, they use language to describe the pictures seen in the right eye (the right eye is controlled by the left brain and has a central role for language functions ). But ask them to touch the image to determine the image, and they will touch the picture seen in the left eye (the left eye is controlled by the right brain, where there is a non-verbal hub, a hub of action ?).

Here is a potential knowledge point: the right eye is controlled by the left brain, and the left eye is controlled by the right brain. The first impression of this knowledge point is based on the biological knowledge of middle school. First, review the middle school knowledge, and then doubt the correctness, because the time limit does not search for related papers, just Baidu. Baidu search's "Left Eye and right brain" confirmed it. Baidu will return many examples of problems with the left eye and uncomfortable right brain:

For more split-brain experiments, see the appendix.

The content processed by the left and right brains is much different in form. For example, the left brain is a language, a text, a right brain is an image, and a sound. The working method is not the same. The left brain is serialized, concurrency in the right brain; different features in the work; abstract in the left brain and image in the right brain.

 

 

Dual-CPU brain

 

Sperry first pointed out the different functions of the cerebral hemisphere. In modern words, this left hemisphere and right hemisphere were introduced for the first time, but in fact this is not completely correct. Collaboration exists between the ancient crawler brain and the newly discovered cerebral cortex. Their differences are physical and cognitive style:

  1. The No. 1 CPU is responsible for linear, logical thinking and language processing. It is like a traditional von noiman-type CPU, which processes commands step by step. We name this linear processing method L.
  2. The number 2 CPU is very different. It is the Google search engine in the brain. It uses regular expressions to match and search all the information in the brain. Its search results are returned asynchronously, that is, when you have a question, you can trigger this search and think about other things. After several days, as long as you are still interested in this question and your brain has this answer, you may get this answer. We name this asynchronous and comprehensive processing mode the r mode, and the rich mode.

Note that the two CPUs share the bus to the memory core, which means that the CPU occupies the bus No. 1 and the CPU No. 2 cannot obtain the memory for operations. Similarly, if CPU 2 performs a high-priority search, CPU 1 cannot access the memory, and they interfere with each other.

L-type, linear mode

At school, as well as the analysis and summarization capabilities used in daily work, all come from this model. Mainly include:

  1. Language Capabilities: naming, describing, and defining words;
  2. Analysis capability, rational analysis of things;
  3. Symbol capability, which indicates a thing;
  4. Abstract ability, extract a small part of information (essence), and use it to represent the whole thing;
  5. Time capability, in chronological order;
  6. Reasoning ability to draw conclusions based on reason and facts;
  7. Number capability, using number count;
  8. Logic capability, draw conclusions based on logic (theorem, clear argument;
  9. Linear thinking ability. Problems and thinking are deduced according to association and order, and convergence conclusions are often drawn.

The L-type thinking model distinguishes humans from common animals. It leads humans out of forests and tropical rain forests, organizes villages and towns, and enters factory workshops from the ground, finally, Microsoft Word was used to write this article in the office.

However, Picasso once said, "computers are useless. They can only give you the answer ." If the answer is not important, the question is important. This is against the L-type thinking. Because the logic reasoning and thinking based on L-type thinking, the problem is what we spend all kinds of effort looking for. How can we most importantly be a "problem?

R-type, rich Mode

The R type is non-language. It can obtain the language but cannot create the language. It enjoys comprehensive learning and integrates things to form a whole. It is spatial and prefers to figure out the spatial relationship between things. It is an intuitive and leaping thinking. It can infer incomplete patterns, intuition, perception, and visual images. Specific List:

  1. Non-verbal,
  2. Irrational,
  3. Comprehensive,
  4. Spacicity,
  5. Specific,
  6. Intuition,
  7. Analysis,
  8. Comprehensive,

The r-type model is very good at analogy, or pattern search. It is always empty and does not bother with punctuality. It does not accept the constraints and does not need to process the input based on the reasons or known facts. It is completely willing to accept the input for the moment without making any judgment, and the visitor does not reject the input. Therefore, it can learn and absorb the input without understanding it first.

The r-type model is more like a Way of Thinking inherited from ancient times. Intuitively speaking, from the view of danger to the response, it is right to directly run away without logic, reasoning, and judgment. The sense of space is also the same. In the low-level animal period, there can be no language to survive, but there is no sense of space. If it is a tiger, it cannot judge the height from the cliff to the ground, and it has already fallen to death, will not participate in the evolution process.

In the L-mode corresponding to the R-mode, it is difficult for adults to understand the same thing, but remember that it is very reliable. L-mode is typical: If you want to enter my world, you must first let me know you, understand you, feel at ease, you will not make trouble, you make sense to me, etc, I will let you in.

The r mode has some other unique features:

  1. As mentioned above, it is asynchronous, that is, when you want to recall something, you may not be able to think about it at the time. When you think about another thing one day, you think about it, or you dream about it at night. Another point related to this is:
  2. Unpredictable, the answer and inspiration will appear independently of your conscious activities, and not always at the right time, you need to always prepare paper and pen;
  3. The r mode is not directly controlled by subjective consciousness, just as the heartbeat speed is not controlled by you;
  4. R-type provides intuition and tacit knowledge;
R-Mode Application

As mentioned above, the L and R modes share the memory bus, and they are mutually exclusive. In reality, most of us are talking, living, thinking, and working with L-type thinking. How can we quickly enter the R-type model?

Many common leisure activities can activate R-type thinking: Listening to music, painting, meditation, jogging, sewing, rock climbing, etc, various activities such as hand, brain, and eye coordination can instantly start the R-type mode. There is a very famous book called painting with the right brain. It teaches people how to stop thinking in the L-mode and start the R-mode. Everyone can learn to draw quickly and draw well. I have already started to try it and hope it will be displayed soon.

R-type mode in software development

The r-type analogy and overall thinking method are of great value to the software architecture and design. In development, the prototype and independent unit tests are used to code and build and learn and apply the R-type synthesis. With the popularity of agile and scrum, Pair programming is no longer unfamiliar. The r-type mode shown by navigator in Pair programming will be more than driver tomorrow. Navigator is more comprehensive in terms of architecture, hierarchy, ease of reading, and aesthetics. The "layers" are mostly related to metaphor. The thinking process of metaphor is basically the process of searching, pattern matching, establishing connections, abstraction, and deformation. Finally, it is expressed in language. There is also a saying that metaphor is a bridge between the L-and R-models.

Metaphor

Metaphor comes from the Greek metaphora, which means that you are transferring the attributes of a thing to another thing in a way that is practically impossible. The attributes of things are the abstraction of things, finding the abstraction of their co-existence, and using this abstraction to describe a and develop to describe B. This is a metaphor.

The analogy that begins with learning Chinese from an early age belongs to this category. In the field of software development, waterfall is a metaphor. One feature of this development process is that, from top to bottom, this is the abstraction of the waterfall and the abstraction of this development process.

There are many metaphors in Poetry: "the galaxy is suspected to be nine days", "Love is a smoke of Sighs", and "Honey milk in the adversity of the history of philosophy.

Code Daquan... (To be supplemented)

Leave the keyboard to solve the problem

The famous mathematician Pang galai has a set of special problem-solving skills. Whenever a difficult or complex problem occurs, he writes the known and related documents on paper. This can expose many problems and solve those simple problems first, then pick out the simplest problem from the remaining problem and leave the office for a while. Just think about this question. Once inspired, I will immediately stop walking and go back to answer it. Repeat this step to answer all questions. In such a process, panggalai said, "There will be a pile of ideas. I feel that they have been colliding with each other and finally combine them. That is to say, they will produce a stable combination ".

Write the key points related to the problem on paper and remember them. In addition to the scattered steps, listen to music, And let those things written on paper freely stir up and soak in R-mode thinking until they find inspiration and return to solve the problem.

I have had similar experiences, that is, when I feel that a problem is too big to think about, I will write all the things they know. Then, starting from these known concepts and methodologies, activate the brain and try to make you feel as excited as if your brain has been beaten up and start to think differently. My activation method is to take a deep breath, and then imagine something very beautiful that makes you feel very safe. This is a warm stream rising from the bottom of my heart, all over the body. At this time, I think that the knowledge points listed on the paper in the brain are shining, trying to scatter them from their center to various directions and find a suitable solution.

We no longer need coach

I think there are almost no coach or many programming experiences available. Why can they say this and provide us with some guidance? I think they read more books, and they have been serving as navigators in Pair programming. From the effect of almost all of our coach on us, two to three months later, we can guess that the marginal effect is:

On the one hand, they cannot go deep into the project code, but the code is just a test of coach's skill. I think that once I start to use it as the driver, the brain limitation, and the 7 +/-2 principle, it will begin to appear. Let's look at the classic cases they have mastered, that is, how to deal with the simplest sample code in the book. They are already familiar with this knowledge, which does not need to occupy 7 +/-2 space when we discuss code design, so they can have more than buffer to discuss those designs and principles. Once they get into our code: There are three if followed by four else and a function that often produces regression, they will also take a rest.

Second, we lack reading and other cool-looking tools, which are exactly what we learned in the book. So what we need to do is to read books, read more books, and read all the books we may use, so we can study them slowly and invest more time. When we need some knowledge, contact a consulting company and ask what books we need to read. After reading the book, as in the case of panggalai, I have encountered some problems. I will list the known concepts and methodologies and think about them. Each of us is a perfect coach.

In the third aspect, Coach gives us the feeling that the teacher solves the problem with the students, but the students cannot solve the problem by themselves, because it is just a blessing. What we need is to read books, establish a complete ideological system, and improve the tool for solving problems. In this way, each of us is Coach, Coach ourselves, and coach others one day.

Reading, clarifying concepts, designing principles, and balancing. When you encounter a problem, write down the knowledge points that have been learned and are helpful to the current problem, so that they can shine in their minds and stop thinking about it. The problem is more beautiful than what Coach solves.

  

The true journey of discovery lies not in the pursuit of the New World, but in the possession of a new vision.

------------- Marsel-prester

(To be continued ).

 

Related Article

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.