这本建筑书如何影响了程序员
Christopher Alexander 是程序员的偶像,他在编程领域的名气超过了他所在的建筑师行业。作为加州大学伯克利分校的教授,现年83岁的亚历山大每次出书都是大部头,最近一本是《秩序的本质》,力图探讨人与宇宙的本质问题。而他在1977年完成的《模式语言》(A Pattern Language),或许在建筑学术领域火花较小,却影响了当代主流编程思想的成型。
Christopher Alexander(1936-)
1990年前后,计算机编程领域进一步明确了“面向对象”(Object-Oriented)的编程思想。当时有四位程序员(这4人小团体叫Gang of Four)编写的《设计模式语言》具有里程碑的意义,他们便是受Alexander的书启发。在编程领域的这场变化,是一场自上而下受时间操控的意识形态转向离散的个人主义。
在那之前,初代的程序员们思考一个程序的架构倾向“面向过程”,这种架构的思维如同生产流水线,打个比方,如果要编写解决“把大象放进冰箱”的程序,程序本身就按照“开门、放入、关门”这样的步骤编写。而“面向对象”编程的出发点是事情的参与主体,便是你、大象或冰箱,程序按照主导角色的行为和状态展开。换句话说,后者的思维更加偏向人类理解客观事物的方式,适应处理复杂的事物。
诞生于1995年的Java就是典型的“面向对象”式编程语言。如今“面向对象”思想在各主流编程语言中都存在。
程序员们用“封装”、“继承”、“多态”描述面向对象编程语言的特性。“封装”是打包某个事件内所有数据及其相关的一切操作语言——这个特性最明显的体现就是智能手机中的一个个app,所有行为都被装进一个简单明了的入口之内。后两个属性,与Alexander在《模式语言》中的建筑观念类似,即是便于任何人对事物局部或整体进行拓展和修改;同一个逻辑或事物应用在不同对象身上产生的效果不尽相同。
这种可保持长期灵活的维护与修复,事物之间低耦合(彼此协调的门槛低)是Alexander的理想,无奈于在建筑领域会受到诸如政策、成本等多方面的限制,却在软件领域实现了。也就是说,Alexander与同事编写的《模式语言》并非是一个建筑师的归纳总结,而是要让所有非专业者能够将这本书当做指南,自己设计、组织编排、建造住宅和各类场所。他与Stewart Brand都是反文化运动中召唤人们亲手创造的人。
Alexander其实也仍在设计一些项目,但就像他设计的这座私宅,你似乎感觉不到“设计”痕迹。
Alexander试图吸收人类社会现实中错综复杂的一切客观事物,从瓶瓶罐罐到城市——正是这个吸收所有复杂性的野心让这本书影响了编程思想。1990年后伴随PC普及,电脑程序已经要用来处理从芝麻蒜皮到大型机构运作等不同尺度问题,恰好可以投射在Alexander在书中思考的所有对象身上。值得一提的是,也难怪Will Wright受其启发设计了游戏《模拟城市》和《模拟人生》。
《模式语言》一千多页,他归纳总结了253种“模式”,但这些模式确切说不是建筑的模式,而是先从人类集体与个体的各项普遍行为及感知出发,而创建的客观人造事物的理想模式。因此在那些模式中,你无法找到一种统一的逻辑关系与主体,他将人与场所、空间、城市和乡村看做整体,再概括出各种模式。
《模式语言》中的一些小型模式
举几个微小的例子。Alexander说到需要重建工作与爱情的关系。他认为“生活”成为死气沉沉工作之地以外的行为统称是奇怪的,因此他构想了“分散的工作点”模式,可以插入居民区。他又提出任何场所都应将男人与女人的需求融合考虑,此处插一句,他提到战争期间的政策显然就是男性利己主义的产物。他也提出一种产妇、婴儿、助产士等角色的“分娩环境”,并提议可以在社区中分布这种模式。甚至还有一种“在公共场所打盹”的模式,相对遮蔽,不受人流影响,要让犯困者与他人都对在公共空间打盹这件事感到自然,比如分布在高楼阴影处。
Alexander首先脱掉了他的建筑师身份。他构思的这些模式缘起于人的心理及相关的行为、人与建筑和场所彼此作用的关系等等。其实比起他呈现在书中的结果,他与同事如何着手这本书的过程对于今天而言或许同样具有参考价值。做问卷,用科学方法分析,当然还有他的私人角度,例如他偏爱房子门廊外的野花。
现代主义时期的建筑思想更像是管理者或是当局的产物,尽管大家的初心是善意的——为了让所有人都过上好日子。但基于绝对公平的理想就导致了当时的城市规划理想趋向均质。但这是必经阶段。若将柯布的《明日之城市》与《模式语言》放在一起看,二者出版相隔50年,在都是宏大视角下的着眼点已经完全不同。
在出版《模式语言》之前,Alexander正好受俄勒冈大学的邀请参与设计校园。那是一项民主计划,他把校园的使用者分成一个个群组,如不同专业的学生、教职人员等从一开始便参与各个功能性建筑的决策,并共同完成设计与建造。1981年,他又在东京附近的一所大学(Eishin Campus)进行了类似的实践。
Eishin Campus的一些历史图像
Alexander更加关注普通的生活。近年他也在意大利的Sorrento等地继续参与性的社区建筑改造计划。当社会分工及层级思维圈定了人在社会机器中的自我认知,也能像Alexander这位非典型建筑师一样,持续的研究温和地渗透其他领域。
*感谢Robin为本文提供线索
关于Alexander更多实例可参见 https://www.patternlanguage.com/
设计研究・设计媒体・设计咨询・策展・品牌策划
《DEMO》第三期正式上市
点击 阅读原文 购买第三期