After the appearance of the ceramic, the first carving on the ceramic pattern of people, can be said to be time-consuming and laborious to do a useless thing, but this is a milestone in the history of civilization. Code specifications, comments like the pattern on the ceramic, with "useless".
Ceramic pattern is a symbol of civilization and art, code is the norm is cooperation and heritage. People have a personality, more than two people will have a position, there are differences, in this premise, seek common ground, common sense, is for cooperation. Together, with the norms, the book with the text, the car with the rail, the programmer can understand each other, efficient cooperation. It is also with the norms, knowledge can be passed, Yimeimei can fully understand the foundation of the predecessors, adhering to its ideological future. Do not write the notes of the program, after a period of time to see their own puzzling, how can I ask colleagues and the latter to effectively understand it? The person who creates obscure things may be clever but not wise, and in layman's sense it is a gate of learning.
An unavoidable side effect of the norm is to destroy individuality, but this restriction on the individual is negligible compared to the benefit of the group. There is no question: Such thinking is inhumane! Software development is however engineering, not art. Art mostly relies on the artist's personal poor life regardless of the cost of dedication, engineering needs a group of people to unite and coordinate with each other. Plainly, engineering in the collective is to profit, in the individual is to live, so to reconcile and compromise a set of norms, if the individual has the dedication of the artist, is out of the team, alone, poor extremely life is also possible.
In my opinion, the answer to the question of "code should not have specifications" is determined by the programmer's answer to the question of whether programming is a job. If programming is still a working ingredient, it is better to hammer out a set of specifications than to argue that there should be a norm.
Useless use--on code specification