DDD Episode 001

The 21st Century Toolmaker ft. Andrew Heumann

Abhijeet Ghavalkar: [00:00:00] If you go to San Diego Zoo and happen to stop by the bonobo enclosure, you should consider taking some time to observe these close relatives of ours. There’s a good chance that you’ll eventually catch one of them searching for wooden sticks that have fallen from one of the trees in their reserves. If they find a satisfactory piece of wood, they hop to one of the termite hills and carefully insert the stick into one of the tiny entrances. Soon after, they extract the stick now filled with clueless termites and eat them. The primates – often considered the smartest animals besides us – have done something that we humans see as absolutely essential to our well-being and survival. They used a tool. 

Franklyn Bucknor: [00:00:42] Life as we know it has manifested in an abundance of forms in Earth’s diverse and dynamic environments. 

We’ve observed extremophiles — microorganisms that can endure insane levels of cold, heat, pressure, and various forms of radiation. There are creatures that can breathe oxygen underwater: among them the Anglerfish that devised light well before Edison or anyone else. And then there are spiders that weave beautifully artistic webs just to make sure that they don’t miss lunch.

Some of them are flightless, but birds have worked harder to defy gravity than any other species, freely roaming the sky and flying for miles with their hollow bones.

And then fungus is just a whole ‘nother thing, with one of the mycelia kingdom’s least impressive feats being their ability spread themselves underground in order to create massive neural networks.

Suffice it to say that life on Earth has demonstrated incredible creativity and downright ingenuity in the strategies it might employ over time in order to adapt to its environment. Life on Earth has proven that toolmaking is a skill that is fundamentally critical to a species’ survival on Earth. 

Stephen Jay Gould, paleontologist and evolutionary biologist, authored ‘The Panda’s Thumb,’ a collection of essays on evolution. The title is a nod to the Panda’s thumb, which Pandas use to effortlessly shuck bamboo much like a carrot peeler.

But as it turns out.. Pandas… actually… don’t have thumbs. In what Gould describes as the ‘greatest work of modern evolutionary anatomy,’ pandas’ “thumbs” are actually just enlarged versions of a bone in their wrists that all bears have.

Part of what defined the panda’s divergence from other bears is a specific gene that correlates to the enlargement of that bone. As pandas adapted to their environments over time, their tendons took seize of this bone, enabling it to function and move more like a thumb. To be clear: Pandas evolved to straight up have bamboo can openers on their hands for free. That’s crazy.

Gould goes on to quote biologist Francois Jacobs, who posited that “Nature is not a divine artificer, but an excellent tinkerer.” There’s also Michael Ghiselin, a 20th century biologist and philosopher, who described the artifacts of this process as ‘contraptions, not lovely contrivances.’ Even the contextually problematic Charles Darwin said “Although an organ may not have been originally formed for some special purpose, if it now serves for this end we are justified in saying that it is specially contrived for it.

On the same principle, if a man were to make a machine for some special purpose, but were to use old wheels, springs, and pulleys, only slightly altered, the whole machine, with all its parts, might be said to be specially contrived for that purpose. Thus throughout nature almost every part of each living being has probably acted in the living machinery of many ancient and distinct specific forms.”

These four scientists all rebuked the idea of intelligent design, but agreed that over time nature responds to its environment by tinkering and contriving. Nature is the first, and perhaps the ultimate, toolmaker. As Gould put it, “Odd arrangements and funny solutions are the proof of evolution.”

So, to that end — what sets us apart.. as homosapiens? What is the hallmark characteristic of our intelligence that differentiates our species from everything else? We think that the answer can be found in the *uniquely* human approach to toolmaking: A practice that is rooted in the primal interest of responding to our environment, and with modern self awareness, might also be thought of as inseperable from designerly practices that have defined our shared material culture. 

Abhijeet Ghavalkar: [00:04:43] Out of the over 1.2 million species ever discovered, only one has been observed to make tools that help create other tools: The human. One specific human, fittingly named, “Andrew Heumann,” represents the spirit of designing tools like no other. He is a designer, architect, and software developer who made a decade-long career out of creating digital tools to facilitate automation. 

In Heumann’s first year of architecture school, he stayed up the entire night before a design critique that left him in tears; painstakingly cutting museum board using an X-Acto knife, only to decide that he wanted to quit architecture at 5:30 the following morning. Soonafter, the software publisher McNeel released a plugin called Explicit History — later renamed Grasshopper — for its 3D-modeling program Rhino. It changed the course of his life. Andrew was introduced to Grasshopper in his second year, and discovered that a script already existed for automating the task that he spent a sleepless night on in seconds

