Jess lee

Jess Lee

Co-founder DEV

Jess Lee is co-founder of DEV.

Ben halpern

Ben Halpern

Co-founder Forem

Ben Halpern is co-founder of Forem.

Penelope phippen

Penelope Phippen

Director Ruby Central

Penelope Phippen (she/her) is a multifaceted Rubyist who works as a Director at Ruby Central, is the creator of Rubyfmt, and was formerly a lead maintainer of the RSpec project. She frequently writes and speaks about about complex aspects of the Ruby grammar, and issues of social justice for trans people in computer science. She's sad that she can't hug every cat.


As an industry, tech is not well equipped to accept when people change their names. This problem effects a range of people, including those who have a change of marital status. However, it can especially effect the security of those who are survivors of domestic violence, and those who are trans, who have to suffer through deadnaming by their tech accounts. This constant barrage of deadnaming can be very psychologically and emotionally harmful. DevDiscuss hosts Ben Halpern and Jess Lee speak with Penelope Phippen, director at Ruby Central, and author of the DEV post, "Changing your name is a hard unsolved problem in Computer Science," about this issue and what can be done to make it better.

Show Notes


Printer Friendly Version

[Intro] SY: Hey CodeNewbies! I wanted to share the pilot episode of a really awesome podcast I helped work on called DevDiscuss. It’s the first original podcast from DEV, which is a global community of software developers of all backgrounds and experience levels. And I think you will really like it, because it covers burning topics that impact the daily lives of programmers and beyond, and it’s hosted by DEV Co-Founders, Ben Halpern and Jess Lee.

The episode I’m sharing with you is about an oftentimes-overlooked issue in tech: changing your name. This problem impacts trans folk, domestic violence survivors, spouses after getting married, and many others.  It’s a super important and interesting discussion, and one that I hope you will take to heart as you go off and become the awesome coders I know you all will be!

[00:00:00] PP: I basically walked through this world through this minefield of not knowing when I’m going to have this sort of deep emotional wound reopened.

[00:00:23] BH: Welcome to Dev Discuss, the show where we cover the burning topics that impact all our lives as developers. I am Ben Halpern, cofounder of Dev.

[00:00:30] JL: And Jess Lee, also a cofounder of Dev. Today, we’re joined by Penelope Phippen, Developer Advocate at Google, to talk about an insidious issue that has been largely overlooked in the tech community, changing your name. Thank you so much for joining us, Penelope.

[00:00:44] PP: Happy to be here.

[00:00:45] BH: Can you tell us a little bit about yourself, Penelope? You’re big in Ruby. You work at Google. You want to go into all your outlets?

[00:00:52] PP: Sure. I tend to lean less on like current employer credentials, but I was previously a lead maintainer of the RSpec testing framework, which I did for about a decade at various levels of contribution, in particular sort of my like biggest achievements there where making RSpec work with Rails 5 and Rails 6. I basically entirely supervised the releases of RSpec that built the integrations there and then I’ve currently sort of retired from the RSpec project mostly, and I’m now working on a Ruby auto format, a tool called Ruby Format. I’m also a member of the Board of Directors of Ruby Central, which is the 501(c)3 in the Ruby community responsible for organizing RubyConf and RailsConf.

[00:01:42] JL: That is really cool and it’s great to be in the company of another Rubius. Dev is a Ruby shop also, and so we’re very familiar with RSpec. I really love that the abbreviated version of your RSpec contributions is that you just make RSpec work.

[00:01:57] BH: Let’s just quickly talk about what you’re up to these days in your work.

[00:02:01] PP: Sure.

[00:02:02] BH: I’ve seen you’ve been talking a lot about Ruby format. Just seems like you’ve hit some milestones there. Can you tell us a little bit about Ruby format?

[00:02:09] PP: I guess the 1,000-foot view of this Ruby format is a code auto formatter for Ruby. What this means is it takes in Ruby files and it spits out like equivalent Ruby files that just have that source code layout automatically determined by the auto formatter, right? And the idea here is you no longer have to argue about style. You no longer have to argue if you’re using RuboCop, about RuboCop configuration, and it just tries to solve a lot of those problems. The sort of like number one motivation I have for this is building a tool that’s really, really fast, like so fast that you can save a file and it will be auto formatted faster than you as a human can notice the tool is working on your code and this is so I can have it in my text editor, which was originally inspired by Go Format or I guess they call it Go Font, which is a tool they have in the Go programming language to do exactly this. We don’t have a tool like this in Ruby, so I’m inventing it.

