Five non-technical errors of programmers-reprint

Source: Internet
Author: User

ForProgramFor developers, there are two technologies that need to be mastered: technical capabilities and non-technical capabilities. Unfortunately, many programmers focus too much on technical capabilities and ignore the cultivation of non-technical skills. Therefore, our programmers often have some bad habits, here we give examples of the five most common non-technical errors that programmers make.

1.-lack of team discipline

"Discipline is the bridge between goals and accomplishment ."Jim Rohn.

Discipline is the most valuable skill, not only in the field of software development, but also in other fields. However, in reality, it is difficult for us to find talented and disciplined people. Like football teams, African players are very talented. Unfortunately, they are always alone and lack of team discipline, so they can make good achievements, but cannot win the final victory; german team members have average personal skills, but they have strong team discipline. Therefore, they can always win the final finals and win the championship. Some people have said that personal heroes are not terrible, but a team with strong discipline is terrible. This is what makes Japan a terrible nation. Besides, software development is never done by one person, so discipline in team work is very important.

Steve PavlinaFive factors in self-discipline are emphasized:"Undertake,Perseverance,Effort,Diligence, AndPersistence."Here, we strongly recommend that you read Steve'sSelf-disciplineArticle.

 

Below are some good habits we think the program should have.

    • Each day has its own to do list
    • Do only one thing in one time
    • Do the right thing
    • Do not end it easily when the task is not completely completed.
    • Slower than better than worse
2.-excessive conceited

Our experience tells us that people who are over-conceited are generally not aware of their own. Below are some characteristics of over-Conceited. We hope you can check whether you are over-conceited.

    • I think I am the best programmer
    • Always interrupt the conversation
    • You requested code reivew not to checkCodeTo show off your code.

There are too many articles on the Internet about the programmer's self-confidence. Here are two articles for you to see: one is Mike bernat'sEgoless programming (no conceited programming)Another one is on stackoverflow.com.Post.

3.-Poor communication

"If I want to say ten minutes, I need a week to prepare; if I say 15 minutes, I need three days to prepare; half an hour, I need two days; if I say one hour, I am ready now."Woodrow Wilson

Human communication is our main activity. It is very difficult to become a good communicator. We constantly exchange ideas about design, coding, and articles with others, and every day, we try to convince others that our design and ideas are better and more reasonable ......

Then, when a good communicator is explaining some things, their explanations are as follows:

    • Focus.No questions, no nonsense.
    • Clear. It is easy to understand.
    • ConciseIf you add one, you will feel that more is not enough.

We recommend that you have good communication skills as follows:

    • If you think that your communication is not good enough, please prepare the items you want to express in advance, and strive to be focused, clear, and concise.
    • In the conversation, listen first, then think about it, and finally talk about it.
    • Always think about the problem from the perspective of the other party.
4.-Forget the user

"If we don't care about our users ...... Then others will"

Your presence means only one reason for your work-your users. We forget this thing for a long time. Often, in our work, technology will replace users and occupy a major position. We can spend months to create a program framework, however, a program framework will not generate any value for users. We do not mean that the program framework is not important, but that is the second important thing for user needs. If we leave the user's needs, all our technologies,AlgorithmOr a subtle design will become nothing.

5.-Do not understand the priorities of work

Programmers always like to study new things or things they are interested in. But for software engineering, we need to know how to prioritize things, in this way, our work will get twice the result with half the effort, and our work will be more effective. For example, when a user's site encounters a problem, sometimes our programmers try to focus on the problem reproduction and cause, and forget that the user's site is bleeding, production fails. Therefore, in general, the most important thing is to restore the user site first, and then reproduce and investigate the problem. In our daily work, we have to deal with a lot of things. We can better arrange our work only when we understand the priorities of all things and handle the most important and urgent things, to better accomplish our tasks. Do not think that this is a simple task. We need to constantly communicate with others to understand the priorities of the tasks. Facts prove that if we do not understand the priorities at work, there was only one urgent task. If it was not handled properly, it may eventually become several urgent tasks. Other emergency events will become very urgent in the future. In the end, programmers will lose sight of this, miserable. Please remember.

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.