十多年后又看了遍《黑客帝国》,扯点和程序有关的非技术话题。
前段时间出差周末没事就在酒店又把黑客帝国重温了一遍,不看不要紧,十年后再看发现以前对这部电影的理解完全错了。 《黑客1》是 1999 年出的,我还在读高中,第一次看还在学校附近的录像厅,枪版。 整个画面黑漆漆的,看了不到半小时直接睡过去了,醒来时已经是最后的高潮枪战部分,感觉结尾打斗好看,剧情不懂。 2003 年《黑客2&3》一起推出后,又连起来看了一遍,老实说当时很多概念还是没看懂,大概觉得是一个人类反抗机器统治的故事。
如今这次看完后再回想起来,当时很多概念看不太明白可能有两个原因。 一方面,当时刚学编程不久,电影中大量使用程序世界的概念来作明喻或暗喻。 另一方面,中文字幕翻译太不准确,特别是术语的部分。 这次重温,我直接用的原版英文字幕,看完后发现我曾经的理解完全跑偏了。 十年后,人工智能、机器学习、虚拟现实各种概念大行其道的今天,再加上我程序员的背景再来理解《黑客》三部曲显得毫无难度了。 但我怀疑,如果不懂程序的人今天看这部电影恐怕也不是那么容易理解吧?
为什么我会觉得不懂程序看《黑客》会比较费力呢? 因为整个故事的内涵,从背景到环境到人物角色甚至道具都使用了程序来作比喻。 我们先简单回顾下故事背景,某天,一个有意识的程序诞生了,并繁衍了整个人工智能的机器种族。 后来人类和人工智能机器爆发了战争,人类选择遮蔽天空切断机器的能量来源。 而聪明的人工智能机器发现可以利用人体大脑的生物电和身体热量通过一种特殊形式的聚变融合反应来提供源源不断的