What are the most valuable skills for programmers? How can I become a successful developer? I bet you've asked yourself
this question at least once in your career. Have you found the answer? Do you think you have found out?
Many young programmers will tell you that the most important skill of a great developer is to master the language they use.
Of course, you should be familiar with C #, F #, C++, Java, Ruby, Haskell or other languages. However, the language itself does
not provide enough skills for you to complete desktop or web applications.
"That would be the knowledge of the platform," you asked yourself. Maybe even the whole platform system, if you think about
it carefully. For example, this may mean knowing the tools or libraries developed by Windows API or iOS. But think again. What
if the trend changes? What if the project moves to another platform? If you only have the knowledge of the previous platform,
will you still be a great programmer? I don't think so.
"Yes! I see. It must be the ability to solve problems and to think analytically." You almost roared at me. In fact, you are right. No
good developer is without analytical thinking. However, problem solving is still not the most important skill you should have.
"If it is not programming knowledge, it must be programming passion. You have to learn something new every day. You can't stop,
you have to love it." Indeed, you are right. Although this is not the most important ability, it is already close. What makes you from
a good developer to a great developer is the passion for programming, especially the passion for learning.
However, another skill that is more valuable is communication.
This is often underestimated, but you can't live a day without communication skills. Moreover, you need to communicate not only
with customers. It also includes your colleagues, sharing your ideas, arguing in a non insulting way, and persuading your boss to
take your approach. In addition, it also reports status updates and explains what happened. You should communicate every day
and properly if you want to be a great developer.