April 6, 2026

Contributing to the Django community

There are a lot of ways to get involved in the Django community. This post tries to highlight various opportunities, but there’s a more comprehensive list on Djangonaut Space’s website here. This blog post was generated from my 2025 DjangoCon Africa Keynote, “Contributing to the Django Community”.

Writing code

This may be the most obvious way to contribute to the Django community, through the codebase.

Contribute to Django itself

Sarah Boyce has a great talk called “Your first Django Contribution” that’s worth watching before you dive in. Keep in mind, contributing to Django core is challenging. It can take months before your code is committed to main. It requires patience and perseverance, but your efforts are genuinely appreciated. Here is the documentation to start with.

Triage tickets

You can check whether bug reports are valid by trying to reproduce them. The ticket tracker is at code.djangoproject.com/query.

Review pull requests

The Fellows have said this is an area where additional help is needed. The queue is at dashboard.djangoproject.com. If you’re interested, the fellows have a few talks on this topic. Sarah Boyce gave a keynote called “Django needs you! (to do code review)” and Jacob Walls gave the talk “We’re all becoming reviewers (maybe we already were)”. Give them a look!

Help translate Django

The “Localizing Django” section in the documentation has your starting guide.

Propose and discuss new feature ideas

The Steering Council started a new flow for suggesting features at github.com/django/new-features. You can open an issue with your idea, or just react to existing ones. The repo uses emoji reactions to let you signal your preferences without needing to write a full comment. That feedback is genuinely useful.

djangoproject.com, Trac (Django’s ticketing system), and djangopackages.org are all open source and maintained by the community. These tend to be a bit easier to get started on than Django. There are less strict backwards-compatibility rules, and shorter release cycles which mean you can see your changes in the wild faster. Other sites: djangonaut.space, djangosnippets.org and djangogirls.org.

Contribute to third-party packages

There are hundreds of Django packages out there, most of which welcome new contributors. djangopackages.org is a good place to find them. I’d recommend starting with something you use regularly. You can also find popular community packages in Django Commons, which is a community org focused on making third-party maintenance more sustainable.

Create your own package

If you see a need that’s not being met, you can be the person to solve it!


Organizing

Run for the DSF Board or Steering Council

The Board guides Django’s marketing, governance, and outreach. The Steering Council handles technical direction. Both have regular elections. If you’ve been active in the community for a while, please consider running. If interested and looking to learn more, it may be helpful to review the previous DSF Board nominations blog post. Similarly, here’s the one for the most recent Steering Council election.

Volunteer for a Working Group or Team

The Teams and Working Groups are small groups with specific missions delegated by the DSF board. Currently accepting volunteers: AI, Code of Conduct, Fundraising, Website, Social Media, and Online Community. Please note that some of these may have expectations of prior activity before joining the Working Group. For example, you don’t need to be part of the website WG to contribute to djangoproject.com, but contributing to the project factors strongly into your consideration for membership.

There are other Working Groups being formed too: Package Maintainers, Platform, Google Summer of Code, and Diversity and Inclusion. Participating in these in the early stages means you can help shape those from the start.

You can find more information at github.com/django/dsf-working-groups.

Become a conference organizer

Conferences are one of the most important parts of our community! They help us bond, make decisions, and drive innovation. If you want to have a significant impact, consider joining an organizing team. You can reach DjangoCon Africa at [email protected], DjangoCon Europe at their site, and DjangoCon US at [email protected].

There are also other Django events! Django Congress in Japan, Django Day Copenhagen, and Django Day India.

Volunteer with Django Girls+ and local meetups

These are ways to meet fellow developers, grow your network, and pay it forward. Find events at djangogirls.org and local meetups at djangoproject.com/community/local/.

Apply to Djangonaut Space

Djangonaut Space is an 8-week mentorship program for contributing to Django. Participants are placed into teams with a Navigator (technical mentor) and Captain (community mentor). Visit djangonaut.space for details. If you already contribute regularly and want to mentor others, they always need Navigators (technical mentors).


Connecting with one another sustains the community. Since meeting in person is expensive, we should make a conscious effort to engage online wherever you feel comfortable.

Join the Django Forum or Django Discord, or find the community on Mastodon, LinkedIn, BlueSky, X, or Reddit. Sharing thoughts, asking questions, and answering others’ all help connect people.


Creating content

Write blog posts, create videos, or start a podcast. Your topics can be wide and varied! You can talk about the Django community, your local community, a favorite package, a difficult bug you solved. It doesn’t have to be long, frequent, or perfect. The community wants to see people try, and we want to support each other.

If you create something, share it on social media with the #Django hashtag and post it on the Forum or Discord!

Some community sites worth knowing about: django-news.com (newsletter), djangobook.com (books), and djangotv.com (video aggregator).