Andrew Heumann: [00:05:41] I love grasshopper a lot. It’s obviously shaped who I am and my career and my interests. It really was this incredible empowering moment. It has always felt like having super powers to me. It’s like, you build this relationship with this thing and you learn how to encamp certain words or draw certain archaic diagrams and rooms and magic happens. It’s like the craziest thing. It’s incredible that it allows you to take ideas and turn them into self-contained entities that have their own, certainly their own capacity for action. And maybe even to a limited extent, their own agency, like that’s magic to me.

Grasshopper is a scripting environment for a 3D modeling program called Rhino. And what that means is that rather than just modeling stuff, rather than just drawing a thing or saying, okay, I’m going to put a box over here, you write a process that defines where that thing goes. And you can start to build up increasingly complex logical, or sometimes illogical processes that produce these results and it’s this feeling of tremendous possibility to be able to always explore alternatives in any direction.

Abhijeet Ghavalkar: [00:06:56] Grasshopper introduced Andrew to the world of computational design, which, as he describes it, is the application of coding or programming techniques or algorithms to a design process. Designers generally rely on their intuition and experience to solve problems. Computational design augments that process by encoding decisions using computer programs. Andrew employed these principles of computational design and automated certain mundane and repetitive elements of the design process. By delegating tasks that can be parameterized and encoded to computers and automating them, humans can free up more time for non-repetitive, creative tasks.

Andrew Heumann: [00:07:33] There are a lot of different pieces of software and a lot of tools and a lot of different ways to approach this. But fundamentally it’s about instructing the computer to execute your design intention in a certain way and oftentimes because the computer can study many alternatives or can run through options very quickly, this becomes kind of fundamentally a different way to design because you can do things like try a thousand options or analyze the results of something and say, okay, this one is better than that one according to some analysis result. Or even randomize aspects of the design and say, I don’t know what I want, but just try a bunch of things and let’s see what sticks. It became an incredible on-ramp for a whole generation of folks who maybe didn’t know how to write code to allow them to start thinking algorithmically and building computational models. It has totally revolutionized how design is practiced.

Abhijeet Ghavalkar: [00:08:29] Andrew is well known within the Grasshopper community, especially for a plugin he developed called Human UI, which allows users to create interactive visual interfaces for their Grasshopper scripts. Human UI leverages traditional interface elements like sliders and text boxes, allowing people to use highly complex, and arguably intimidating, Grasshopper scripts in a way that is simpler and significantly more accessible. Human UI is brilliant for yet another reason: It demonstrates the power of abstraction when mindfully navigated for making tools. 

Andrew Heumann: [00:08:59] To build good software , it’s right at the core of this chasm between what a computational intelligence can do and what a human intelligence can do. I’m always interested in what role it plays there, whether it’s in the design of software tools or just the design of conceptual frameworks, they’re all about selecting some things as relevant and discarding some things as irrelevant. And there’s a real art to that.

Franklyn Bucknor: [00:09:24] HumanUI elegantly accomplished what Andrew described. Rather than having to constantly interface with intimidating grasshopper scripts that contain hundreds of inputs and outputs and booleans, a designer can instead work with a dramatically simplified interface that only presents what is relevant to operating the script in order to have the desired outcome. 

Everything else, all of the wires and booleans, and all of that confusing stuff that isn’t important — exists in the background and the designer becomes even more free to do what they do best: design. This plugin is especially powerful when handing off Grasshopper scripts to individuals who weren’t involved in the design of the scripts; thus effectively democratizing access to computational design, and/or removing the friction that might manifest in a resistance to its adoption. 

Human UI is designed to make operating Grasshopper, a plugin built for operating Rhino, easier. This makes Human UI a nested tool — a tool for a tool for a tool. 

Andrew Heumann: [00:10:29] I think that the capacity to take a bunch of details and then reduce them to only their salient features is like sort of the essence of abstraction. And that’s also the essence of how we think. We don’t consider all of the things that we know in the full richness of detail until we need to, we can kind of like dive deeper and deeper and get into more and more resolution but part of what makes us  powerful machines for thinking is our capacity to  reduce things to their salient features. I do think that there’s an aspect of this, which is core to design practice. 