[00:03:08] BH: Why would you say this didn’t exist before? As you’re mentioning Go, I see this as an alum as kind of just a default part of the language, more or less. What about Ruby, the Ruby culture kind of led to this not really being a thing?

[00:03:21] PP: I think there are several answers to that question. The first is that like this concept is relatively new, and like when Matz was inventing Ruby, this just wasn’t a thing people did with programming languages and so like it was just never part of the Ruby core. It’s also worth noting that the grammar for the Ruby programming language is incredibly complicated, and so actually building a tool that does this turns out to be a very complicated exercise in software development, like this is a hard problem. And I think most Ruby programmers probably could not even begin to get a handle on how to solve this problem. I happened to be a Ruby implementation expert for my years on RSpec and other things. So I kind of found myself well placed to tackle this problem. And then perhaps sort of thirdly as to why it’s never happened before, the Ruby community historically has been sort of like very idiosyncratic and everyone kind of wanted to do that own thing. And I’m sort of finding now that Ruby has matured as a language. People are looking a lot more towards off the shelf solutions, and I figured that just having a single standardized formatter can really help Ruby as a community and a language going forward.

[00:04:39] BH: Awesome.

[00:04:45] JL: You wrote a post on Dev titled “Changing your name is a hard unsolved problem in Computer Science.” Can you tell us what this piece is about?

[00:04:53] PP: I guess the first thing is like the title of the post is very much sort of like a play on a classic joke meme trope, which is kind of like X is a hard unsolved problem in computer science, which can go like either like for things that genuinely all that or things that genuinely on. To me, I think it was a subject that became rapidly, extremely important in my life as I went through recently, and I guess kind of still am in the process of changing my name to better reflect who I am and sort of just like all of the systems I bumped up against that were facing me in any way to do that and really like being accomplished software engineer feeling that like a lot of it should have been much easier than it was. And really sort of coming to understand that a lot of it is less to do with software engineering large and more to do with sort of like how people think about information schemas.

[00:06:00] JL: What was the impetus for writing this piece?

[00:06:02] PP: Really, it was sort of my own frustration more than anything else. Sometimes when I’m writing, there’ll be a point I’m trying to get across and it’s like I have to really work at it to get the words onto paper, like there’s an idea I have and it’s very big and amorphous and it takes a lot of time. And this post was not like that. The text of this post fell out of me in the space of about a day and a half and it really was just like writing very, very quickly and fluently and it’s because I am transgender and because changing your name in the way transgender people do is not such a common use case, just like many computer systems I expected to be able to deal with it just won’t and it’s like genuinely frustrating and disheartening to me to encounter that. And I wanted to write my experience and what I really saw after I published is that the post really, really resonated with a lot of people and that was really nice to see.

[00:07:08] JL: Yeah. I can’t imagine how difficult that must be, especially because you’re in the position to fully understand what the flaws and decisions people made to end up where we are.

[00:07:18] BH: So you wrote about your experience in particular at a restaurant when you made a reservation with your chosen name and then the restaurant worker has actually addressed you by your dead name shortly thereafter. You want to talk about that experience?

[00:07:30] PP: To me, this was like a really interesting example of information systems getting this wrong and not like the people involved. So as best I can piece together from what happened, it’s like one of those restaurants where you like to leave a cell number and then they text you when your table is ready and then you come back and they like to call out your name. And what had happened is like I’d left them my number and I’d said like, “My name is Penelope.” And then when they texted me it was like, “Your table is ready,” with no name in it, what so ever. And then when I got there and like told them I was there, they were like. “Oh, do you mean?” And then they said my dead name to me. And so like somewhere in that loop, my dead name had been associated with my phone number in such a way that even when I was giving my name to the people in the place, like they were being shown the old name in like a few minutes later. Right? What I sort of infer from that and in fact was later determined to be true is that like the system was caching the name against the phone number and like either they didn’t type in the new name when I gave them my phone number or it just overrode what they had said to it. And so like I can’t determine exactly what happened, but that is an actual side effect of like these two identifiers being linked in a way that is actually like a really sharp experience for me to have.

[00:09:00] BH: How much of this do you think is inherently difficult or more sort of a blind spot with the way software is developed in terms of the demographics and what software developers are sort of caring about most?