How to pick where to start

With so many options, it’s easy to feel overwhelmed. Here’s a framework that helps.

Participate where the benefits for you most outweigh the costs. The costs are straightforward: time, energy, and stress. The benefits are more personal; they can be career-related, skill-based, or just the satisfaction of helping someone.

Ask yourself a few questions:

  • Why are you participating in open source? To find a job? Because your company depends on it? Because you enjoy writing code? Understanding your “why” makes it easier to evaluate opportunities.
  • What motivates you? Technical problem-solving? Structuring things well? Collaborating with others? Know this about yourself and use it to filter.
  • What interests you? If databases fascinate you, find opportunities that involve databases.
  • What skills do you want to learn? If you want to improve your debugging, help people on the Forum or Discord. If you want to learn graphic design basics, join a social media team for a conference.

Then look at what’s actually available. The Board and Steering Council have elections. Some groups select their own members. Major conference roles are set months in advance. Be realistic about timing.

If you’re just starting out

Some good entry-level options:

  • Triage issues or contribute PRs for Django or popular packages
  • Volunteer at a conference or event
  • Write about your experiences
  • Ask and answer questions on the Forum or Discord
  • Participate in social media conversations

You don’t have to do all of these, but do try to be consistent. If you write a blog post and participate in a few forum threads every month for a year, you’ll feel genuinely connected to the Django community. You’ll start recognizing names and avatars, and people will start recognizing you.

Over time, opportunities will find you

When you engage with a community regularly, you start seeing the problems nobody is working on. There’s no shortcut to this. You need to immerse yourself in a community and wait.

My time answering help questions for Django lead to proposing a debugging tutorial for a conference. Maybe I would have eventually proposed it, but maybe not. It’s certainly possible that the years I spent helping other debug their problems gave me the confidence I needed to teach others.

A screenshot of a Discord message from Rachell. It reads, Would you all be open to set up a call in the next week or two to discuss this more? It is really exciting to see others just as enthusiastic about this idea!
A screenshot of a Discord message from Rachell. It reads, Would you all be open to set up a call in the next week or two to discuss this more? It is really exciting to see others just as enthusiastic about this idea!

Another time it happened for me was when Djangonaut Space was forming. Because I had availability in my schedule and I was engaged with the Django discord community, I saw Rachell Calhoun ask this question about forming a team to help people contribute to Django. If already had a full plate, I wouldn’t have been able to commit to this. By not over-committing, I allowed my future self to participate in the coolest initiative I’ve been a part of.

I’ve seen this happen for other people too.

A screenshot of DryORM showing a Django model on the left panel and the queries ran on the right.
A screenshot of DryORM showing a Django model on the left panel and the queries ran on the right.

Xterm is an official helper on the Django discord. I’ve seen them around for a few years. Then in May they resurrected their Dry ORM project that allows a person to write Django models, run some code with those models on a web app then see the queries that ran. Xterm saw the need for this project while helping people. The clarity to recognize the problem only came because they were immersed in the Django Discord.

The Lilian Method: Contribute where it helps you on your journey

The last thing I want to mention about choosing where to contribute is what my friend Lilian shared with me. She chooses how to contribute based on what that opportunity will teach her and if it helps with a longer term goal. It’s such a healthy, productive and positive way to approach open source. It’s genius the more you think about it too.

Eventually you’re going to hit a hard challenge. Something that’s going to make you ask, “is this worth it?”. For example, if you’re working on some small, weird bug, it’s possible only a few dozen people will benefit from it being fixed.If we’re only asking “is ask worth it?” based on the time spent and the number of people impacted, then we shouldn’t work on it.

However, if you factor in the knowledge gained, relationships built and the doors being opened while working on the issue, it’s more likely that it is worth it.

That’s why Lilian’s selection method is genius. It’s designed to help move herself forward when she eventually hits those road blocks. She knows what she’s working on is helping her learn more and that the journey is worth more than the bug being fixed. So when choosing where to contribute, be like Lilian.

Evaluating Opportunities

Here are the things to keep in mind when evaluating opportunities:

  1. Don’t try to do all the things.
  2. Do try to be consistent with periodic contributions.
  3. Engaging over time will lead to more opportunities.
  4. Choose opportunities that build toward your goals.

Why should you participate in OSS?

My number one reason why you should contribute is that you’ll learn from others.

I help with the package, Django Simple History where I learn from the other maintainer ddabble. He crafts code and PRs in a way that is easy to understand. Working with him exposes me to an expert’s way of thinking, and he creates a friendly environment that’s open to questions. With each interaction, I learn something new on how to be better myself.

An enthusiastic and open mindset increases learning