I think that we effortlessly move between thinking about super super, super high level problems like why are we building this damn building? Where does it go? How does it work urbanistically all the way down to extraordinarily minute details? Like what should this door handle look like and feel like, and how should the click sound.

So I talk and think a lot about abstraction because I think , it’s one of those things that you really have to get right.

Franklyn Bucknor: [00:11:40] Mastering the skill of navigating abstraction — which Heumann has also paralleled to the mental processes that guide the inventing of strategies in a designerly context — has led homosapiens to the next level of toolmaking that began to truly separate us from other species: creating tools using previously created tools.

Our ability to do this totally redefined what a tool is. Creating tools with tools, and designing tools that would be used to explicitly make other tools, changed everything.

As an example, we might consider how a saw, a tool for cutting and shaping materials, could be used to cut some wood and make a chair, which is a tool for sitting.

Maybe more relatably, we might consider the umpteen tools *used to create the tools* that manufacture smartphones… which is wild because smartphones themselves are tools! On top of that, smartphones host recursively nested tools in the form of apps. You could think about how smartphones have cameras that allow you to zoom in and out and decide what object you’d like to focus on and even have lights you can use in case it’s too dark to take a good picture. In that sense, smartphones are tools for photography. But the nesting of tools doesn’t stop there. Apps like Instagram spawned out of the new wave of phone photography and act as nested tools for editing, curating, and documenting one’s smartphone photography. There are even further nested apps like Layout and Boomerang which you can use to prime images for Instagram. Tools, for tools, for tools, for tools. It may go without saying that those apps were also built using an incredibly diverse set of tools. As far as life on Earth goes, humans are in a league of their own with their tools.

But today, humanity has found itself entering the next, next levels of toolmaking — which itself is yet another degree of abstraction from what tools have historically been and the affordances they’ve granted.

Our species has recently begun to create tools, almost exclusively by using other tools, that can perform explicit functions, make decisions, and even offer solutions to defined problems — autonomously. In some instances, these tools participate in the process of making other tools like in the earlier example of automated manufacturing lines for smartphones.

We are now in the year 2021. The latest tools in this category are beginning to incorporate Artificial Intelligence and Machine Learning strategies, allowing tools to act autonomously in ways that are more contextually nuanced than, say, doors in front of a grocery store that can open or close if something is close to the door.

These new tools are, in many ways, the most powerful and far reaching tools that our species has ever been exposed to. And as such, they come with an unparalleled share of promise, but not without ample perils and equally powerful potential for misuse.

There is an incredibly active ocean of dialogue around what AI and ML powered tools mean for society. A subset of this dialogue focuses on the inevitable ubiquity of such tools, and what that means for workers. Will workers be replaced by machines?

Creatives and designers are by no means immune to the implications of this shift — just look at the rapidly growing field of generative art. Once an algorithm has been made, within seconds, it can create hundreds of thousands of museum worthy pieces that would have taken years, even decades or lifetimes, to craft using traditional methods. It’s insane. And so, here, now, today, one of the largest questions in the design community is, will design change because of this ? If yes, how ?

Will designers cease to exist altogether as intelligent AI autonomously spin up their own companies and make their own logos and websites and software platforms based on algorithmically deducing what products or services can be optimized, or don’t exist and logically should?

Without a crystal ball to gaze into, the most accurate answer to those questions is ‘maybe,’ and if not maybe, then ‘yes.’ That being said, Andrew has three enlightening stances that might inform your outlook and have certainly influenced our perspective:

First, the inherent value of a thing — of an artifact of design — is correlated to its difficulty. Meaning .. though the development of a robust algorithm is certainly an intensive task that is markedly difficult and valuable, once the algorithm is contextually “done,” the things that are generated by the execution of an algorithm fundamentally lack a dimension of difficulty that things made by human designers have. Because of that, designs that are generated in whole or in part by the execution of an algorithm are arguably less valuable:

Andrew Heumann: [00:17:12] I think a lot of the value in creative production is in the recognition of it as difficult.

 If it’s automated, it’s fundamentally not difficult. If I could automatically produce, a thousand Mona Lisas a thousand,  Mozart, concertos, whatever, with some machine, it’s not that the concerto is objectively get worse.

 I found that immediately if I could recognize the filter, I wasn’t interested in it anymore. If it was too easy, it didn’t feel like a valid creative production.  I think part of the value we ascribe to creative pursuits is the perception of the effort and mastery that went into producing them.

