John Kestner

Social Garden

Tend your relationships


Slow data

We now have many great tools for communicating at a distance to maintain personal relationships and build social networks. However, these tools rarely help us realize which relationships are becoming strained by neglect. In a world of microcontent and microinteractions, we can miss the forest for the trees.

When I tried growing corn in my small yard, the rows of stalks became a bar chart of the amount of sunlight each spot received over time. Realizing that plants embody observable responses to long-term stimuli, I built a metaphor and took it too far. Social Garden explores how to cultivate our social connections as we do our gardens. By analyzing our own communications over time, Social Garden gives feedback on the health and nature of our relationships.

How it works

The Social Garden application quietly monitors your existing social behavior. With a plug-in architecture, it can aggregate your interactions in email, instant messaging, phone calls, text messages, social networking sites and other channels through a computer or smartphone.

For each relationship, the application creates a meaningful visualization shared between you and your friend, providing feedback on how your relationship has changed over time, and encouraging you to maintain or even grow it. These visualizations can be delivered as ambient information on your consumer electronics, or integrated into the flow of your communications devices.


Originally written for the Mac in Objective C and Python, later iOS. Mail was implemented first, but a plug-in API allowed for extension to other communication channels. Each plug-in processes metadata—primarily date and content length of your communications with the people you've chosen. If there's a balance in the communication between you and your friend, a healthy plant is produced, the nature of which depends on the frequency of communication. (Many relationships are cacti—long missives once in a while, interspersed by droughts.)

In early versions, an array of static images were used, and this was probably enough for a long timescale.

Later, I experimented with algorithmically generated plants to express more nuance, which proved more useful for real-time feedback.

This was used to create a chat program created for exhibitions, for visitors with no history to play with. Plants grew with steady communication, wilted when neglected, and grew thorns when the content became negative (using sentiment analysis borrowed from Twitter Weather).

Everything was processed locally, and no data ever left the user's devices.

Exhibited at Ars Electronica 2010.