Coraline Ada Ehmke

Programming Empathy: Emotional State Machines

Coraline Ada Ehmke

Empathy is the ability to understand and share the feelings of others. As developers, empathy for our users, our coworkers, and members of our community is an undervalued skill, since expressing emotions is often perceived as a weakness. But responding to the emotions of others is critical to working successfully on a team. This talk frames emotions as neurological programs, with distinct triggers and multiple terminal states. The goal is to help us understand that when we act as fully realized human beings, and treat others the same way, the quality of our software will improve.

Based in part on the work of educator and researcher Karla McLaren, this talk explores the role of empathy in software development, provides tools for recognizing the emotional well-being of ourselves and our colleagues, and explores the implications of taking responsibility for our own emotions. The framing of emotions as neurological programs is designed to appeal to a technical audience that may be uncomfortable with non-rational approaches to empathy and emotional intelligence.