2015年/04月/05日
何为好程序员
Measuring the qualities of a programmer is much more difficult
度量非常难
Programming is such a complicated industry.
So many languages and technologies and environments and industries;
so many different types of applications and targets;
so many different ways to write the code.
In a specific type of engineering like civil you have complex exams and are required to have specific knowledge and experience before you get a P.E. which I assume means you have demonstrated the basis of your knowledge. But civil engineering is based on concepts dating back thousands of years and deals with the real world in things like gravity, wind, temperature and the like
不同于建筑工程,他们都是在现实中,有考试,面对,风,温度等现实问题
Programming on the other hand is often completely a world of our own creation.
程序是一个创造
我的主观清单:
Good programmers want to ship yet can recognize when it's ready.
Good programmers accept failure happens but do everything to make it only happen once.
Good programmers know when to learn something new and when to stick with the old.
Good programmers are willing to say what needs to be said, do what needs to be done and fix what needs to be fixed.
Good programmers make those around them better.
Good programmers deliver a program that does what it should do, never does what it shouldn't do, and never surprises anyone.
Good programmers know when to plan for the future, when to abandon the plan; they know when to imagine a solution ahead of time and when to see what will present itself; they know when to follow the path but also keep their eyes open to see the path is going over a cliff.
Good programmers know that the moment they are satisfied with their knowledge they are toast.
Good programmers can admit they were wrong.
Good programmers will do everything in their power to avoid shipping garbage.