编程为什么有乐趣
创造欲
这是创造事物的纯粹快乐,这就像小孩子玩泥巴时的快乐,小孩喜欢玩泥巴,成年人喜欢创建事物,特别是还喜欢自己设计。
这种快乐是上帝创造世界的折射,一种呈现在每一片独特的、崭新的树叶和雪花上的喜悦。
帮助欲
这种快乐来源于开发对他人有用的东西。每一个开发者的内心深处,都其往往自己的劳动成果能够被他人使用,并能对他们有所帮助。
满足欲
这是一种来至于整个过程体现出来的一股强大魅力————如同将零件完美地组合在一起,看到他们以精妙的方式运行着,并收到了预期的效果。
受虐欲
这种快乐是持续学习的快乐,它来自于这项工作的非重复特性。人们所面临的问题总是有着这样那样的不同,因而解决问题的人总可以从中学习新的事物,有时是实践上的,有时是理论上的,或者兼而有之。
控制欲
这种快乐来自于易于驾奴的介质上工作。程序员,就如同诗人一样,几乎总是仅仅在单纯的思考中工作。程序员凭空地运用自己的想象,来创建自己的"城堡"。
在人类活动历史上,很少有创造介质如此灵活,如此易于精炼和重建,如此容易实现概念上的设想。
然而程序毕竟不是诗歌,程序时实实在在的东西;它可以移动和运行,能够独立产生可见的输出;它能打印结果,绘制图形,发出声音。神话和传说中的魔术在我们的时代已经变成现实。在键盘上键入正确的咒语,屏幕就会活动、变幻和显示出前所未有的也不可能存在的事物。
编程的快乐在于它不仅满足了我们内心深处进行创造的欲望,而且还唤醒了每个人内心的情感。