第8章(1 / 11)

加入书签 本章报错

黑客与画家强烈推荐:

说来奇怪,如果你希望自己้的作品对未来的人们有吸引力,方แ法之一就是让你的作品对上几代人有吸引力。我们很难猜想未来是什么เ样子,但是可以肯定,未来的人们不会在乎今天流行的风潮,这一点与上几代人是相同的。所以,如果你的作品对今天的人们以及1500年的人都有吸引力,那么它极有可能ม也๣会吸引2500年的人。

以永不过时作为ฦ目标是一种帮助自己找到最佳答案的方法:如果你不愿别人的答案取代你的答案,你就只好自己้做出最佳答案。某些大师的作品太过杰出,永不过时,使得后人几乎难以在该领域立足。自从1้6世纪出现了德国雕刻大师๲丢勒durer,后世的雕刻家都因为自己的作品被拿来与他的作品作比较而苦不堪言。

如果你是一个黑客,并且想自己创น业,可能会有两ä件事情令你望而却步,不敢真正开始采取行动。一件是你不懂得管理企业,另一件是你害怕竞争。可是实际上,这两件事都是没有通电的电篱笆。

eb怀特

曾经从一个农民朋友那ว里听到เ一则趣闻。许多农场用电篱笆防止奶牛逃跑,但是不少电篱笆其实并没有通电。不过奶牛们已๐经吃过苦头,显然学会了不去碰电篱笆,这时不通电也๣能ม起到效果。“奶牛们,行动吧!”他写道,“趁着统治者打鼾时,夺回你们的自由!”

我猜想,道德禁忌的最大制造者是那些权力斗ç争中略๓占上风的一方แ。你会现,这一方有实力推行禁忌,同时又软弱到需要禁忌保护自己的利益。

那些团体神经越紧张,它们所产生的禁止力量就越大。伽利ำ略因为宣传日心说而遭到教廷的审判ศ,这件事讽刺的地方在于,他只是在宣传哥白尼的观点,而后者却安然无恙。事实上,哥白尼不仅不反对教廷,还是一个虔诚的天主教教士,他把自己้的着作献给教皇。不幸的是,伽利略正赶上教廷内部反对派上台,宗教改革被压制,任何非正统的思想遭受到เ前所未有的严厉控制和禁止。

我们的时代是程序员主导的时代,而伟大的程序员就是黑客。

每个人日常生活的很大一部分都花在与计算机打交道上面。家用电表是智能的,通信网络是程控的,信用卡是联网的,就连点菜都会用到电子菜单。越来越多的迹象表明,未来的人类生活不仅是人与人的互动,而且更多的将是人与计算机的互动。

但是,真正的问题在于,并行计算到เ底能达到เ哪个抽象层次?一百年后它就会影响到开应用软件的程序员吗?或者,它还只是编译器作者需要考虑的事情,在应用软件的代码中ณ根本就无处寻觅?

一种可能是,大多数可以用到并行计算的场合,人们都会放弃使用并行计算。虽然我总的预测是未来的软件会挥霍掉大部ຖ分新增的硬件性能,但是并行计算是一个特例。我估计随着硬件性能ม得到เ惊人的提升,如果你明确地说想要并行计算,那么肯定可以得到เ它,但是通常情况下你不会用到它。这意味着,除了一些特殊的应用程序,一百年后的并行计算不会是那种大规模的并行计算massiveparallelism。我预ไ料,对于普通程序员来说,一切更像对进程进行分叉,然后让多个ฐ进程在后台并行运行。

这是编程进行到很后期才要做的事情,属于对程序的优化,类似于你想开一种特定的数据结构来取代现有的数据结构。程序的第一个版本通常会忽略并行计算的各种好处,就好像编程开始时会忽略某种特定的数据结构给你带来的好处一样。

除了某些特定的应用软件,一百年后,并行计算不会很流行。如果应用软件真的大量使用并行计算,这就属于过早优化了。

一百年后会有多少种编程语言?从最近来看,出现了大量的新语言。硬件性能提高是一个原因,这就允许程序员根据使用目的在运行度和编程便利ำ性之间做出不同的取舍。如果这就是未来的趋势,那么一百年后强大的硬件只会使得语言数目变得更多。

伹是,另一方面,一百年后的常用语言可能ม只有很少几种。部分原因是基于我的乐观主义,我相信在未来,如果你的作品确实很出色,你可能选择的是一种开起来很方便的语言。使用这种语言写出来的软件第一版的运行度很慢,只有对编译器进行优化设置后运行度才会提升。既然我抱有这种乐观主义,那么我还要做一个预言。有些语言可以达到เ机器的最高效率,另一些语言的效率则慢到刚刚ธ可以运行而已,两者之间存在巨大的差ๆ距。我预ไ言一百年后,这段差距之间的各个点上都会有对应的编程语言存在。

因为这段差距正在变得越来越大,所以性能分析器profiler将变得越来越重要。目前,性能分析并没有受到重视。许多人好像仍然相信,程序运行度提升的关键在于开出能够生成更快代码的编译器。代码效率与机器性能的差ๆ距正在不断加大,我们将会越来越清楚地看到เ,应用软件运行度提升的关键在于有一个好的性能分析器帮助指导程序开。

我说将来可能只有很少几种常用语言,但没有把用于特定领域的“小众语言”little浪uage算进去。我觉得,这些嵌入式语言的想法很不错,一定会蓬勃展。但是我判断这些“小众语言”会被设计成相当薄的一层,

↑返回顶部↑

书页/目录

黑客与画家