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
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:
- Check out the Contributing Guide
- Browse good first issues
- 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
- First Timers Only; Find beginner-friendly issues
- How to Contribute to Open Source
- GitHub Skills; Learn Git and GitHub
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)
In my contributor guidelines, I usually include the tip:
+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.