One of the hardest things for me to come to terms with in my adult life has been that…well, no one is perfect. The civil rights leader you laud turns out to be a womanizer. A different one held up as a herald of nonviolence turns out to be violently antisemitic. An author who is unquestionably a major supporter of women’s rights and the LGB part of the acronym turns out to be an enemy of the TQ part of the acronym.

But that doesn’t mean we just absolutely write them all off. When it comes to people, we understand that no one is perfect. People are complex, nuanced individuals. It’s entirely reasonable that someone who is a true rights champion in some arena might be straight-up retrograde in another. Sometimes they improve, sometimes they don’t, but either way, they’re people, who deserve to be lauded for their wins and criticized for their faults. They should be allowed faults. They shouldn’t have to be perfect.

I feel like we’re really slow to adopt this attitude to tech, even though tech is, ultimately, made by people. Jepsen tests are awesome, but I’ve become numb to people seeing a single Jepsen test failure as an indicator the entire database is broken. An amazing hobbyist graphical OS might be almost impossibly impressive, but people write it off because the kernel interface isn’t quite what they want. GitHub sucks because it needs JavaScript and bloated browsers to operate, even though it demonstrably has made it much easier for the average person to contribute to free and open-source software.

There’s so much work on trying to get a more diverse community into tech, but I feel like we lose a lot of our potential diversity right there, in our insistence that everything be straight-up perfect or be thrown out. Of course I’d like my tech stack to be perfect. But it’s written by people, and people are notoriously complicated, unreliable, and nuanced. And it’s important I meet them where they are, as people.

There’s no call to action in this post, and I’m deliberately not linking anything because I don’t want to fan the flames. But I do want to ask that, before you write a project or its people off as incompetent, lazy, offensive, or stupid, that you take a moment to explore that they’re people with strengths and weaknesses, and the tech they produce will likely be along similar axes.