[00:09:13] PP: So the thing is we’re just bad at this as an industry. Like Patrick McKenzie wrote his Fallacies Computer Programmers Believe About Names blog posts several years ago, and like most of the advice in it is still relevant today. My post is like a slightly different take on the same idea, which is the way that we build these information systems inherently makes assumptions about ways that the world is that turned out not to be true. And so like when I sort of put my software engineering hat on and really look at this, I see like that most likely what’s happening is people take a very simple view of the world about how people relate to names and encode that into their systems and then like that’s just it, right? I mean, for example, like the assumption here that like a person has a single name holds true for a wide swath of the population, but it’s not true for me. And is like, for example, not true for a lot of women who get married or an in process of changing their legal name or people who get divorced during the process of changing their legal name and other affected groups beyond. And so like really to me, it’s that we just haven’t educated ourselves as an industry on many different kinds of human factors that actually we need to encode in our information schemas even for the simplest of applications.

[00:10:44] JL: Yeah. So speaking on the human side of things, this is going to sound like a stupid question, but just so people understand, can you share why this issue is so important and just how it affects people emotionally?

[00:10:55] PP: So I can answer that from my experience, but there are dozens of other reasons why someone may have changed their name that will be deeply emotionally connected for them that I can’t speak to because I haven’t experienced it. So with the caveat that this is only my experience, I am a transgendered woman, and for my entire life up until the point where I came out as trans and was really able to recognize that’s who I was, I lived with a very deep sadness that I couldn’t understand. And it took me literally the first 28 years of my life to get to a place where I felt comfortable recognizing this feeling and giving it the space I needed to literally feel, start to feel comfortable in my own body. And I was born with a pretty unambiguously male name. Excuse me. To me it represents this very painfully lived past of mine and really in a sense like a different person who is me but is not someone I wish to identify with anymore. So when I am dead named in contexts, well, I am not mentally prepared for it. It’s an extremely painful emotional experience. And part of this is that it comes from so many places that it’s very hard for me to be able to predict in my life when it will happen. And so I basically walked through this world through this minefield of not knowing when I’m going to have this sort of deep emotional wound reopened and it truly, deeply affects me in ways that are hard to explain, if you’ve not experienced it.

[00:13:37] BH: Can we talk a little bit about usernames in general? Sort of a common mechanic across the web, you go into it in your posts, you thought about this a lot. Can you talk about where they fall short, mechanics that should be generally changed and what defaults should sort of be going forward?

[00:13:54] PP: The way you’ve posed that is kind of an interesting question because there are two parts I want to tackle. One is that I feel like writ large, the concept of a username is becoming less common these days. I feel like I see the primary pattern to be like login with email address and a password or login with an SSO provider where the email address from the SSO provider is typically your identity and sort of like answer one to that is that username is a concept, at least in my opinion, are beginning to die out just a little bit. I mean, I know on Dev people have usernames, but this is an observation I’ve had. My feeling there is that like, well, depending on exactly who you get your email address from, an email address can also canonically change, but have a stable underlying person using it. So like with my corporate email address, I changed it from my dead name to represent my new name when I transitioned and like it’s still the same email address and the email goes to the same user, but the actual literal email address string has changed. So there’s that part, and then there’s like if you do have a username as like a string identifier, well, you’re basically at this point letting a user tell you how to identify them in your system, and my view on this is that people’s identities are actually incredibly malleable. I think one thing we’ve sort of been talking around but perhaps not gotten directly to is this idea that in fact, people’s identities are very, very not fixed. And if you’re taking pieces of identity to represent humans in your system, at the core of it is you need to have an idea that people’s identities are malleable and that that might want to change. So like in the post, I go into a lot of detail about how don’t primary keys offer username for anything, which is just like a piece of good database design advice because keying off user-generated strings is like a terrible idea anyway. So I guess perhaps one way to look at this is like a username and a name are probably quite likely to be coupled. Like before I transitioned, I used my first name and my last name concatenated together as my username on almost every platform. It turns out that that’s easy to do when you're just coming of age like the early two 2000s and no one has discovered the internet yet. But like in 2020 transitioning, like I actually can’t get my preferred username on like a lot of sites. And so I actually ended up going through a big, long list of usernames before I settled on the one I’m using everywhere now, which is Penelope Zone, just because it was available on a plurality of platforms. So there’s also complications around that in terms of username namespace drying up.

