Skip to content
Get 30+ hours of free content from GitHub Universe! Watch now.
Tatiana Mac

Move intentionally and fix things

Tatiana on chasing good energy, considering intent, and judging yourself on your last action.

Tatiana Mac // @tatianamac

Hi, I'm Tatiana! I’m a self-employed American software engineer, and I created and maintain Self-Defined (an open source, collaborative dictionary). I’m also an international keynote speaker and consult with organizations to build powerful products and design systems. I love to travel and have explored 36 countries so far.

The ReadME Project amplifies the voices of the open source community: the maintainers, developers, and teams whose contributions move the world forward every day.

When I was a teenager, the first code I wrote was for my Neopets and Myspace pages. Then I flexed all my affinity for boy/girl bands to brave the free code editor on the Geocities Web Page Builder to build and maintain a pretty popular website for N*SYNC—which is when I fell in love with the gratification of building things people could interact with.

I graduated during the 2008 recession and there weren’t many job prospects for someone who studied environmental science and math, which forced me to assess my other skills. When I was 10, I learned programs like Photoshop One and Macromedia Freehand on a very colorful iMac, and kept that skill relatively sharp throughout high school and college. So I emailed every single person I knew and built that into a studio where I helped local solopreneur and small businesses with their websites. 

Author Tatiana sitting at her desk working on her computer

I forayed into the agency world and was overseeing a team of 25 creatives when I realized I was burnt out. One of my contacts connected me to a hiring manager for a product design role. The interview experience devolved quickly—and they aggressively accused me of wanting the job just for the money. In hindsight—with the most grace I can muster—I believe they made a decision about me without substantial context, and decided I wasn’t the person for the job before I even got there. 

At that moment, I was very mindful to not allow this person—who had talked to me for all of 15 minutes—to dictate my life. Because I would have been doing it for the money, which is absolutely okay. I know plenty of talented engineers who are competent in their jobs and have passion elsewhere. It was a very toxic “interview” with negative energy, but I took my anger and morphed it into something that would benefit me: question what I was doing, who I was doing it for, and what I actually enjoyed. 

In your twenties, you think you need to show all your credentials and diplomas and experience to prove you can do everything your job entails. Another option is to just try and do it. You might mess up, or it might be fine. Given all my experience, I was confident that I could learn the engineering side by taking on projects. I also recognized that if I looked different, or had a different background, I wouldn’t hesitate to take this chance. So I learned as I went and sort of faked it a little—except I wasn’t even faking because I delivered the product. 

Now I’m self-employed as a software engineer and I usually integrate independently with teams to engineer their design systems and products. The rigorous world of tech is usually dictated by the mindset to “move fast and break things,” but I prefer to see it through an accessibility and performance lens and frame my work around the mindset to “move intentionally and fix things.” 

Author Tatiana smiling in front of a geometric backdrop

Intentionally giving back to the community 

Because of the relative privileges I have being a non-Black, non-Native person of color, I was shielded and got to live a lot of my life ignoring much of the racism and bigotry I experienced. In my late ’20s and ’30s, after being in a lot of predominantly white spaces, I tweeted about a personal experience and it went viral.

It was about the very small, insidious ways racism comes through. Trolls aside, there were so many validating comments from people of color, predominantly Black women, who said they experience the same things to a more severe degree. It made me feel so much less alone that I had a bit of an awakening and became conscious of the ways in which society is racialized—as well as the ways in which many people, including myself, can perpetuate these systems without even thinking about it.

I did my homework. I read. I listened to podcasts. I started to challenge what I was seeing from my relative position of privilege. 

Honestly it was really hard to admit to myself. I was used to experiencing racism, but at many points didn’t have the vocabulary or validation to know what I was dealing with, or what my parents and family, who immigrated here, dealt with.

Through the kindness of people I met through that thread, I benefited from an education (which I was not owed). In turn, I wanted to do my part in reducing the amount of emotional labor that people with less relative privilege who have endured much worse are taxed with. I’m grateful that they still took the time to educate me. The least I can do is give back to the community that educated me. 

So I put up another Twitter thread that was focused on those folks, asking, “What are some terms that you find yourself defining for people over and over and over that you’re sick of explaining?” I took five minutes and spun up a GitHub Page from that list, called it Self-Defined and said, “These are the terms that people are sick of defining for you. If you’re trying to be an advocate or you’re trying to self-educate, start here.” 

Author Tatiana smiling in front of an outdoor warehouse wall

An inclusive, open space to both define and evolve language

Self-Defined grew quickly. People saw the list of terms, but also wanted definitions—which, of course, is part of the problem. They want the work done for them. I did see value in the more nuanced terms, and exploring where they came from and how they got in our vernacular. A great example is “circle the wagons,” which is very anti-Indigenous. It basically came from colonizers rounding up Indigenous people and murdering them. Yet we use it in business vernacular so casually, most people don’t even think twice. So I wanted to make room in Self-Defined for terms like that, as well as terms around people’s identity, like what does it mean to be pansexual? And what are the nuances of terms like bisexual and biracial?

Creating a space was my main motivation and open source seemed to be the perfect conduit for this incredibly nuanced thing. There will be a lot of differences in how people define themselves and it’s going to change a lot—so what better platform than open source? It also removes part of the privatization aspect. Information like this should be widely available, accessible and driven by the community. Changes should be logged in the same way it is on Wikipedia. As we gain more information, we should evolve our words and our minds.

Throughout the history of the project, I’ve seen many people who are deemed “non-technical” use GitHub for the first time, get excited about submitting an issue and realize the process was easier than they thought. I’m trying to continue that momentum and tap beyond the tech circle and into spheres of academia. Sharing our knowledge and extending open source beyond the tech bubble has so much value.

Only thinking of open source as a technology thing is a limitation. Open source is nothing more than a community-focused, community-minded project. It’s about serving the community first and it requires a lot of individual contribution. At its most altruistic, it’s a way for people to iterate and build on and add more ideas. And that’s what language is: always evolving. 

Framing the good news and putting the rest in the shredder 

Being an open source maintainer is hard. You’re essentially doing an unpaid job and asking for the generosity of others to do the same. So it can be really tough to stay motivated and see the impact, which can feel small and incremental. 

Author Tatiana walking outside in front of a colorful mural

I don’t feed the trolls, which is easier said than done. If we get a GitHub issue that’s facetious or racist, it’s easy for me to use a bot to shut it down. But I had somebody write a 19-paragraph email after I gave my first big talk in 2019 about how much they hated me and my socialist viewpoint. I’ve gotten death threats. And I don’t want to make light of any of that, because it is harassment. But given the scale of what I’ve experienced, I can now step back and see a troll and logically know that Self-Defined is not going to help them—so I tell them as much.  

It does affect me but I think that I’m very much about energy placement. For every one troll that sends an inflammatory response to an anonymous account with a cartoon avatar, I get three positive messages from people who I actually care about. There is so much more energy that I can take away from those impactful experiences that I don’t have the energy to give to that other situation.

What keeps me going is the feedback. I got an email a week ago from somebody I worked with 10 years ago saying, “Hey, I came across this dictionary and found out you were behind it. And I’ve sent it to so many people who have found it helpful!” It’s about those kinds of comments, and knowing others in the academia space who say it’s integral to their curriculum and syllabi. So I frame the praise and look at that every day. I take the troll’s comments and put them into my paper shredder. There are certainly days where I’m balled up on my couch wondering why I even do this project. But having friends who care enough about you to share the praise they hear—that’s invaluable. And that’s where I choose to focus most of my attention.

Intention does not erase impact

The long-term vision I have is to build out Self-Defined and feed it with thoughtfulness into enterprise technology, and try to remove the weight and emotional labor that the most vulnerable in our community have to expend to explain things. Those tools exist, but I’m trying to make one that’s a bit different and fuller.

For example, what if there was a Slack bot that a company could activate to be more inclusive. If you use a flagged word, it sends you a direct message to ask if you know the origins of the word you just used. It gives you the opportunity to make an informed choice. Because maybe you weren’t intending to cause harm with a word, but you weren’t actively avoiding the harm either. I get cited with saying this even though I didn’t invent this phrase, but intention does not erase impact. Armed with information, you’re then making an informed choice. Some people will shut off the bot and do it anyway. Fine. But it removes the unintentional piece from it.

Before giving a talk I tend to ask for a commitment from the audience: When you hear something that makes you uncomfortable, just sit with it. In predominantly white, cis, abled, and straight spaces, we have a tendency toward perfectionism. There are many brilliant academic minds that say perfectionism is a byproduct of white supremacy culture. We have this idea that not making mistakes is good—but it’s not recovering from our mistakes that’s really bad. It’s a matter of finding ways to understand the harm we caused and reducing that same type of harm in the future. I think this has given me more peace than anything. 

Recently, I received negative feedback about how I answered a question on a webinar. I felt myself recoil and instinctively not want to do any more webinars. I saw how quickly it was for someone who spends a lot of time thinking about this stuff to regress into that turtle shell of shame. But I put on my adult pants, asked permission to reach out to that person, and talked to them directly. Initially, it was uncomfortable, but now we’re talking about a book club together and have found a lot of commonalities. 

I couldn’t thank her (and the organizer who connected us) enough for giving me a second chance. That was big for me. It really made me understand that even as someone who tries to be mindful of my language, I still mess up. I can’t change the fact that I already messed up, and ignoring it is toxic to me, the person it affected, and the community. The only action I can take is to do better next time. That’s the last thing I would say: Always judge yourself on the last action that you take.

Author Tatiana gazing up as she stands in front of a yellow wall outside

GitHub Sponsors allows you to financially support the people who build and maintain the open source projects you depend on. One-hundred percent of your sponsorship goes toward helping Tatiana maintain .
Support Tatiana on GitHub Sponsors

About The
ReadME Project

Coding is usually seen as a solitary activity, but it’s actually the world’s largest community effort led by open source maintainers, contributors, and teams. These unsung heroes put in long hours to build software, fix issues, field questions, and manage communities.

The ReadME Project is part of GitHub’s ongoing effort to amplify the voices of the developer community. It’s an evolving space to engage with the community and explore the stories, challenges, technology, and culture that surround the world of open source.

Follow us:

Nominate a developer

Nominate inspiring developers and projects you think we should feature in The ReadME Project.

Support the community

Recognize developers working behind the scenes and help open source projects get the resources they need.

Thank you! for subscribing