为什么对编程这么狂热,我自己也解释不来。我姑且说说看吧:在编程的人看来,编程是世上最有意思的事情了。它要比国际象棋之类的游戏复杂得多,你想要什么规则都可以自己设定。按照你定下的规则,它的结果该是什么,就会是什么。
不过,似乎在外行人看起来,编程简直是地球上最无趣的事。
编程刚开始会令人觉得特别刺激,这个原因倒很好解释:因为你让电脑干什么,它就干什么,没有毫厘偏差,并且永远服从,毫无怨言。
这本身就很有意思。
虽说一开始是电脑的盲从让你对编程入迷,但是单靠这一点,并不足以让你真正喜欢上编程。事实上,电脑的盲从很快就会让编程变得无趣。编程真正让人欲罢不能的魅力是:你想要让电脑干什么事之前,必须先弄清楚,怎么样才能让它这么干。
我个人觉得,计算机科学和物理科学有不少相似的地方。它们都是在一个非常基础的层面,探讨整个学科的运作原理。当然,不同的是,在物理科学,你得去弄清楚这个已存在的世界是如何正常运转的;而在计算机科学上,你得从零开始创造出一个新世界来,而且还得设法让它正常运转。在计算机的世界里,你就是创世者,对这个世界里发生的一切都有最终决定权。

……

不过事实就是如此。你在电脑上创造出属于自己的新世界,而唯一的限制就是电脑本身的性能,还有,还有一点在今天尤为重要,要就是你自己的能力。

……

编程是一项充满创造力的过程。

……

不过,大部分时候,你并不是再创造新世界。你写一个程序,其实只是为了让它执行某个任务而已。在这种情况下,你就不是在创造新世界,而是在这个已存在的计算机里解决一个具体问题。要解决问题,就得好好思考问题。但是,光是坐在电脑前盯着屏幕思考,就能把问题想通的,只有一些比较怪异的人才能做到。比如说,像我这种呆子气十足的怪胎就做得到。

……

我还是很难解释清楚,闭门三天冥思苦想却徒劳无功,找不到一个漂亮的好方法来解决难题,这编程到底有什么好着迷的?其实,一旦找到了解决问题的那个漂亮方法,那种感觉就会是无与伦比的。