Culture Eats Strategy for Breakfast: Why Psychological Safety Matters in Open Source
Presented at PyCon Greece 2025 by Priya Pahwa
Date: August 29, 2025
Location: Technopolis City of Athens
Presentation Mode: Virtual
Schedule: Website Link
Watch the talk: YouTube Link
Slides: Drive Link
Blog Content: Read Here
Transcript corresponding to YouTube Link
06:33:05 Hello. Hello. Hi everyone. I am really glad to be here at PyCon Greece today and
06:33:11 present my talk. Unfortunately, I couldn’t be there in person, but really really thankful to the organizers for
06:33:18 giving me this opportunity to connect with you all virtually and share my
06:33:23 insights. A little introduction about myself. I am Priya Pahwa from India
06:33:29 who’s trying to navigate the vibrant intersection of all things code, community and collaboration.
06:33:37 Currently I work as a software engineer at a wealth tech startup. I am the
06:33:43 volunteer at the session organizing of Djangonaut Space. I’m also a co-chair of the
06:33:51 fundraising working group at the DSF. I’m also a GitHub Campus Expert and a
06:33:58 GitHub Octern. So most of the time you’d find me wearing a red hoodie organizing hackathons, workshops, field
06:34:05 days or technical talks. So this was a little something about
06:34:12 myself. Before we begin the talk, I just want you to take a moment of
06:34:19 reflection. I want you to think about a few things - about few questions to get
06:34:25 the best gist out of it. Have you ever been in a meeting,
06:34:31 in a chat and you had a question, a really simple, a really honest question,
06:34:38 but you held back from asking it. Maybe you were afraid you’d look inexperienced. Maybe you thought that
06:34:45 you’d feel out of place. Or have you ever seen someone treated unfairly? A really small comment that
06:34:53 made them feel uncomfortable even if it wasn’t intended that way?
06:34:59 Or have you seen a talented person just quietly disappear from a community? No
06:35:07 dramatic exit, just gone. despite you knew that the person actually wanted to
06:35:13 volunteer, actually wanted to help. These moments of microaggressions, these
06:35:20 moments of unconscious bias, we all are familiar with these in one way or the
06:35:27 other. And in the world of open source where our interactions are often public and permanent, the fear of these moments
06:35:34 is amplified even more. Why I’m talking about this? This is because the success
06:35:40 of an open-source project doesn’t solely rely on technical brilliance. It doesn’t solely rely on how amazing optimized the
06:35:48 code solution is. It’s built on the foundation of culture. Yes, that’s what
06:35:56 we will talk about today. Culture eats strategy for breakfast. Why
06:36:02 psychological safety matters in open source. In this we’ll explore about
06:36:10 why culture is crucial than open source. What is psychological safety? Why it
06:36:16 matters? What are the practical ways to build a psychologically safe space? how programs like Djangonaut Space or Django
06:36:24 working groups are working towards onboarding new contributors as well as
06:36:29 maintaining the old guard for sustainability and later we’ll figure out how reinforcing this can help us in
06:36:38 our daily community practices. Okay, back to the original phrase,
06:36:45 culture eats strategy for breakfast. I’m sure by now you might have your
06:36:51 breakfast, lunch or dinner. So, let’s not just restrict it towards breakfast.
06:36:57 I’d say it holds true for everything. Okay, jokes aside, it is a phrase that
06:37:05 holds a really powerful truth. Just imagine you have the most brilliant road
06:37:10 map. You have the coolest features and the best plan set for a project. All you
06:37:18 have to do is get started. But if people in our community are afraid to speak up, what happens?
06:37:25 They hold back their ideas. They don’t point out potential flaws. The best part
06:37:32 of the plan can never come to life. Strategy is just a set of actions.
06:37:40 Culture is what determines if those instructions can be executed or not. All
06:37:46 in all, if you focus only on culture, there is no direction. If you focus only
06:37:51 on strategy, there is no engagement. These two things must work together hand
06:37:57 in hand in order to make an open-source project thrive.
06:38:02 supporting this there is a phrase; there is a whole paragraph in the Django’s
06:38:10 documentation which I personally feel is a very beautiful metaphor. It states
06:38:18 open-source is a garden. It is a community tended garden and we all are
06:38:24 gardeners over here. Sometimes we are pulling the weeds,
06:38:30 sometimes we are planting the flowers, sometimes we’re nurturing growth, but every time the health of this garden
06:38:36 depends entirely on how safe we feel as gardeners. In order to ask for
06:38:45 a new tool, are we afraid? Are we afraid to admit we made a mistake?
06:38:51 In all these things, the garden suffers
06:38:56 every time. And the reason I love this metaphor is because it reminds us that
06:39:04 it’s the job of the community as a whole to manage. The software is never
06:39:10 finished. It is always growing and in order to keep the problems to a minimum,
06:39:18 we must choose to nurture what matters.
06:39:24 Now, any gardener will tell you that it’s not always easy. There are unseen challenges. There are seen challenges.
06:39:31 If no one pulls the weeds, they take over. If snails start eating the plants, progress slows down. And if soil isn’t
06:39:37 rich, plants struggle to grow. But what it means in open source,
06:39:43 if issues pile up without clear guidance, new contributors don’t even
06:39:48 know where to start. If communication slows down, people lose motivation. And
06:39:55 if environment isn’t welcoming, people just leave quietly even if they wanted
06:40:03 to help. Now, how do we prevent this? According
06:40:08 to my belief, the biggest factor in keeping a garden thriving is how safe
06:40:15 the gardener themselves feel. This is where the psychological safety and the
06:40:21 science behind it comes into practice. Amy Edmondson, who pioneered this
06:40:27 concept, notes, psychological safety isn’t about just being nice. It’s about
06:40:34 being openly admitting mistakes. It’s about
06:40:39 giving candid feedback and learning from each other. It is basically a necessity
06:40:46 at this point. It is a shared belief that we can take a personal risk, share
06:40:52 a new idea, admit an error, ask a naive question without fear of humiliation or
06:40:59 retaliation and realize at the same time that a question was never naive. It is
06:41:06 always a curiosity. Google’s massive project Aristotle studied 115 of their engineering teams
06:41:13 to figure out what made them effective. They looked at everything. Talent,
06:41:19 experience, team size, one of the most important factors. Yes, psychological
06:41:25 safety. At this point, this concept is not even just a soft concept. It is
06:41:32 measurable. For example, in open source projects, we can analyze some observable cues and keep a track of, let’s say, the
06:41:40 number of comments on a pull request. More discussion often indicates that people feel comfortable giving as well
06:41:47 as receiving feedback. But that also doesn’t mean that you just entirely spam the whole GitHub discussion or the
06:41:55 comments. Next point, whether a contributor
06:42:00 continues to participate even after a pull request is rejected shows that a
06:42:06 mistake isn’t held against them. They are comfortable in contributing back
06:42:12 again with an open mind; with a welcoming environment. The presence of
06:42:19 constructive conflict suggests that the team views disagreement as an opportunity for growth rather than just
06:42:26 a barrier in order to make the garden thrive. As we discussed,
06:42:33 this is a feeling where it is safe to say, I don’t know how to do this. Can
06:42:40 someone help me out? I think there is a better way to do this. Let’s figure it
06:42:45 out all together. It is a group level phenomena. It is the learning behavior
06:42:54 of the group that in turn affects team performance. Here two important terms
06:43:01 come into picture. Risk taking and vulnerability.
06:43:07 These two terms are at odds with what social psychologists call impression
06:43:13 management. Especially in the tech space we all are in, there is mostly that instinct that
06:43:19 my first PR should create an everlasting impact. It has to be perfect or what
06:43:25 impression would be there if I fail to debug properly in a code pairing session. What would folks think of me if
06:43:32 my PR gets closed even without being merged? What if I review a code in an
06:43:38 open-source project but my review is not fine etc etc.
06:43:45 In one of the works by Professor Brown she shares, we all use this impression
06:43:52 armour to protect ourselves but that armour is heavy and it prevents us from
06:43:58 growing. So having that interdependence within the community is important to
06:44:05 cultivate a safe space and break that barrier.
06:44:10 A most important question is here. Now how do we actually build a safe space?
06:44:17 This is where the actionable part comes. There are three key principle which
06:44:24 might sound obvious or might sound oddly specific but they they are
06:44:31 encouraging curiosity, constructive feedback and leading by example. Talking
06:44:37 about encouraging curiosity, we often state that every expert we know
06:44:45 was once a beginner. What we often do not state is a beginner is often
06:44:53 terrified to ask question. They don’t know if this question is stupid or naive
06:45:00 as said earlier or whether this is an intelligent question. Actually the
06:45:08 question is just a question. Our job is to make that feeling a superpower
06:45:15 instead of a terrific experience. Instead of saying
06:45:21 you should know this, we can say that’s a great question and
06:45:26 rewire the conversation. We must allow experimentation and failure if you want
06:45:32 to build up a speak up culture. Next comes constructive feedback.
06:45:39 Over criticism, feedback is a gift, but it’s often
06:45:45 delivered in a way that sometimes feels like an attack. A comment like, again,
06:45:52 the example we used, this is wrong. It just completely shuts people down. A
06:45:58 better way, I see what you were going for. Here’s another approach that might
06:46:03 help. It’s not about being corrective. It’s about being collaborative.
06:46:09 We must be mindful of perception versus intent when we are dealing with public
06:46:16 online discussions. The feedback might have landed wrong or
06:46:22 have perceived as a critique, but the intent wasn’t always to hurt if it is
06:46:29 given by a well-wisher. It just is perceived wrong sometimes
06:46:35 because of the cultural differences, because of the psychology that folks
06:46:40 have inbuilt. It is
06:46:46 not an attack in most of the cases. It is just a constructive feedback.
06:46:54 So how do we make ensure that it is actually a constructive feedback?
06:46:59 We can use the sandwich feedback algorithm. Start with something positive, then give an actionable
06:47:06 guidance that you actually want to give to that person and then end with the
06:47:11 positive. It’s really simple, but it works. It reinforces progress. It
06:47:19 motivates the other person as well as it gives a clear communication of what you
06:47:25 were trying to say. Next up is leading by example. This is
06:47:31 on all of us. Culture isn’t dictated from top to down. It’s demonstrated by
06:47:39 every single one of us every single day. When a maintainer or an experienced
06:47:45 contributor openly admits they don’t know something, it gives everyone else
06:47:51 permission to be vulnerable. When we highlight a small contribution,
06:47:56 maybe just a type of fix, a little documentation update, we are showing
06:48:02 everyone that all work matters. This is about building a culture where we
06:48:09 highlight competencies and dismantle perceptions of hierarchy. All in all,
06:48:17 no one is expected to have all the answers in this whole universe, right?
06:48:23 In fact, mentors themselves learn alongside mentees. This destigmatizes
06:48:29 not knowing something. It normalizes admitting gaps in knowledge and it encourages a culture where asking
06:48:36 questions is seen as a strength, not a weakness.
06:48:42 If maintainers openly say, “I haven’t figured this part out yet. Let’s
06:48:47 experiment it together.” That together is really beneficial for a beginner in
06:48:55 order to make them feel comfortable and psychologically safe in the environment.
06:49:02 Another factor is creating Slack threads or GitHub discussions titled things we
06:49:08 are still figuring out. This encourages a collective learning process.
06:49:14 At this point you might be wondering does this really make a difference? Does the culture of psychological safety
06:49:22 really matters at this point? Yes. The answer is
06:49:27 resounding yes. Communities that prioritizes psychological safety retain
06:49:33 contributors longer. It attracts diverse talent and creates a welcoming
06:49:38 atmosphere. In the world of Django, I have seen this work in action most
06:49:45 notably through Djangonaut Space. If you’re wondering what this program is all
06:49:51 about, let me brief you about it. It is an 8 week group mentorship program where
06:49:58 the folks passionate about Django or the third party packages start out with the
06:50:05 technology, continue working on the technology, looking to deepen their knowledge within the framework and
06:50:11 empowers the contributors with an accessible inclusive and structured
06:50:16 path. Being a Djangonaut myself in session one and now having had the
06:50:22 opportunity to be an organizer for session three and four and also the
06:50:28 upcoming session five. I can say this by my heart that beyond just onboarding
06:50:35 contributors it creates a psychological safe space in
06:50:41 action. It fuels long-term sustainability in community. It creates the leadership
06:50:48 positions that might potentially come up. The program structure of how this
06:50:55 culture is built. There are three major roles. Djangonauts, navigators and
06:51:02 captains. Djangonauts are the again surprise surprise
06:51:09 Django passionate contributors who want to contribute to the ecosystem and
06:51:14 improve the framework through code or community involvement. Navigators are
06:51:20 the technical folks who help the mentees or the Djangonauts with their technical
06:51:27 expertise within the framework while captains focus on community well-being
06:51:33 ensuring a positive experience and there is the balance between both the aspects.
06:51:40 The program goals are to increase sustainability and regular contributions as discussed, provide an actively
06:51:49 accessible and inclusive space. What is this? We’ll talk about it. And improve
06:51:55 the development and empower everybody in the progress. How do we achieve our goals? We have
06:52:03 weekly check-ins where people share their progress and their blockers. This isn’t about just being judged. It’s
06:52:10 about being supported together. Connection is cultivated by recognizing
06:52:16 that behind every line of code is a real person learning, evolving and striving.
06:52:23 This understanding brings a sense of humanity to our work and builds a community on empathy. Yes, connection
06:52:32 and accountability. Now the sponsorship aspect; we organize
06:52:39 talks, encourage folks to get involved with Django newsletter. There are grants, there are blog post, or simply sometimes,
06:52:47 there is an encouragement with a little nudge that hey this topic you are discussing is really insightful. You
06:52:53 should submit this as a talk for the upcoming conference. And trust me this
06:52:58 has helped me to learn and grow when I was a Djangonaut. In fact, today as well,
06:53:04 I’m learning every day something new in that community.
06:53:10 Sometimes there’s like I’m hanging around in the discord for some open-source work, hop in for a co-working session. Such little
06:53:18 initiatives help to share the right resources and right leadership within the community.
06:53:25 Another value we hold really dear is inclusivity.
06:53:31 We don’t just make the space and wait. We make the space and invite people in.
06:53:39 This active invitation is far more powerful than passive inclusion. And why
06:53:46 I am highlighting this? Because when we reach out directly with opportunities
06:53:51 that align with their skills and passions, the motivation to contribution
06:53:56 follows naturally. Naturally. Now where this active and passive
06:54:02 inclusion must be put into practice that depends on the community and who we are
06:54:08 targeting. There are some notes from the session organizers’ orbit that I have
06:54:15 listed down in my blog post. I got to learn a lot honestly
06:54:21 within this program. Why consent matter? When consent matter because when we are
06:54:27 talking about the open-source world where discussions are you know visible to
06:54:33 everybody and dealing in the digitally forced space
06:54:38 we must take consent everywhere follow the code of conduct.
06:54:45 So to create that safety because it starts with us, it isn’t always dictated
06:54:53 from top to bottom. It’s the people who make up the community. It’s built
06:54:59 through shared responsibilities and shared beliefs. And this is where the balance between
06:55:07 autonomy for individuals and teams come into picture with ensuring collective
06:55:13 goals remain clear at the same time. That’s how I would like to jump into the
06:55:22 role of Django working group because again empowering
06:55:29 folks as well as focusing on the clear goals. The Django Software Foundation delegates
06:55:36 certain powers to working groups which can then act as a behalf of the DSF
06:55:42 without board approvals on very specific items. Some of the working groups
06:55:47 include social media. They take care of Django’s official profiles and amplify important announcements from the
06:55:53 community. There is fundraising working group focusing on the corporate and major donations to keep Django
06:55:59 financially sustainable. There is website working group. There is code of conduct working group. All in all, they
06:56:06 ensure that it remains a welcoming space to maintain the old guard as well as
06:56:14 onboard the new contributors within the ecosystem. If you’re interested in helping out,
06:56:21 that’s great. Each working group has a charter available on the GitHub’s
06:56:26 Django repository, DSF working group, where you’ll find details on how to join. If you have a new idea for a
06:56:33 working group that is even better. The process for proposing is also outlined over there. There are plenty of
06:56:39 opportunities in the community. Now let’s
06:56:45 talk about how the importance of psychological safety and practical
06:56:52 examples can be reinforced in every community beyond just good intentions.
06:56:59 There there is a concept called recurring cohesion where groups of
06:57:05 developers who have collaborated previously work together again as per deeper trust. The initial step is to
06:57:12 break that golden rule you know of treat others how you want to be treated.
06:57:17 Instead practice treating others how they want to be treated because the
06:57:23 open-source community is huge. People are belonging to different cultures,
06:57:31 different backgrounds. So what frequency of check-ins work for them? What
06:57:38 communication style makes them feel included? This intentional shift has a great
06:57:45 impact on the community culture. No contribution is too small. Yes, the
06:57:52 conferences, the sprints, the communities, the celebrations are so
06:57:58 vital because these global gatherings reinforce our shared passion and a sense of community. I’m really grateful to the
06:58:07 PyCon Greece and the organizers for holding such an amazing confidence. The
06:58:14 Django 20th birthday celebrations happening all across the globe are an excellent example of this as well. Tools
06:58:21 like Django newsletter intentionally reinforcing our culture is a shout out.
06:58:26 A public celebration of wins, a thank you every time we see a first time PR or a documentation fix. We are reinforcing
06:58:34 the culture with all these things. We are saying effort of every individual
06:58:40 matters. We are celebrating it together. Yet at the same time, we should realize
06:58:46 that psychological safety isn’t a switch you flip or a policy you enforce. It is
06:58:53 the result of a community that actively chooses to support, include, and uplift
06:58:59 each other every single day. And it should follow organically. It should
06:59:05 take the course naturally rather than forcing it. Sometimes we have to
06:59:12 reinforce stuff but make sure how and
06:59:17 where to apply the same. So what’s our job now?
06:59:23 The real measure isn’t the quality of the code base, right? It’s the quality
06:59:29 of the culture we cultivate together. The choice that the community as a whole
06:59:36 makes every day. The next time we contribute to Django or Python or any
06:59:43 open-source project, let’s ask ourselves this. Am I making this space safe for
06:59:50 someone else? Am I lifting others up the way I wished I was lifted up? Am I
06:59:57 creating a psychologically safe space? Am I focusing on culture or just the
07:00:03 strategy? Am I focusing on just the strategy or the culture? This just
07:00:08 doesn’t happen. It’s the choice we make. And when we get it right, we don’t just
07:00:14 build better software, we build a better, more inclusive future and the
07:00:20 sustainability of that software. Thank you so much for listening to me about
07:00:27 this talk. I’ll be there on Discord. If you have any questions,
07:00:32 reach out to me. We’ll see you next time. Hope you have an amazing
07:00:38 conference. Bye-bye.
Watch the talk: YouTube Live
Blog Content: Read Here