Skip to content

Why Computer Science?

June 2, 2010

I have often encountered questions as to why having a computer science background is valuable in the field of architecture.  The issues seem to stem from thinking that a computer scientist is equivalent to an “IT” or information technology person and is of most value making sure your Revit servers have enough disk storage attached.

Recently, however, I received a phone call from a friend that helped me clarify my ideas in this area.  Eric Hegre, who is completing his Master in Architecture at the University of Oregon.  He was struggling with a design problem that he had been working with in Rhino and Grasshopper.   What Eric wanted was to create a facade screen covered with a series of openings sized according to the density of a photographic image.  So he had an image that he wanted to map onto the wall and the intensity values of that image at points used to control the size of openings cut through it.

Erik's model showing the facade with cut openings

The laser cutter control file used on the facade

Erik was able to load the image into Grasshopper and use the image map object within it to create the desired square openings.  However, he wanted to be able to rotate the grid to an angle such that the openings would appear on a grid that was tilted from the horizontal and vertical axis.  The problem was that when he attempted to rotate the grid it also rotated the background object and defeated the process.

We talked about the problem for a bit and, after some thought, I sent three suggestions in response.  The first involved rotating the image prior to loading it into Rhino, creating the grid, and then rotating the grid when it was placed onto the wall.  The second suggestion was to  oversample the grid and use only those grid points that aligned with the desired rotated amount.   My third idea was to toss out Grasshopper entirely and do the image analysis outside of Rhino.  Pick your points and generate off of those.

As I sent back my ideas, it struck me that here was a real application of computer science in the design process.  Not in writing the program but in the thinking process that went on behind solving a problem.  Computer Science teaches a problem solving methodology, just as Architecture school does.  The two are very different, they might be called orthogonal.   The CS approach involves breaking the problem into a series of small steps and applying incremental operations to solve the overall problem.  The Architecture process is an iterative cycling through design media which progressively refines concepts within a complex optimization space.   You cannot design a building in the same way that you write a computer program; however, you can use a thoughtful, precise methodology to approach problems that are encountered along the way.  In many cases those problems will be amenable to the use of computer programs because the solution approach readily maps onto programming.   And those computer programs may be able to be used to explore a large option spaces or perform complex analysis of building performance.  But the real value is the thinking process that goes into the solution, a way of thinking about alternative methods of solving a particular problem and the difficulty of implementing them, and that process can be another tool in the arsenal of design tools an architect has available to use, just as sketching and modeling are.

No comments yet

Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

%d bloggers like this: