Coraline Ada Ehmke, Principal Engineer at Stitch Fix
(Also: Code witch, Ruby hero, speaker, writer, podcaster, activist.)Ā
Tell us a bit about who you are, and what you do now. What does your day-to-day look like? Whatās your favourite thing about it? Least favourite?
Iāve been doing web development for over 20 years, and Iāve been active in open source for the past 15. Iām most well known for creating the Contributor Covenant, a code of conduct for open source projects. Itās been adopted by over 40,000 projects including all of the open source efforts at Microsoft, Google, and Apple. Iām really proud of my work on that.
Right now I work at a fashion retailer called Stitch Fix. I started out writing desktop, mobile, and web apps for use in the warehouse, but recently I moved to a team thatās working on migrating our systems to a microservice architecture. Itās really challenging, requiring not only technical skills but also a lot of collaboration with other teams. Itās been great.
Is this where you expected to find yourself when you were a kid? If not, where did you think youād be?
I started programming at 7 or 8, on a Radio Shack TRS-80, and my first programs were really primitive games that were sort of like interactive stories. Even then I liked the intersection of storytelling and technology. I was pretty sure that I would write games for a living. From what Iāve seen of the games industry today, though, Iām glad that my path took me in a different direction!
I also had aspirations to be a professional musician. Music has been a consistent thread throughout my life. Although I never broke into fame as a musician, I have a home studio and Iāve written and recorded four albums in the past three years. Music is a great creative outlet for me.
You started a computer science degree, but have said that writing software for an ATM in C killed your interest in programming. Why?
It didnāt kill my interest in programming, but it killed my desire to work as a programmer. That course showed me just how boring and not challenging programming could be, and I thought that that was going to be my future if I continued down that path. But I never stopped programming, and I never stopped teaching myself new things.
After that, what was your āeureka' Ā momentāthe one that, if you look back on it now, re-ignited the interest in working as a programmer?
When I was a little kid my dad worked as an engineer for a manufacturing company. They had a mainframe there, and in his free time he would play a text-based game called Adventure. The mainframe didnāt have a display, so all of the output went to this green striped tractor-feed paper. He would bring the printouts home, and I would spend hours reading through his game.
One day in summer I was inspired to create my own game. I took a pack of index cards and a ball of yarn and set to work recreating the game he had been playing. Every index card was a room, and the exits from the room or actions that you could take there would lead to another index card that I connected with tape and yarn. When my dad came home from work he found me in the middle of this network of cards and string that had taken over the entire living room. Thatās when he decided we needed a home computer.
I spent endless hours growing up playing and programming games. In my post-college years I got a hand-me-down computer from a friend and it had a modem. I started hanging out on BBSs and in 1993 got on the internet for the first time. I discovered MUSHes, which are like text-based MMORPGs (Massively multiplayer online role-playing games), and started programming games on them.
When my dad came home from work he found me in the middle of this network of cards and string that had taken over the entire living room. Thatās when he decided we needed a home computer.
A pivotal moment for me was when I read a book called āGƶdel, Escher, and Bachā, by Douglas Hofstadter. The book deals a lot with artificial intelligence, and this really sparked my interest. So I started conducting AI experiments in the MUSHes that I ran. For example, I built an expert system that could answer questions about Egyptian mythology. It was set up like an interactive museum and the curator was the program that players interacted with. But objects that you can interact with in a MUSH, like a book or a car or a telephone, are limited in size, for both code and data, and there wasnāt enough room to make the curator smart enough to understand and answer questions. So I cheated by storing code and data in the various artifacts scattered throughout the museum, and wrote a networking protocol that allowed them all to talk to each other. Basically a distributed neural net. I was pretty proud of that.
I also created programs called ghouls. Since MUSHes are all text-based, human players interact through emotes and typed text. My ghouls posed as fellow players. They would wander the world until they came upon a group of two or more human players, and they would listen to the interactions between them. Then they would go off in search of other players, and selectively play back bits of the conversation, things like saying hello and asking what you were doing or whatever. When they got an interaction in return, they would score a āpointā. Those points were like food: too few points and a given ghoul would die. If two ghouls with enough āpointsā came across each other in the world, they would reproduce and spawn a new ghoul with their collected memories. Essentially I was writing code to solve the Turing Test. They were primitive but they were interesting.
Describe your career path, either from or around that moment. What events, random or connected, brought you to Stitch Fix?
I was an early adopter of the internet. In 1994 I was working for an engineering company in Austin, Texas. The job was pretty boring, tracking press releases for the marketing department. But I knew all the other geeks at the company and we would spend our breaks together just chatting. One day a guy that I knew came up to me and said that the company was thinking about building a web site and was putting together a team to work on it. āThatās cool,ā I said. āIt would be great for the company to be online.ā He smiled and said, āWhat do you think that will do for your career?ā
That was the first paying software job of my career. I remember being really stressed about the interview, studying HTML to make sure that I wouldnāt mess anything up in the evaluation. It turned out to be really easy. The web project was great, too, because we ended up setting up a lot of automation between our technical writing team and our web content to publish data sheets on our products. So it wasnāt just straight HTML, it was much more involved development work.
Do you ever feel pressure to be a mentor, an example, or a role model for other underrepresented folks in tech?
I donāt feel pressure exactly, but itās something that Iām passionate about doing. There have been people in my life who helped me get where I am today, and without whom I would never have had the chances that Iāve had. I hope that I can be that person for someone else, too.
Tech careers can be so transformative. The work is interesting, the potential for personal growth and development is huge, and the pay is ridiculous. Marginalized people especially deserve to have access to this kind of life-changing career. We face a lot of hurdles and we have to be 150% better than our peers just to survive. If I can help someone not just survive but thrive, Iām going to do everything in my power to do that.
I have a lot of privilege, owing to being white and upper-middle-class and very well established in my field. I try to leverage my privilege to make things better for other people.
At some point thereās a scaling problem, though. I can only mentor so many people one-on-one. Thatās why I look for other opportunities to give marginalized people a hand up. I have a lot of privilege, owing to being white and upper-middle-class and very well established in my field. I try to leverage my privilege to make things better for other people. Some of that comes from just being a visibly successful woman (and a queer transgender woman at that.) Some of it comes from working within my company to improve our culture, to make it more inclusive and welcoming. Some of it is in the community, through my volunteer efforts with nonprofits, or my side projects, like the Contributor Covenant, the Post-Meritocracy Manifesto, and Open Source for Women. And some of it is taking my Silicon Valley money and giving it to organizations like Black Girls Code who are working to make a difference in the lives of marginalized people.
Youāre prolific when it comes to building those initiatives and side projects ā not to mention the Greater Than Code podcast and open source contributions among others. Where do the ideas come from?
It might sound weird, but my main motivation is guilt. I feel blessed to have achieved what I have, to have this position in the community, and to have the kind of influence and opportunities that I do. I want that for everyone, and if Iām not actively working on making that happen then I start to feel bad and look for new ways to change the world. I try to understand the challenges facing people getting into our field, struggling to stay in it, and think about ways that I can leverage my privilege to help them.Ā
I also think that I have a responsibility to make other people with the same or more privilege than me aware of their responsibilities to the community and the industry, to the impact that they can have on other peopleās lives. Iām a born problem solver, and there are so many problems that we face today that Iām never short of inspiration.
How do you continue to find time for those things, especially when it comes to balancing a family life and maintaining your mental health?
Iām by nature a very disorganized person, so over the years Iāve developed systems that help me remember things, track my goals, and answer the question āwhat do I do next?ā I even open sourced it! My system keeps me organized and ensures that I always have a place to jot down an inspiration or idea, and not lose it. It makes me very efficient, which is what lets me work on so many things at the same time: a challenging job, my music, open source, advocacy work, nonprofit board responsibilities, my D&D campaign, and the book that Iām co-authoring.
If you could do everything all over again, do you think your journey would be the same? Would you want it to be?
I made some serious mistakes along the way. Until the past few years I didnāt have good boundaries between work life and personal life. I was an overachiever and I would regularly work 60 or 70 hours a week. I missed out on a lot of time with my daughter, my friends. And I really regret that.
So much of my success was luck, I donāt know if I could be that lucky twice.
In terms of my journey, so much of it was serendipitous that Iām not sure that I would end up in the same place if I did it all over again. So much of my success was luck, I donāt know if I could be that lucky twice.
Is there anything about the internet or technology that you feel nostalgic about? What has changed most for you since those early days?
When I first got on a BBS and used an email client to send messages to someone on a completely different BBS, I thought it was pure magic. Then I got online and experienced the web and IRC and news groups. For the first time in my life I was able to find and connect with people who were interested in the same sorts of weird things that I was. And I started learning a lot about my internal struggles with gender, that I wasnāt alone. I really wonder how different my life would have been if I had those kinds of connections and access growing up.
How do you see your next five to ten years? What are you most excited about? Perhaps most afraid of?
As I mentioned Iām currently writing a book with my friend Naomi Freeman. Itās called The Compassionate Coder and itās a guide to practicing empathy in software development. Thatās taking up a huge amount of time and effort. Once that gets published, Iām looking forward to getting back to one of my side projects, an AI program called Sophia. My goal is for Sophia to be able to understand and create metaphors and similes, and as a side effect I think she will learn how to pun. Iāve been fascinated by AI for twenty years now, and Iām looking forward to learning and doing more of it.
Aside from that, I hope to continue speaking at conferences (maybe with more keynotes?), keep learning new things, do my advocacy work, and find new ways to help people. Because thatās what I care about more than technology-- people.
I want to thank Coraline for her endless patience, perseverance, and thoughtfulness. Follow her on Twitter; youāll be glad you did.Ā