[00:17:11] BH: Within my family, I’m actually the only of five kids that still goes by his birth name, and I think like there’s so many different ways people change their identities. It’s really ignorant to not be thinking about this. It’s really I think like from your post, I think so many people read it. I think it’s such a big opportunity I think for people to just take that extra bit of consideration to question whether they should ever use anyone’s name as a primary key at all, educating themselves about redirects and forwarding and how they want to be sort of treating their namespace and just being careful with it because there’s no situation where it makes sense not to think about that.

[00:17:52] PP: So to give you an example that was extremely poignant to me as I was like doing this change is GitHub, right? So I was one of two lead maintainers of the most downloaded Ruby Gem of all time. It is reasonable to assume someone in the world was pulling aspects from my GitHub page because they didn’t know any better, even though that’s like not a great idea. I could believe that was happening. When you change your username, GitHub sets up a redirect to all of your repos for your old username until somebody else registers with that username and sets up a repo with the same name. So that’s kind of like an attack factor here where if someone had been able to grab my dead name on GitHub before I did, they could potentially attack people who were pulling code from my repos. Now like I literally had to like my screen split with two GitHub logins so that like I could change the names over with basically no downtime between, but like it’s kind of stuff like that where if you are changing your name, making sure that your default secure and you default to protecting them, that’s also really important. So it’s not just about allowing changes, but it’s understanding the implications of what will happen in your system when those changes do happen.

[00:19:17] BH: Yeah, and I can speak to the way Dev handles this. We would have the same attack vector and it’s kind of on our to-do list to change it. We sort of set up our infrastructure so that we could. We just never got around to actually fully closing the loop on that. We track like redirects to usernames back, but I think we sort of fell short. We’re thoughtful in some capacity and then sort of fell short and I think your highlighting of it helps…

[00:19:42] JL: Definitely reopened the conversation for us.

[00:19:45] BH: Yeah. I hope we sort of collectively do sort of develop an understanding of the sensitivity of the issue and just like what the expected behavior should be. And I think like you're describing it from a place of a lot of personal expectations as well as like what you know is possible if people take that into account.

[00:20:07] PP: Yeah. It’s really interesting. When you write a post like this that goes so far across the internet, you get a lot of people privately reaching out to you to say that this has helped them change their prioritization. So I got like a number of tech companies we’ve all heard of, like senior engineers or like engineering management reaching out to me and being like, “We are using this post to advocate for changes to our product roadmap to make this possible.” I was so blown away by that. That really meant a lot to me that I could write that something like this and folks would literally change their engineering roadmap because like basically kind of I wrote the post as a like way to call out a bunch of people that they hadn’t been doing this and like the end result is kind of like the best outcome I could have possibly imagined, which is folks actually listening and making the changes they need to make to improve their products.

[00:21:08] JL: So I’m willing to bet that there are a few people listening to this that will think that this is all great, but the company they work for or their product requires legal names as part of their correspondences or apps. What would you say to those companies?

[00:21:22] PP: So like the first part is that the question really is why. Right? Why do you need a legal name? Sometimes there’s a really good reason, right? I’m going to give you my favorite example of doing this correctly. So one doctor who I use as my GP, like they have my legal name because they need it to bill my insurance, which is a great reason for having my legal name because otherwise they have to bill me and I don’t want them to bill me. But they also basically have basically what we should call you, what are your pronouns, and is there anything else you want us to know about your gender identity as like a free text box? Right? This is basically my dream UX because when I go to a one medical, I say things like, “Hi, I’m Penelope and I have an appointment with you at this point in time.” And they know who I am and there’s no kerfuffle and the idea there is that like you need this, but you don’t need it for any relationship between me and the people in this room. You need it for like you and some third party. This is also true for example with like American Express or other financial software. There are lots and lots of cases where the reason you need my legal name has nothing to do with your primary interactions with me beyond sort of like being able to identify me to another third party. That’s a really good case where you should take it, but you should also take a preferred name and then like only ever use my preferred name when you’re talking to me because otherwise like you’re going to be delivering me a user experience, but I sort of have already explained is like deeply emotionally painful to me. We talk about user experience a lot in terms of the pixels we push, but let’s talk just a little bit about the kinds of emotional violence that a user interface can do. And I’m being serious when I use that term. And then sort of like the 1B of this is that, well, guess what, a legal name can change as well and people generally don’t allow for the possibility of that whatsoever. At that point, the question becomes like, “What exactly is your legal name in this context?” Because like for example as well as being transgender, I’m also an immigrant from the UK. I’m going to go ahead and change my passport in the UK later this year once all the coronavirus stuff is over. But at that point, my registration with the US Social Security Administration will have my dead name on it and my passport will have my current name on it. Which one is my identity? Well, it depends exactly on the context of the relationship. So even the concept of a legal name as like a single unitary thing doesn’t totally make sense. It turns out people can have multiple legal names and different contexts. And so again, like the same kind of idea. Information schemas around identity tend to be way more fixed than reality allows full. And If that happens, your system could be entirely incorrect in a case where it’s very important that it’s not. So for example, a friend of mine recently got divorced and has her legal name changed and she’s had a really hard time getting certain companies to update their records to reflect her new legal name. And so to sort of come back to the question at the top, generally my advice to folks who are doing this, if they can do it at all correctly, is make this like either entirely self-service because like in the case where say you’re billing my insurance provider, I should just be able to tell you my insurance provider now knows my illegal name is this and you should just believe me because there’s no reason for me to lie to you or like have a very low overhead process that is very humane. There are like automated tools for validating identities now, for example, and you could use one of those or like if it really needs to be an interaction with a human on your side, at least be extremely respectful.

