I recently talked to a friend of mine about this. She has a PhD in Mathematics and works in the software industry. In Math it is a common practice that you present a proof to your colleagues and discuss it with them. In her company she suggested a similar approach for pieces of software that people have written. Her colleagues, who were mainly trained in Computer Science and in particular not at a university but rather at a technical school, found this completely unacceptable, since they were not ready to face the possibility of being somewhat publicly critisizedcriticised.