This website is a database for mllm’s work (research+projects+academia) produced from 2009/10. There are no categories, for time, scale or type. The works are displayed in an unhierarchical fashion and their configuration shifts every time the database is accessed in order to promote interaction and make in a way each project less intimate and more social.
|Object Oriented Design|draft11102010|
A few years ago, computer scientists invented the marvelous expression of “object-oriented” software to describe a new way to program their computers. We wish to use this metaphor to ask the question: “What would an object-oriented democracy look like?
“Bruno Latour & Peter Weibel,
From Realpolitik to Dingpolitic:
Or How to Make Things Public Making Things Public.
Atmospheres of Democracy’ (MIT Press: Cambridge, Mass., 2005)
The relationship between the discipline of architecture and computation has been a common field of theoretical concern since the 1960’s. However in the last two decades there have been new developments within programming that open entirely new possibilities for architectural design and have yet to be incorporated within the discipline of architecture. Distributed computation, generative and parametric design, open source software and most importantly object oriented programming are opening unprecedented possibilities for architectural design which need to be theorized. These possibilities will potentially be able to address the new requirements and constituencies that contemporary architecture is becoming subject to. The purpose of my research will be to explore those possibilities in the context of contemporary social and political dynamics and to advance what the effects that the application of these technologies may have in the discipline of architecture.
The Object-Oriented paradigm is a holistic approach that links material and social processes through new forms of artificial intelligence. Object Oriented Programming (OOP) produces complex and consistent organizations through simple rules of interacting objects that communicate, self-organize and develop ad-hoc communities. The distinctive feature of Object-Oriented Programs is that they are “flat” networks of actors and objects gathered up into assemblies. They act through simple, local rules, processing sensorial and physical data, figuring heterogeneous yet consistent wholes. These systems react locally to sensed aspects of the world, resolving conflicts generated within the distributed system.
The term OOP (Object Orientated Programming) makes its first appearance at MIT between 1950 and 1960, in the environment of the artificial intelligence group when objects as formal concepts in programming were introduced in 1960s in Simula67 together with the notion of classes, subclasses, methods and co routines. The smalltalk language came next, and introduced for the first time the term object-orientated-programming to represent the use of objects and messages as the basis for computation. However not until the early and mid 1990’s when programming languages supporting the techniques became widely available Object orientated programming developed as the dominant programming methodology. More recently, a number of languages have emerged that are primarily object-orientated among them, Python and Ruby…the most commercially important being VB.NET and Java.
As opposed to some more traditional architectural and computational approaches, OOP offers an alternative to the symbolic operative modes by focusing instead on material organizations and agencies. This opens a fundamental shift in artificial intelligence by rejecting the symbolic computational approach to create forms of intelligence by focusing instead on basic perceptual and sensorimotor tasks. In Rodney Brooks terms,“…It is possible for different parts of the system to “believe” wildly inconsistent things about the world.” The possibility of using Object Oriented Programming and Subsumption architectures to model contemporary material organizations may offer new alternatives to produce adequate architectural expressions for contemporary political ecologies.
These type of concerns are not alien to concerns that we can find in alternative disciplines. Philosophers such as Peter Sloterdijk propose an understanding of contemporary politics by absorbing the multiplicity of positions through a material mediation with no need to regularize or homogenize them. In this approach, politics are understood as a mass of hybrid forums that proliferate. He reveals the idea of customary disputes within those forums in a telling resonance with Beck’s argument on micropolitics.
Converging in a similar approach that recalls the nature of OOP, Bruno Latour claims to go back to things (objects) by proposing gatherings of hybrid ecologies. He rejects institutional politics and claims for what he calls object-oriented politics, as a much more effective way to represent the contemporary pixelisation of politics.
“It’s clear that each object —each issue— generates a different pattern of emotions and disruptions, of disagreements and agreements. There might be no continuity, no coherence in our opinions, but there is a hidden continuity and a hidden coherence in what we are attached to. Each object gathers around itself a different assembly of relevant parties. Each object triggers new occasions to passionately differ and dispute. Each object may also offer new ways of achieving closure without having to agree on much else.” His point being that “we don’t assemble because we agree, look alike, feel good, are socially compatible…”
Bruno Latour & Peter Weibel, From Realpolitik to Dingpolitic: Or How to Make Things Public Making Things Public. Atmospheres of Democracy’ (MIT Press: Cambridge, Mass., 2005)
Object Oriented Design vs Function Oriented Design
One of the most distinctive features of Object-Oriented Programs is that they do not distinguish between data structures and coded behavior, between data and function, as usual in programming languages. An object contains encapsulated data and procedures grouped together to represent an entity.
Another way of saying it would be instead of approaching design through the classical correlation of function and form or as Sullivan posed it “form follows function”, OOP focuses on the object by studying the types of objects and data that the project needs to relate. Instead of taking a function-oriented approach the research operates from an object-oriented perspective.
Object oriented design could therefore become an adequate instrument for architecture to engage more effectively with contemporary social and political dynamics. Moreover, the object oriented paradigm could develop alternative approaches in respect to some of the crucial discussions within the architectural discipline. The question of typology, the problem of organization and the subject of time may be radically reconfigured through the deployment of an object oriented approach to architecture.
The exploration of an Object Oriented design sets out the frame for an investigation that inevitably addresses typology as a fundamental disciplinary question. An object-oriented program usually contains different types of objects, each type corresponding to a particular kind of complex data to be managed. The classical notion of type is closely related with the notion of classes in object oriented programming. The OOP class is often compared with the genotype as they are structures coded with properties and functions. Following this parallelism, a program might well contain multiple instances of each type of object, what we might describe as phenotypical variations of the same type of object. The classical notions of typology from Quatremere and Durand, and their evolution through modernism towards Rowe’s formal interpretation and Rossi’s historicist approach constitute a theoretical background to discuss the potentials of object oriented design for architecture.
Organizational modes and assemblies
An object-oriented program may be viewed as a collection of interacting objects, as opposed to the conventional programming modes, in which a program is seen as a list of tasks to perform. In OOP, each object is capable of receiving messages, processing data, and sending messages to other objects, each object being viewed as an independent body with a distinct role or responsibility. The actions or methods that are embedded within each object, are often called behaviors. Usually these behaviors are common for the objects that belong to a particular class. The behaviors are the functions that will define the relationships between the objects and the environment and as a result generate different organizational modes. Notions related with organizational models, such as the organic and the rational, the bred or the designed… as well as possible connections to network theory, social networks, relational data and graph theory may become relevant to explore the potentials of object oriented design for architecture.
The notion of time
OOP allows us to understand the generation of form as a result of a consolidation that happens as a result of dynamic processes. The transformation over time that may happen to an architectural organization through growth, movement, association, dissociation, assembly, dis-assembly….is a relevant concern when theorizing OOP. In OOP the design process embeds the notion of an evolutionary dimension. Notions of evolution, ecology, environment and interaction or the changes that are subject to selection, repetition and dissemination, may become relevant to this research. OOP platforms make us inevitably focus on the relationships between dynamics and material organizations, understanding architecture not as a representation of dynamics but as a trace of dynamic processes. Among others, Friedric Kiesler and his ideas on correalism, Charles Darwin’s thoughts on the origin of species, Manuel de Landa and Deleuze and the genetic algorithm will be some references to be studied for this research.
The research will initiate with the analysis of relevant theories of architecture in respect to typology, organization and dynamics, trying to construct a reference frame system for the design experiments.
What kinds of entities does the project manipulate? What kind of relationships do we want to establish between the entities? How is the organization constructed over time? those are the questions that will construct the staging for each design experiment. The selection of type, the organizational behavior and the evolution in time being the different variables that may define the structural relationships of possible organizations. These design experiments will then be collected into a library of protocols and corresponding material organizations. These abstract material organizations may then be applied to real architectural problems varying in scale and context. Masterplan studies, layout proposals, façade paneling proposals… The library will present a field of possibilities that may cover different aspects of the architectural discipline [...]