"Oh, yes, the manual needs a little problem, but we need to do this thing right away. System line without it. Everyone needs it. It is just a small change. It must be very easy to do, you are soon will be able to do it. "
- Project Manager
You and the project manager, marketing, sat in the room. You listen to them under the famous "need, must, easy, fast" conjecture and derived requirements. How can you answer? You back to the wall.
In this meeting, how many people you do unconscionable violation of the principles of programming development activities? How many people knew that the easy way, a shortcut way to become bigger trouble in the future, or do they?
So I did.
Fortunately, after all these years, I learned to say how many "no".
"Boss, I do not recommend such changes now. This seems not very professional. If we do this modification, although the completed soon, but will one day need someone to put it into the right way. I do not want this man for the future manufacture of such trouble.
However, I am not the boss, if we have to do this way, I suggest that we must spend at least several hours to write this documentation to develop an automated functional testing unit, to prompt us to this problem persists. If you think this is such an important function, we spend a day or two later the time to change things right? "
Usually say will work. If not, this time to put things on another level that time. "Well, do you really want me to do things that you do not professional?."
Programmers, every time we use the variable names are not meaningful to our colleagues a disservice. Every time we throw a meaningless error message, or no mark on the errors that are on the technical support team, an injury. Every time we write does not write the document, the easy way corner and are ultimately involved in the software development of all a disservice.
If I remember correctly, that people practice in obtaining the qualifications of the Hippocratic oath in the case:
I will according to my ability and my assessment of my patients out of the prescription benefit, not to do something harmful to them.
The development of a professional who can work with a physician's work is relatively more than it? Many people do not think they are equal. However, now doctors are using those tools to developers for their developed.
What method you use to prevent their being "forced" to do what no professional work?
Translation Source: IT Review of Foreign Periodicals
:-)