1. Every good work of software starts by scratching a developer’s personal itch.
We can never be contended. This saying is true about man, about us. Every person who already has something will definitely strive hard just to replace that something with a better one. Every good work or good product is because the maker or the developer strives harder just to make his product more convenient. For example, we already have cellular phones in the early 90’s but through man’s undying quest for perfection, different features are been developed for cell phones.
2. Good programmers know what to write. Great ones know what to rewrite (and reuse)
In the book Getting Real, it is said that a good programmer knows how to write. If he can’t write what he has done, who can appreciate his product? Technically, he should also know how to rewrite. When you are the one who made the product, there is no reason at all that you can’t perfect what you had done.
3. “Plan to throw one away; you will, anyhow.” (Fred Brooks, The Mythical Man-Month, Chapter 11)
If you encounter problem, it does not mean that you should solve it right away. It will definitely rises up sometimes when you’re ready to face and solve it.
4. If you have the right attitude, interesting problems will find you.
Good products come with difficult problems. I believe that the right attitude that is define here means that if you, as a person, is really dedicated to the work that you are doing, the interesting problems that will rise up are the one that can make you’re work more complete and perfect.
5. When you lose interest in a program, your last duty to it is to hand it off to a competent successor.
Every time you pass on something to someone, you will surely want somebody who knows and who can handle the product well. It is the least that you can do for the company and for the product.