[00:25:42] JL: As you’re explaining that, I just realized that. Like in this moment, I’m realizing that I have two legal names. I just don’t use one of them, but I have a US passport. I was born in the US. I’m a US citizen. So it says Jessica Lee on it, but I also hold a Taiwanese passport and that has a totally different name and Mandarin characters. If I were to use that name, I can’t imagine what I’d have to go through to make that switch across the board.

[00:26:06] PP: Right.

[00:26:07] BH: So considering the amount of psychological trauma that can go with deadnaming, do you think that this falls under the umbrella of accessibility?

[00:26:17] PP: So I think I am not qualified to well answer this question and the reason is firstly, I don’t really do much in the way of accessibility engineering and I never really have, and so like I’m not super well-qualified to answer it from an engineering perspective. It’s sort of like a lived experience perspective. My view on a lot of accessibility things is that they are typically focused on physical and mental disability and none of the things I’m really describing I think cleanly fall into those categories. I will say, and I think I already sort of have said, to me this absolutely counts as like user experience because like it’s me experiencing your product and like having very poignant experiences with it. I tend to focus much more in that language, partially because I’m more familiar with it.

[00:27:17] JL: You mentioned Falsehoods Programmers Believe About Names by Patrick McKenzie as a good resource, but do you have any recommended resources for people in our audience who are also trans or people who just want to learn more about trans’ rights?

[00:27:30] PP: Oh, for trans’ rights, there is so much reading that folks can do to educate themselves. I would say at a high level, GLAD has a number of really good, very basic 101 level trans FAQs that I actually use when I was coming out to my family to give them just some very simple baseline language to talk about. I personally found the book Whipping Girl by Julia Serano to be an incredible piece to help me understand my experience as a trans feminine person. What might be a little closer to home for many of the folks out there is if your employer has a trans ERG or an LGBT plus ERG, they frequently have trans trainings for folks who are not trans, but like wish to understand what we’re going through a little, but it’s also highly variant on situation. If you know a trans person and they’re comfortable talking to you about their experiences and your questions are sort of genuine and not probing or invalidating, I’ve generally found that trans folks who are close to says folks are generally willing to talk about that, although be respectful of their boundaries and the stuff that they might not want to be talking about obviously and just don’t assume that just because you know a trans person, they are willing to talk to you. Like definitely ask them first. But yeah, like the GLAD thing and Julia Serano’s Whipping Goal are really the two things that have been most useful to me.

[00:29:26] BH: Now we’re going to move to a segment where we look at comments from you, the audience, sent to us from a question we asked in relation to the topic of this episode.

[00:29:33] JL: The question we asked you all this week was, “What is something important that you think is being overlooked in the tech community?”

[00:29:40] BH: We got a lot of great responses from email, comments, and Google Voice. So let’s dive into them. Our first is about access.

[00:29:46] FEMALE SPEAKER: One of the biggest things being overlooked in tech right now is access to technology for people with disabilities. So we don’t do enough to focus on social media or ease of use in human computer interaction and online technologies for people with visual impairments or hearing impairments and we could definitely improve research in this area.

[00:30:15] PP: I guess my sort of immediate thought on what the caller has said is like I do broadly I agree. I think not enough work is being done in these spaces. I mean, we’re literally at this point in the United States having landmark court cases on whether pizza delivery places need to build websites that are accessible to everyone. I think in particular, the overwhelming majority of software engineers are fully or close to fully cited and so like we’re just not building software for people with visual impairments. So I broadly agree. And then the question is like, “Why is this happening?” And I think it’s just kind of to some degree, there’s not enough pressure put on the industry as a whole to change the established practices that we have on how we build software. I mean, maybe to pick on Dev slightly, like how do you build accessibility into your process? Is that something you’re cognizant of all the time? Is the website fully keyboard drivable? Have you used it with a screen reader and your screen turned off? Like what does that look like?

[00:31:28] BH: To speak to that, we have a fairly good accessibility keyboard screen reader except part of our process is fairly driven by the fact that we’re open source and we do a lot of public issues and we’re very responsive to that. It’s not necessarily caught all the time. So we got a lot of accessibility regressions and then we fix them and then we get regressions and we fix them. And so in the end, we wound up with a site which addresses these, I think, a lot better than the norm, but we’ve done it in such a way that is in need of process evolution and our saving grace is our transparency and our broad community, which is just really not how a lot of software is built. In terms of it being part of the process, we could have it be part of our continuous integration, but it’s not quite there yet. And whether that’s the right step, I think is a good question, like where this fits into the process and how much we allow for accessibility regressions. I would say we tend to be way late in finding out about those compared to say a visual bug that our generally able bodied staff deals with. So I think that’s like a really great way to sort of point it back, like we sort of have our process that like works in the long run, but it’s not necessarily ideal or without dramatic flaws.

[00:32:55] JL: So this is sort of a segue, maybe not, but I’m going to try. I wanted to share an email response from one of our members, Diane Roden, “For me, it’s about ethics. Countless times I have seen developers and other tech workers using tools developed by unethical societies.” Some of these companies that Diane mentioned have been in the news a bunch as it relates to data and user tracking. Any thoughts around this topic?

[00:33:20] PP: Perhaps to zoom this all the way out, most tech workers have nowhere close to anything resembling a decent education and like basic formal ethics. So with a lot of the decisions that are being made, there’s just no training there. And so questions like when we build the software that impacts millions of people, what will happen is like a really interesting one, right? Maybe to pull several threads together here, I was recently quoted in a fast company piece written by a trans woman after Google Photos showed her a picture of herself sort of like before and after hormones, and it asked her, “Are these the same person?” And what had happened is like the facial recognition algorithm had realized like there was a progression across several years of photos and it actually were all linked together. But if you took the years of progression out, it would have had no way to actually connect them together. The sort of question I really have after thinking about machine learning is like, “Well, what are the ethics of asking someone if two photos of a person are the same?” And if you don’t have a worldview based in sort of these fundamental inequities that truly exist, like you could totally assume that’s a completely reasonable question to ask someone. But like there are all kinds of reasons with just a little bit of ethical reasoning why you could see that as a profoundly dangerous technology to have. So a lot of these sorts of interesting and advanced technologies that we’re building today can be genuinely helpful, but they can also be genuinely dangerous. Facial recognition algorithms as a technology aren’t necessarily bad or good. It’s what we do with them that’s bad or good. I may, for example, want to take a detector that can determine whether or not a photo of me is pre or post transition and only ever show me the post-transition ones. But that exact same detector can be used by a rogue state to identify all of the trans people in its population and murder them. So like there’s two sides to almost all of this. Even being able to stop and ask these ethical questions is incredibly important and there just aren’t enough people in the industry writ large who actually do it.

[00:35:53] BH: Do you think that question of names and usernames is part of the same conversation with ethics at large? Like when you’re talking about how we model our facial recognition software for least harm, is that part of the same conversation as the names? If they were teaching this in computer science, is that part of the same curriculum?

