Programmer's capability Expansion model

Source: Internet
Author: User

Listen to a word, called "comfirtable zone", Chinese is "comfort zone."

This word gave me an instant connection to the programmer's ability boundary problem, and I drew the ability to expand the model diagram. As follows:



I think the ability to expand the model is applicable to all aspects of a person, but this time I'm going to just take a programmer to pull it off.

Capacity expansion model

The left side of the picture is our status quo, and the most inner prototype is the area where we feel comfortable, which I call the "comfort zone."

In the case of programmers, when the technical ability and problem-solving ability of programmers reach a certain level, they can be easily qualified for certain development tasks, solve specific practical problems and bring convenience to users. His ability to match the problems he was exposed to, when the programmer was in the comfort zone. The size of this comfort zone is defined and defined by the size of his ability to solve problems.

When the problem goes beyond the programmer's first skill and experience, he can see and understand, but it can't be solved. These are the challenges that the programmer is likely to face at any time, the yellow round in the figure.

The large red area of the figure, to the programmer, is unknown area, unknown is lost, unknown is pain. This area is often the programmer can not see or see, is Bermuda Triangle an unknown and mysterious area, rushed into, May Zhejichensha drubbing and return.

If a programmer is willing to jump out of the comfort zone, step into the challenge zone and accept some discomfort, he will have the opportunity to expand his ability to expand his comfort zone, his ability model to the right, the comfort zone, the challenge area to become larger, the pain zone to become larger, which is in line with the law of human cognition: the more you know, The more you don't know.

If a programmer is not willing to accept a slight discomfort, then he will gradually become complacent, lag behind others, lag behind the times, gradually by this ever-changing era of abandoned, to be a person in the eyes of the old guy.

Extend the comfort zone during the development process

The ability of a programmer to be able to exercise constantly becomes stronger. Just like the human muscle, a period of time let exercise intensity overload a bit, adapt to, accustomed to, the muscle becomes stronger than the original, and then overload a bit, through such a spiral progression, the muscle will become stronger. Programmers are the same, your ability to learn, code, design, communication, management, and so on, can be enhanced through exercise (we have to consider what a person is fit to do, if he does not have a certain aspect of talent, although through exercise can also be strengthened, but contrary to the nature of the matter is usually less than good).

In the software development process, a programmer, what language he will understand what the framework level, his own heart, the project manager through his performance also think he knows. So when there are new projects to do, it is common for a programmer to be familiar with the techniques associated with implementing the TX task, and let the programmer do the TX task, which is usually due to the delivery period, productivity, cost and other considerations.

In this case, everyone is doing their own things, for the whole project, nature is the most economical. But for programmers themselves, it is not economical. Because you cannot accept new challenges, your ability to expand the boundaries will be slow. Therefore, the reasonable situation is that the project manager in the division of tasks, to the programmer is responsible for a programmer can easily complete tasks, but also to give him a little effort to complete the task, through the challenging task to exercise the programmer, let him grow better and faster. But the cost of managing this is too high, so in reality, few of the company's project managers take the initiative (and do it passively if they don't have the right people to take a task).

In view of this reality, as programmers themselves, if you want to grow faster, you have to act brave, take the initiative to the challenge area, to rob challenging tasks. (If you are embarrassed to take the initiative, you can also accept the fart when a challenging task falls on your head.) Once you've got a challenging task for you, you've earned it. Yes, I said so on purpose, you earned it. Although you will be able to work hard, although you may work overtime, although you may be out of sight of others to pay, but you have the opportunity and more possibilities, if you successfully completed, then your comfort zone will expand, your exposure to new challenges will become larger, you enter the virtuous circle, you will become more and more powerful. You will eventually embark on the transformation of the Seven Dragon Ball into Goku, the Messiah, the super-race, the super-2, the super-Isaiah 3,....... Until he became the god of the super-Messiah.

Think about it, what a wonderful thing!

So, a technology has not been done? Not a problem. Have you ever learned a language? Not a problem. The software structure is too complex for a moment to control it? Not a problem. Not familiar with the business? Not a problem. If you think these are problems, OK, sit down and watch the clouds, wait for time to take everything and leave you where you are.

in the eyes of programmers who aspire to be self-fulfilling, problems are opportunities . Only by seizing the opportunity, our ability to solve the problem will be in the pain of the experience like a snowball, the more rolling.


For more wonderful articles, please refer to my "Talk about Programmer's Column ".

This article was posted on my subscription number "program Horizon", and the first time you can see my original article and the wonderful articles I recommend:


Copyright NOTICE: This article for Bo Master original article, without Bo Master permission not reproduced.

Programmer's capability expansion model

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.