|
| 1 | +--- |
| 2 | +layout: post |
| 3 | +title: "Imposter Syndrome" |
| 4 | +author: Jane Lusby, Project Director of Collaboration |
| 5 | +team: Rust Foundation Project Directors <https://foundation.rust-lang.org/about/> |
| 6 | +--- |
| 7 | + |
| 8 | +*Preface: This is in response to some feedback the project directors received |
| 9 | +from the Rust Foundation staff. Some of the contributors they'd talked to said |
| 10 | +they didn't feel justified in applying for Foundation grants even though they'd |
| 11 | +love the opportunity, because they don't feel qualified or deserving of them |
| 12 | +compared to the other amazing contributors they look up to within the Rust |
| 13 | +project. This was a little bit heart breaking to me, because I know exactly |
| 14 | +what that feeling is like[^1], and I also know just how wrong they are.* |
| 15 | + |
| 16 | +Imposter syndrome is an insidious problem within software communities. Many of |
| 17 | +us, especially members of marginalized communities, struggle to shake the |
| 18 | +feeling that we aren't as qualified as our peers. This makes us feel |
| 19 | +unqualified and undeserving compared to those around us. It can make us |
| 20 | +hesitate to join communities in the first place and, for those already |
| 21 | +involved, it can create a sense of impending doom where you constantly feel |
| 22 | +like you're going to get found out and expelled from the community. Overall |
| 23 | +it's just not great for mental health, 0/10, would not recommend. |
| 24 | + |
| 25 | +The thing is though, imposter syndrome is a logical fallacy[^2]. Imposter |
| 26 | +syndrome occurs when we discount what we know and inflate what we think other |
| 27 | +people know, and this effect is often then reinforced by systemic bias for |
| 28 | +those of us who don't get the assumption of competence. |
| 29 | + |
| 30 | + |
| 31 | + |
| 32 | +In reality, we're all specialists within the Rust project. We all have areas |
| 33 | +where we have deep expertise and other large areas where we only have the |
| 34 | +vaguest idea of how things work. [Niko](https://github.com/nikomatsakis), one |
| 35 | +of the lang team co-leads, former compiler team lead and core team alumni, |
| 36 | +still comes to me to ask questions about error handling. I frequently need to |
| 37 | +tell my fellow contributors that I have no idea what the acronyms they're using |
| 38 | +mean[^3]. But this doesn't mean we don't deserve our positions within the |
| 39 | +project. We don't expect every contributor know everything, to be perfect, or |
| 40 | +to make no mistakes. The only thing we expect from our contributors is the |
| 41 | +ability to collaborate effectively with others and a willingness to learn and |
| 42 | +grow over time. |
| 43 | + |
| 44 | +The thing that makes the Rust project as good as it is isn't a couple of |
| 45 | +prolific contributors lifting mountains by themselves, it's everyone working |
| 46 | +together that brought us to where we are today. We all make mistakes. The |
| 47 | +project has layer[^4] after layer[^5] of safeguards to make sure we have a |
| 48 | +chance to catch and fix them before they affect our users. These incidents are |
| 49 | +unavoidable, expected, and honestly fine! This is the most fundamental |
| 50 | +philosophy of both the Rust language and the Rust project: we don't think it's |
| 51 | +sufficient to build robust systems by only including people who don't make |
| 52 | +mistakes; we think it's better to provide tooling and process to catch and |
| 53 | +prevent mistakes. It isn't an accident that our motto is "A language empowering |
| 54 | +everyone to build reliable and efficient software." We want people to feel |
| 55 | +empowered to make changes they're not 100% confident in, to make mistakes, to |
| 56 | +learn, and to grow within the Rust project. This is how all of us got to where |
| 57 | +we are today! |
| 58 | + |
| 59 | +So, if you look up to people within the Rust project, if the work we do here |
| 60 | +interests you, if you have always wanted to contribute, and _especially_ if you |
| 61 | +already have contributed, I want you to know that you're one of the people we |
| 62 | +want to apply for [Rust Foundation grants and |
| 63 | +fellowships](https://foundation.rust-lang.org/grants/). You're one of the |
| 64 | +people we want to eventually see join teams. If you're already on a team, I |
| 65 | +want you to know that you're there for a good reason, and we value your |
| 66 | +judgement. You're not an imposter, and I want you to know that I really look |
| 67 | +forward to seeing you around the project. |
| 68 | + |
| 69 | +--- |
| 70 | + |
| 71 | +*To help reinforce and normalize this, I've gathered a list of times when |
| 72 | +current or past project members have struggled with imposter syndrome, have |
| 73 | +made mistakes, have had to ask "basic" questions, and similar experiences that |
| 74 | +will hopefully help set more reasonable expectations for new and old |
| 75 | +contributors across the project.* |
| 76 | + |
| 77 | +* [Jane Lusby](https://github.com/yaahc/): "I frequently struggle with imposter |
| 78 | + syndrome and feeling like I don't get as much done as my peers. When I do all |
| 79 | + of my work based off of notifications I completely lose track of what I've |
| 80 | + done and end up starving the tasks I wanted to work on. I'm learning to set |
| 81 | + reasonable expectations for myself, getting better at managing distractions, |
| 82 | + and being intentional about when I respond to github/zulip notifications |
| 83 | + which helps me with keeping track of what I've done and making steady |
| 84 | + progress on my priorities." |
| 85 | +* [Josh Triplett](https://github.com/joshtriplett/): "I didn't fully understand |
| 86 | + `Pin` until I read fasterthanlime's ["Pin and |
| 87 | + suffering"](https://fasterthanli.me/articles/pin-and-suffering) blog post and |
| 88 | + I gave a talk in 2016 where my [most important |
| 89 | + point](https://www.youtube.com/watch?v=U8Gl3RTXf88#t=24m40s) was that people |
| 90 | + erroneously believe that you have to be an expert to write an RFC or change |
| 91 | + Rust, but that I wasn't, and you don't need to be one either." |
| 92 | +* [Ralf Jung](https://github.com/ralfjung): "I am still surprised anyone is |
| 93 | + taking Miri and Stacked Borrows seriously." |
| 94 | +* [Forest Anderson](https://github.com/angelonfira/): "As someone who just |
| 95 | + learned last week what `dyn` does, it still amazes me that I have something to |
| 96 | + give as a team lead. I was immersed in Rust communities by writing weekly |
| 97 | + blogs about Veloren (I took this on because I didn't know enough to contribute |
| 98 | + code), which lead to helping with the Rust Gamedev newsletter, which led me to |
| 99 | + helping to run the Cross Team Collaboration Fun Times meetup!" |
| 100 | +* [Felix S Klock II](https://github.com/pnkfelix): "Back in 2015, while I was |
| 101 | + presenting a tutorial on Rust, and explaining `&T`, I had someone from the |
| 102 | + audience, a Rust expert, say "ah ah ah! but what about interior mutability"; |
| 103 | + and in my mind I thought "... oh no; what is that?", followed by "... what am |
| 104 | + I doing, I'm not qualified to be up here...". All of us "imposters" must |
| 105 | + strive to prevent such moments from becoming barriers to our own |
| 106 | + participation. I've learned a lot about Rust (and group dynamics, and |
| 107 | + organizational behavior) since then, but I'm still learning every day; |
| 108 | + re-learning, in some cases." |
| 109 | + |
| 110 | +[^1]: Quote from https://yaah.dev/getting-involved: "What happened at the |
| 111 | + Google meetup you ask? Manish, our wonderful meetup organizer, walked up to |
| 112 | + me, unprompted, and asked “Hey, you’re Jane right?”. I was shocked, how the |
| 113 | + heck did Manish know who I was? It didn’t feel as though I’d done anything |
| 114 | + worthy of notice, and yet here he was asking for me by name." |
| 115 | +[^2]: https://twitter.com/ithinkwellHugh/status/1175900121097220096 |
| 116 | +[^3]: https://github.com/rust-lang/project-error-handling/issues/34#issuecomment-1092269566 |
| 117 | +[^4]: Any irreversible changes such as stabilizations require almost everyone |
| 118 | + on the relevant team to approve the change and zero people on the team to |
| 119 | + raise concerns. |
| 120 | +[^5]: We double check all changes with |
| 121 | + [crater](https://github.com/rust-lang/crater) before they ever land on stable |
| 122 | + and are careful to [quickly](https://github.com/rust-lang/rust/issues/88967) |
| 123 | + [revert](https://github.com/rust-lang/rust/issues/90904) |
| 124 | + [changes](https://github.com/rust-lang/rust/issues/82913) that cause problems |
| 125 | + on crater or nightly. |
0 commit comments