[00:36:15] PP: So you can reasonably extend this line of reasoning to almost any identifying attributes about a person. So yes. I mean, there are places in the world where being outed as transgender will immediately cause you to be in mortal peril or like another example that I discussed in the post is people who suffer from domestic violence often change their names to make it harder for their abusers to find them. And if you are linking someone’s old name to that current name, that can be literally an instance of life or death, danger for that person. And so yes, but this is also true, like in some cases, how old someone is, their marital status, their sexuality, what ethnicity they are, what religion they are, right? And so really it’s about thinking about people as complete people and not just the set of attributes you need for the system you’re building because without that consideration of people as complete people, you may well end up building a system that can put that person in harm’s way. And as you mentioned, like one of the core ideas here is building systems that do least harm.

[00:37:30] JL: So people don’t think about this very often, but location can be a big identity factor as well. I personally identify as Taiwanese and that becomes a political statement in itself. There was a post on Dev recently about international country codes and how they’re organized. A lot of folks follow the ISO 3166 that’s not neutral at all and heavily influenced by the UN, and that standard doesn’t recognize Taiwan as a country. It categorizes Taiwan under Chinese state. So when I have to choose something like that, I personally feel like I’m not allowed to identify in the way that I currently do.

[00:38:06] PP: Right. Thank you for sharing. That’s a really great example of this.

[00:38:09] JL: We have one more message I’d like to share. Murtaza wrote, “The Girls Who Code.” I thought this was interesting because Girls Who Code is an overlooked part of tech. There are far less women who code, and I think that’s something we should talk about. We actually just celebrated International Women’s Day on Dev with our Nevertheless, She Coded Event. This was our fourth year celebrating and highlighting stories from self-identifying women and non-binary people who code.

[00:38:35] PP: Jess, I would actually love to hear a little bit more about your experience with this. I have very complicated feelings about this subject because like I got to enjoy male privilege for the first decade of my career. So I feel like my view is very tainted, but I’d love to hear a little bit more from you.

[00:38:55] JL: Sure. When people ask me how I got into coding, I usually tell them my standard bootcamp story of being a career transitioner. But when I dive into my memory archives, I remember that when I was in high school, there wasn’t a single girl in the computer science class and we really only had one. So it wasn’t that accessible to begin with. But I actually tried. When I was 16, I took a pre-college course at NYU. And one, I was 16 so I already stuck out, but two, there was no one in the room that looked like me. It was primarily white dudes, and I dropped out of that class immediately and really never thought about working in computer science or coding ever again until this bootcamp, 15 years later. So that was my initial interaction with attempting to learn how to code.

[00:39:48] PP: It’s got to be so motivating to see nobody else like you and none of the professors, barely any of the TAs even actually, and I think it’s beginning to change as well, right? Like we have things like Rails Girls, which has been going for years. And I know that a lot of bootcamps have gender equity or better in terms of their attendance. And we have seen a massive uptick of women attending and speaking at RailsConf and RubyConf over at Ruby Central. And as far as we can trace it, it’s entirely due to the bootcamps. The bootcamps are outputting basically close to gender equity and that most of the people who want to come to our conferences are new developers. So it’s massively changed the face of the industry. I think at this point it’s almost inevitable that that will happen at all the levels and it will be good. A friend of mine who five years ago was graduating a bootcamp is now a lead developer at the New York Times, and she’s a woman. And folks who are graduating boot camps who are changing the gender balance of the industry are getting promoted upwards into the most senior levels of our organizations now because they’ve been in the industry for five to seven years, seven years, eight years is about how long, I think the very first concept bootcamp at LivingSocial happen. And that’s indistinguishable from at this point, probably from folks like me who did a computer science degree and graduated, what, like seven or eight years ago from my computer science degree. There’s probably almost no difference in capability on average between those two streams after this much time.

[00:41:38] JL: Thank you so much for joining us today, Penelope.

[00:41:40] BH: Oh, yeah.

[00:41:41] PP: Absolutely.

[00:41:50] JL: I want to thank everyone who sent in responses. For all of you listening at home, please be on the lookout for our next question. Also, we’d love it if you could dial into our Google Voice. The number is +1 (929) 500-1513 or email us a voice memo so we can hear your responses in your own beautiful voices. This show is produced and mixed by Levi Sharpe with editorial oversight by Peter Frank and Saron Yitbarek. If you have any questions or comments, email and make sure to join our Dev Discuss Twitter chats on Tuesdays at 9:00 PM Eastern, or if you want to start your own discussion, write a post on Dev using the #discuss. Also, please rate and subscribe to this show on Apple Podcasts.

Thank you to these sponsors for supporting the show!

Thank you to these sponsors for supporting the show!