Then there is the friendship consideration. I’ve noticed that when I make friends in the community and then those friends excitedly write about a topic, I’m physically compelled to read it. I approach these topics with an enthusiastic and open mindset, which helps me learn the material quicker. It doesn’t hurt I can ask the person several follow-up questions too.

So I’m part of a co-writing group with Matthias Kestenholz and Sarah Abderemane. I know Matthias from maintaining the Django Debug Toolbar together and Sarah, well she’s everywhere! This writing group is just us silently writing on a voice call every other week. I highly recommend this approach to writing if you struggle to make time for it. But anyway, because of that writing group, when Matthias writes about maintaining referential integrity in a JSON field, you can bet I’m going to read it. Or Sarah, publishes an accessibility checklist, I’m reading it and trying to figure out how to use it work. The more these two write, the more I learn.

You’ll grow as a person

A photo of Velda in the front smiling, with Jeff and myself in the background smiling.
A photo of Velda in the front smiling, with Jeff and myself in the background smiling.

Beyond the technical growth, you will grow as a human too. My friend Velda Kiara who is in the front of the photo who I know through DjangoCon US and Djangonaut Space has taught me and continues to teach me to take the wins as they are and to stop undercutting them. My friend Jeff Triplett, seen in the back next to me, I met through DjangoCon US. He has taught me how to look at things from a more measured and holistic viewpoint.

A photo of myself and Rachell sitting at a bench amidst the DjangoCon US crowd. I'm laughing too hard and Rachell is smiling broadly.
A photo of myself and Rachell sitting at a bench amidst the DjangoCon US crowd. I'm laughing too hard and Rachell is smiling broadly.

My friend Rachell, who I met through Djangonaut Space, helped me improve as a community organizer and to find better ways to provide critical feedback. Specifically the action of calling people in place of calling people out. Calling people in is less likely to cause a person to shut down entirely and more likely to result in the behavior you want.

A photo of myself and Natalia at the airport after DjangoCon US.
A photo of myself and Natalia at the airport after DjangoCon US.

My friend Natalia who I met through DjangoCon US, has helped me focus more on being welcoming to others. Such as showing acknowledgement and gratitude towards all contributions as well as recognizing and reducing language that excludes people.

So my advice to you is, if you’re the type of person who wants to grow and get better, consider contributing to Django.

It will help you in your career

Contributing to open source will help you in your career. That is true, but it may not be true in the way we want. Contributing to open source is like participating in an internship. It’s a lot of work, and you don’t realize how valuable it is until you’re well into it.

It’s the entirety of the experience that’s beneficial rather than any one specific thing. It exposes you to new ideas and concepts. It helps form good habits. It puts you in touch with people who can provide advice and feedback. Contributing to open-source is one of those things that becomes more valuable the longer you participate.

It introduces you to new people and grows your network

My last argument is that you should contribute because it introduces you to other people and grows your network.

Beyond the job opportunities they can provide, the lessons they can teach you and the mentorship others can offer, building friendships and connections is what gives you a sense of community. A strong sense of community is correlated with better mental health. It is associated with reduced symptoms of depression, anxiety and stress. That’s pretty dang cool.

I grew up in a relatively insulated environment in the midwest of the United States. I didn’t know many people outside of that community. The turning point for me was at DjangoCon US 2022 in San Diego. Being there, I felt like I was finally amongst my people. That experience paved the way for me to invest into the Django community and build deep, meaningful connections with the community.

In fact, in preparation for the talk that inspired this blog post, I able to ask a few friends from across Africa to review my outline for cultural misunderstandings. It was important to me to ask people who I had built a connection with, people that I knew. It’s a personal achievement of mine that I have friends across the globe who want to see me succeed. That win for me was only possible because the Django community strives to be open, welcoming and more diverse. Contributing allows each of us to grow personally by meeting new people from different cultures.


What I want you to take away

  • Consistency and perseverance are key
  • Self-reflect on your goals and desires
  • Find alignment between your goals and OSS
  • Engaging will reveal more opportunities
  • You will learn and grow

Remember when contributing to open source consistency and perseverance are key. With Django, there are several opportunities available to you across the community. When reviewing those opportunities, self-reflect on your goals and desires. The more aligned the opportunity is with your own goals, the more engaged you will be and you’ll be less likely to burnout. Over time, you’ll start seeing underlying challenges the community is facing and opportunities unique to you will start appearing. As you contribute, you’re going to learn from others and grow. Not only as a developer but as a human. You’ll find people around the globe who want to see you succeed and cheer you on as you take on bigger and bigger challenges.

And if you’re like me, and you’ve never quite fit in. You might realize that this group of people, the Django community. Is the group of people who you’ve been looking for the whole time.

So when you’re ready, come join us.