Things are appealing to us when we look at them because we’re like, Oh, someone did that. Someone put some thought into that, someone really thought of everything. They really did something surprising or amazing to me.

Franklyn Bucknor: [00:18:04] Andrew’s second stance is that human designerly intuition cannot be codified in an algorithm.

Andrew Heumann: [00:18:11] I think that design creative intuition has many of the aspects of intelligence full-stop and you can’t do it without something that is a thinking entity. Can a machine have a creative intuition? I believe it can. Could it be specifically a human screen of intuition? I questioned that. I think that Artificial intelligences are , likely to have intelligence that we would identify but that doesn’t mean that they’ll behave or think or be like human intelligences. So in the same way an automated creative intuition is not the same as a humans creative intuition.

Franklyn Bucknor: [00:18:48] And third, alongside a human designer, algorithmic tools are most powerful when viewed as collaborators, not competitors. And perhaps more importantly, to say that generative, or algorithmically driven solutions ‘design’ things is totally inaccurate — today, algorithms simply explore, and perhaps extrapolate or interpolate from, solution spaces that were pre-defined by a human and regardless require human intervention. Andrew elegantly communicates this idea using a graph where a horizontal axis represents the ability to invent different strategies, a task that humans excel at, while an intersecting vertical axis represents the absolute exploration of a strategy, which algorithms excel at. 

Finding and defining solution spaces is a pillar of designerly practice that exemplifies the human ability to freely navigate strategies, and much like navigating abstraction, the ability to do so not only separates homosapiens from other forms of life on Earth, but also from machines:

Andrew Heumann: [00:20:03] Human designers effortlessly slip between two modes of working. sometimes they’re exploring a single strategy in depth. It’s like, okay, this is the approach. Let me try a bunch of variations of this approach. Or, let me try a totally different approach. Let me invent a different strategy altogether.

And generative design is really only good at one of those axes. So it’s been my assertion, that tools that incorporate generative design need to also permit a high level of manual intervention and the opportunity to test and explore a lot of strategies. 

There’s this constant  happening of scales and hopping levels of abstraction of a design problem , that I think this vision that you can just plug in all the constraints and all of the things that you’re trying to achieve and get a good result often sort of obscures. 

Once a year or so. There’s some big, scary article about architects being automated out of a job. And I think they’re kind of preposterous on their face. In my view, that’s not to say that there isn’t some risk of, you know, job loss from automation, but in general, the human process of doing design is not going to be made obsolete by a machine.

 Algorithmic automated pieces of this process will be deeply integrated into all steps of the design process, but that doesn’t mean that we can take the human out of the loop completely. And in fact, computation makes a great creative partner if it’s used right. 

And so this question, this idea of. The computer as a creative partner has also been a major preoccupation of another side of my life. So for a long time, I’ve been using Grasshopper and scripting and things like that, that I use during my day job to build practical tools, on the weekends to create visual abstractions or generative art, if you want to call it that.

Abhijeet Ghavalkar: [00:21:56] The distinction of humans as a species and the ever-growing divide between our species and others is directly correlated to the nesting of tools. In recent history, we have moved past being animals that just build tools for tools. Today we build tools for tools for tools for tools. Every time a human invents a new, more intuitive tool that helps other humans operate all underlying tools, we collectively make a small jump forward in our evolution.

As the design community continues to evolve, there are two lessons that we can learn from Andrew Heumann: 

  1. Andrew is a transdisciplinary designer– an architect turned software developer. By existing at the intersection of these design domains, he holds unique perspectives that enable him to define disciplines, and participate more meaningfully in the emerging discipline of algorithmic and generative design.
  2. We can learn from his bravery. When faced with a new tool as a second year architecture student, Andrew didn’t just shrug it off. He was inspired. His designerly curiosity was ignited, he embraced Grasshopper, and mastered it. 

That being said, designers need to be conscious about the consequences of algorithms. Designs that leverage big data and algorithmic approaches have the potential to create unparalleled harm for society, disparage marginalized communities, and affect the world on an order of magnitude beyond any other technology. 

While the idea of automation can be daunting, it can also be seen as an opportunity to adopt the spirit of bravery that Andrew had when he entered the realm of algorithmic design. Now is the time to be brave. Designers should embrace the possibilities of AI and automation and fold it into their workflows. Andrew has posited one framework for what designing alongside algorithms might look like — but how will you do it?