COMPUTATIONAL
The fact that digital design workflows work with digital data means that we can use techniques inherent to computers to manipulate our designs.
Design process itself can be implemented as a parametric process within software environments which support this. For example, within Rhino, which is a CAD modeling software, it is possible to write Python code which does the drawing or modeling for you. Rhino plug-ins like Grasshopper (fully integrated into Rhino 6) provide a visual programming interface which uses blocks of components and wires as connections between them. Computational design techniques (design which heavily employs methods from computer science) expand what is possible to design inside a computer and represent the most powerful digital design workflow architects and designers have at their disposal. These methods are still very experimental and are the topics of ongoing academic research, but they are also already used for decades in world-leading architectural and design offices (Gehry Partners, Zaha Hadid Architects, Foster + Partners, Herzog & de Meuron etc.)
Computational design techniques use code written in various programming languages to generate, execute or modify a design. Unfortunately, knowledge of programming is not a standard part of architect’s or designer’s curriculum while studying, therefore these techniques remain largely unknown to the general design professionals.
Luckily, you don’t have to be a professional computer programmer to employ computational design techniques in your design. Already a little programming knowledge can get you a long way. At worst, it can help you automate and speed-up boring and cumbersome tasks while designing. At best, they can enable you to expand your designs beyond what is possible with only manual (digital) means. Parametric design techniques can help you to “parametrize” your design process and quickly produce many variations of your designs, as well as implement changes which propagate automatically through your entire design. This will save you a lot of time as you will not have to manually redraw or remodel everything. Some designs are not even possible to model manually, even when using a computer. Without coding, they will stay forever out of reach. This in turn causes computational design projects to have a certain aesthetics or a style, which can be both a bad and a good thing.
The truth is, this is true for all workflows, both analogue and digital, both manual and computational. They all imbue a certain aesthetics to designs produced through them.
Knowledge areas & Sub-topics
LOGIC | MATHEMATICS | FABRICATION |
PROGRAMMING
variables loops conditionals functions objects |
FUNCTIONS
objects operators analytic geometry |
SUBTRACTIVE
CNC milling laser cutting wire cutting |
DESIGN STRATEGY
morphological state-change recursive behavioral |
LINEAR ALGEBRA
vectors transformations |
ADDITIVE
3D printing robotic assembly |
GEOMETRY
descriptive geometry primitives curves and surfaces meshes and lattices |
TRANSFORMATIVE
CNC bending |