工程师和艺术家
软件开发者是工程师还是艺术家。
这个问题,总结了软件开发过程中无数细节问题,这些问题统统没有答案。软件开发领域的圣战比宗教中的还要多。从项目管理到软件设计,只有模糊的建议,以经验性方法为主导,估算工期的方法叫“拍”: 一拍脑袋有了,一拍胸口干了,一拍大腿坏了,一拍屁股走了。往复循环!一地鸡毛!
以前有一篇文章叫“谦卑的程序员”,有这么一段话:“优秀的程序员很清楚自己的能力是有限的,所以他对待编程任务的态度是完全谦卑的,特别是,他们会象逃避瘟疫那样逃避‘聪明的技巧’”。
(一辆车刹车失灵,摔下悬崖,项目经历,硬件工程师和软件工程师的对话:软件工程师说了句,动手开干之前,我想应该把车推回山上,看看事故是否会重现!!!亮了)如果向程序员报告缺陷,他的第一反应是问你:“重现问题了吗?”--意思是说,你能确实让问题重现一次吗?如果答案是肯定的,事情就成了一半;如果是否定的,程序员就会耸耸肩,把责任推卸给硬件或者宇宙射线! 介个~~~我们遇到bug也先问能不能重现,不过目地多...
写程序,这句话值得驻足思量。那么编程是工程还是文学?是科学还是艺术?如何解决编程的双重问题成为改领域中许多人的困惑所在。