编程的政治哲学

程序员总相信完美的解决方案。
政治家知道,我们的世界是不完美的,在不完美的世界中不存在完美的解决方案,我们能够做到的就是在不完美的世界中寻找一个大家都能接受的妥协方案。

与其追求一个完美的方案,找不到就不动手,不如采取务实的态度,寻求一个阶段性成果。利用该成果暂时性解决问题,并凝聚共识,等待情况发生有利的变化再进一步推进。
所谓“搁置争议,共同开发”就是这种思路。

对于多人编程,特别是在组织机构中,可以把编程过程理解成一个政治上的讨价还价过程。上级要求你完成某个任务,你对任务提出自己的看法,然后双方进行讨论最终得到一个各自都能接受的方案。在这个过程中程序员以自己的知识为资本运用自己的权力,到达其目的。