DEV Community

Cover image for How to Actually Start Contributing to Open Source AI Projects (A Step-by-Step Guide)
Mahmoud Mabrouk
Mahmoud Mabrouk

Posted on

How to Actually Start Contributing to Open Source AI Projects (A Step-by-Step Guide)

So you've decided to contribute to open source. Great choice. But where do you actually start?

This guide will walk you through the exact process I've seen work for dozens of contributors to Agenta and other AI projects.


How to Actually Start Contributing (The Step-by-Step Guide)

You've picked a project. Now what? Here's exactly how to make your first contribution:

Phase 1: Build Trust (Week 1)

Don't jump straight into code. Start small and build credibility:

1. Join the community

  • Join Slack/Discord
  • Introduce yourself (mention you're looking to contribute)
  • Read the last 50+ messages to understand the vibe

2. Fix documentation

  • Found a typo? Fix it.
  • Unclear setup instructions? Clarify them.
  • Missing examples? Add one.

These PRs get merged fast and show you can follow the contribution process.

3. Help others

  • Answer questions in issues/discussions
  • Reproduce bugs for others
  • Share your setup experience

Why this works: Maintainers notice helpful community members. When you submit a code PR later, they'll remember you positively.

Phase 2: Learn the Codebase (Week 2-3)

Don't just read the code. Use it:

1. Build something with it

  • Follow tutorials
  • Build a small project
  • Try to break it (in a good way)

2. Run the tests

  • Set up the dev environment
  • Run the test suite
  • Understand what's being tested

3. Read issues

  • Look at closed issues to understand common problems
  • Read open issues to see what's needed
  • Pay attention to "good first issue" labels

4. Study merged PRs

  • See what maintainers approve
  • Notice code style patterns
  • Understand the review process

Pro tip: Take notes! Document your setup process, confusing parts, and potential improvements.

Phase 3: Make Your First Code Contribution (Week 3-4)

Start with the smallest possible change:

1. Pick a good first issue

  • Look for labels: "good first issue," "help wanted," "beginner-friendly"
  • Comment saying you'd like to work on it
  • Ask questions if anything is unclear

2. Before writing code:

  • Discuss your approach in the issue
  • Get feedback from maintainers
  • Avoid surprises in the PR

3. Write the code:

  • Follow the project's style guide
  • Write tests (this is crucial!)
  • Update documentation
  • Keep it small (< 200 lines changed)

4. Submit a great PR:

   ## What
   [Brief description of what you changed]

   ## Why
   [Why this change is needed; reference the issue]

   ## How
   [Brief explanation of your approach]

   ## Testing
   [How you tested this; include steps to reproduce]

   Fixes #123
Enter fullscreen mode Exit fullscreen mode

5. Be responsive:

  • Respond to review feedback quickly
  • Don't take criticism personally
  • Ask questions when you don't understand
  • Say "thank you" when the PR is merged

Phase 4: Become a Regular Contributor (Ongoing)

Now you're part of the community:

1. Keep contributing:

  • Tackle slightly harder issues
  • Help review other PRs (learn from them)
  • Suggest improvements

2. Specialize:

  • Become the go-to person for a specific area
  • "The evaluation metrics person"
  • "The docs person"
  • "The TypeScript integration person"

3. Build relationships:

  • Thank maintainers for reviews
  • Help onboard new contributors
  • Participate in community calls/discussions

4. Think long-term:

  • This isn't about one PR. It's about becoming a trusted contributor.
  • Some contributors become maintainers
  • Some get hired by the company
  • Some build their network and reputation

Common Mistakes to Avoid

❌ Don't Do This:

1. Submitting huge PRs without discussion

  • "I rewrote the entire evaluation system!"
  • Maintainers will reject these almost instantly

2. Ignoring contribution guidelines

  • Not running tests
  • Not following code style
  • Not writing documentation

3. Getting discouraged by rejection

  • Your first PR might get rejected
  • This is normal and part of learning
  • Ask for feedback and try again

4. Working on issues already assigned

  • Check if someone is already working on it
  • Don't duplicate effort

5. Being defensive about feedback

  • Code review is not personal criticism
  • Learn from every comment
  • Thank reviewers for their time

✅ Do This Instead:

1. Communicate early and often

  • "I'd like to work on this, here's my approach"
  • "I'm stuck on X, can someone help?"
  • "Thanks for the review, let me fix that"

2. Start small, think big

  • First PR: Fix a typo
  • Second PR: Add a test
  • Third PR: Add a feature
  • Tenth PR: Architect a major improvement

3. Be patient and persistent

  • Good contributions take time
  • Some PRs need multiple rounds of review
  • That's how you learn

4. Help others

  • Answer questions in issues
  • Review other PRs (even as a beginner)
  • Share what you learned

The Career Impact: Real Talk

Let me share what I've seen happen to developers who contribute to open source:

The Portfolio Effect

Traditional portfolio: "Todo app, weather app, portfolio website"

Open source portfolio: "Contributed evaluation metrics to DeepEval, added RAG features to LlamaIndex, fixed critical bugs in Instructor"

Which would you hire?

The Network Effect

One contributor I know:

  • Started fixing docs in an AI project
  • Became a regular contributor
  • Got noticed by the maintainers
  • Was referred for a job at their company
  • Got hired as a junior ML engineer

Timeline: 4 months from first PR to job offer.

The Learning Effect

You'll learn more in 3 months of open source contributions than 6 months of tutorials because:

  • You're reading production code
  • You're getting feedback from senior engineers
  • You're solving real problems
  • You're learning tools and workflows used in industry

The Confidence Effect

There's a massive difference between:

  • "I learned LangChain from a tutorial"
  • "I contributed features to LlamaIndex that are used by thousands of developers"

One shows you can follow instructions. The other shows you can create value.


Your Next Steps

Here's your action plan for the next 30 days:

Week 1: Explore

  • [ ] Pick 2-3 projects from AI open source projects
  • [ ] Star them on GitHub
  • [ ] Read their README and documentation
  • [ ] Join their community channels
  • [ ] Try building something small with each

Week 2: Setup

  • [ ] Pick one project to focus on
  • [ ] Set up the development environment
  • [ ] Run the tests
  • [ ] Build something with it
  • [ ] Note any issues/improvements

Week 3: Contribute

  • [ ] Find 3 "good first issues"
  • [ ] Comment on one saying you'll work on it
  • [ ] Submit your first PR (even if it's just docs)
  • [ ] Respond to feedback

Week 4: Grow

  • [ ] Submit a code contribution
  • [ ] Help answer a question in issues
  • [ ] Review another contributor's PR
  • [ ] Plan your next contribution

After 30 days, you'll have:

  • ✅ At least 1 merged PR
  • ✅ Understanding of how professional development works
  • ✅ Connections in the AI/ML community
  • ✅ Something real to put on your resume

Final Thoughts

Contributing to open source isn't just about giving back to the community (though that's great too).

It's about investing in yourself.

Every PR you submit is:

  • A line on your resume
  • A conversation with a potential mentor
  • A demonstration of your skills
  • A step toward your dream job

The best time to start was yesterday. The second-best time is today.

Pick a project. Join their community. Submit your first PR this week.

Your future self will thank you.


Ready to Make Your First Contribution? Start with Agenta

If you're looking for the perfect project to start your open source journey, I'd love to invite you to contribute to Agenta.

Why Agenta is perfect for your first contribution:

  • Beginner-friendly community: We have 70+ contributors, many of whom started as complete beginners
  • Active mentorship: Our maintainers actively review PRs and mentor new contributors
  • Real-world impact: Work on production features used by companies building LLM applications
  • Full-stack learning: Contribute to Python/FastAPI backend or React/TypeScript frontend
  • Good first issues: We maintain a list of beginner-friendly issues to get you started
  • Career opportunities: Many of our contributors have landed ML engineer roles at top companies

What you'll work on:

  • LLM prompt management and evaluation
  • Observability and tracing features
  • UI/UX improvements
  • New LLM provider integrations
  • Documentation and examples

Getting started is easy:

  1. Check out the Contributing Guide
  2. Browse good first issues
  3. Join our Slack community and introduce yourself

I'm a maintainer of Agenta, and I personally commit to helping you make your first contribution. Drop a message in our Slack, and let's get you started!

Repository: github.com/Agenta-AI/agenta


Resources


Found this helpful? Drop a ❤️ and share it with other developers!

Have questions or success stories? Drop them in the comments below! 👇

Top comments (2)

Collapse
 
ldrscke profile image
Christian Ledermann

In my contributor guidelines, I usually include the tip:

commit often commit early. Open a draft pull request in the early development stage so you can recieve feedback (and some hints around potential pifalls) about your approach.

Collapse
 
mmabrouk profile image
Mahmoud Mabrouk

+1

I'd usually ask contributors to first describe what they are planning to do and get the okay from the team before assigning the issue.