I am an assistant professor in the Computer Science Department of Columbia University. My research is in human-computer interaction (HCI), crowdsourcing, and computational design.
I build tools enhance people's problem solving ability. The three main approaches are to:
Design is an the process for solving problems. It is used in disiplines ranging from architecture to software to graphic design. We know that experts follow the design process, we don't fully understand how to do it, how to teach it, or why it is successful. Let's break down and rebuild the design process from the ground up.
Start with the assumption that the design process can be viewed computationally: that it has modules that can be isolated and then computationally composed. We can then see design as a search process for transforming an input into an output that meets a desired specification.
Such a model enables:
Two current project I have in the computational design space are:
Design is a highly creative domain with many excellent solutions for a single design challenge. It seems highly unlikely that there is no simple formula for good design.
However, centuries of thinkers and practitioners have come up with structures they use to describe their process, either abstractly or anecdotally. We can borrow structures and define them more rigorously.
The central model of design according to the the philosophies of design thinking is the notion of flare and focus.
We borrow the flare and focus model and apply it to both visual blends and humor, using “brainstorming tools” to expand the input into many different ideas, and using "synthesis tools” to combine the pieces we need together.