I’ve spent a lot of time this semester in a nurturing role – at least, that’s one way to put it. For my Artificial Intelligence (AI) class, I spend hours each week in the computer lab, co-parenting intelligent computer agents with my lab partner. As part of my hands-on environmental studies class, Our Food, I have become the proud mother of 120 young plants, currently housed in the greenhouse: 60 broccolini and 60 kale.
It’s a lot of responsibility.
There are, of course, some major differences between being Mother of Plants and the Mother of Programs. (No dragons yet! Oh wait…) To start, I take a much more active role in creating my programs. Each week, our class learns about one or more conceptual “tools” computer agents can use to complete different kinds of tasks. Then, we’re given a task: for example, playing Connect Four. It’s up to us to create the computer agent through code: we write its “DNA,” the instructions that will make it be what it is and do what it does.
On the other hand, my plants are “pre-programmed”; written into their DNA are a whole lot of instructions for how to be in this world. I merely put the seeds in the soil and provide warmth and water. Slowly – and pretty consistently – the plants unfold. My job is to provide ideal conditions for their development.
My job is also to watch. I’ve gardened since I was a little kid, pulling weeds for pennies in my parents’ vegetable gardens and flower beds. But – partly because I could rely on my parents’ ever-present expertise – I never learned to pay close attention to our plants. (“Mom, is this a weed?!”) This time, though, I’m responsible for recording minute observations about my 120 new charges–learning their shapes and their development in detail. I watch as their twin cotyledons–the leaves packaged into the plant embryo–sprout from the soil and creep upward. As the first true leaves push up, wrinkled, between the cotyledons. As the cotyledons turn yellow and dry and fall to the soil.
I wonder about my plants and my programs. I can’t say that they’re both alive–if my 7th grade biology textbook has anything to say about it–but there is some kinship between these little beings. Both have intelligence, in some basic form. Both perceive their environments and respond to them. Sending roots in the right direction. Guessing at the other player’s next move in Connect Four. Stretching up toward the light. Making a move.
My computer agents, when you encounter them, act more like humans than my plants. (Have you ever played Connect Four with a broccolini seedling?) But if they seem like humans, it is only because they act in very limited environments. Baeblade, as my partner and I lovingly named our general game-playing agent, can play games like Connect Four and Hex. And Baeblade might very well beat you. But “he” can do literally nothing else.
My plants, on the other hand, never even try to pass as human. They sit silently as I submerge their roots in water. They sit silently as I snip unlucky ones at the stem with scissors.
And yet these silent, still beings are the ones that make me feel disproportionately tender. I see so much in them. How does the seedling know to push itself upward, out of the seed, and not down or sideways? What triggers the true leaves to start unfurling? How does the plant decide where to send its roots? Can broccolini, like other plants, distinguish between “siblings” and “strangers”? After a long day of coding Baeblade, I can’t imagine the complexity that would go into constructing a being like broccolini.
Tending crops and writing code are both a lot of work. But more than anything else this semester, these are the activities that have given me new eyes. I see new connections where I used to see nothing. (What do a keyboard and a kale root have in common?) I see intelligent agents where I used to see objects. And I see myself, more confidently now, as a gardener and a girl who codes.
This blog post goes out to you, my little plants and programs. But I expect 120+ Mothers’ Day cards!