第一、面子程序员是很有自信的人群上面文章我也分析过了自信的来源。这种自信反映在编程上是就会认为自己编写程序是最好的即使知道自己编写的水平很差也不会告知别人。这是程序员面子在作怪。他们不想进行比较和竞争各自抱着自己的程序在那里自娱自乐。而且业界也容忍这个现象。导致程序员理所当然地认为程序是自己编的是自己的想给别人看就给别人看想不给就不给。尤其是新手、那些自己感觉水平不行的程序员更加不愿亮出程序出来。怕丢面子第二、 保密还有一些程序员则认为程序里包含了解决问题的算法和技巧是自己的辛勤劳动是自己的知识产权。如果给人看了别人就会无偿地拿了过去自己的劳动就会白费。所以他们不愿意公开自己的程序。如果真的这样那我是非常理解的。但是就我的经验来看绝大部分程序员和绝大部分程序都是很难到达可以达到知识产权这个层面的。回首各自编程有哪些是别人不能编的呢有哪些是别人不能超越的呢即使有点小的技巧也不必藏而不露吧。好的程序员是不会去背这些包袱去获取新的进步的。说到底还是个程序员程序私有的思想在作怪。第三、环境有时候我和程序员谈到这个问题时他们认为不是自己不愿意给别人看而是别人不想看自己想看人家不给看。这里确实是一个环境问题没有人要求程序员这样做。这个编程环境并不鼓励程序公开不鼓励程序的优化不鼓励程序的共享反而使哪些编程水平差的得到了伪装那些编程水平高的得到淡化。由于没有制度上、管理上的明确要求这个问题就会长期存在。而我认为程序员既然是个性张扬的群体那为什么不能从自身做起以给别人看的要求编写程序呢不能以学习的态度请教程序写的好的同行呢学习是获取的过程也是将来给予的基础。只要有利于程序水平的提高我们程序员都可以去尝试用不了多久我们环境就会好起来。我们的程序交流和技术交流就会好起来我们程序员的心胸就会开广起来。就我而言我编过无数个程序但我从来没有保留过自己的程序我的程序都是给我的同行看的、保留的。因为我认为程序是给别人看的。虽然是自己写的但是只有给别人看才能发挥其真正的价值就如同一篇文章只有给读者阅读才能评价出文章的好坏。唯有给别人看才能促使自己提高程序的可读性、才能获得别人的批评和建议、才能改进程序的不足、才能提高自己的编程水平。我建议程序员要养成“程序不是给自己看的是给别人看的”习惯尤其是新手从开始就要养成这个习惯要放下面子请别人看看自己的程序请别人提提意见这样自己的水平才能提高同时自己也要学着看别人的程序学会向别人提出意见和建议学会从别人的程序中学到好的编程风格和编程技巧。通过这两方面的努力形成一个程序员之间互动的氛围程序员的水平一定会有一个很大的提高。