DevForge members have gone through all three of these programs, and the honest answer to "which one should I do first" depends entirely on where you're starting from. Here's the comparison we actually give people who ask.
| GSoC | GSSoC | ESoC | |
|---|---|---|---|
| Run by | GirlScript Foundation | Various open-source orgs | |
| Duration | 12+ weeks | ~3 months | Rolling, org-dependent |
| Stipend | Yes | No | No |
| Competitiveness | Very high | Moderate | Varies by org |
| Best for | Contributors who already have merged PRs | First-time open-source contributors | Contributors picking a specific org/domain to go deep on |
If you've never merged a PR anywhere
Start with GSSoC. It's explicitly built for beginners — a public leaderboard, a large pool of participating projects, and mentors who expect to answer basic questions. The goal isn't a stipend, it's your first real merged PR and the muscle memory of the fork → branch → PR → review loop from "Making Your First Pull Request".
If you already have a handful of merged PRs
GSoC is worth the effort, but go in with eyes open about the bar: successful proposals usually come from contributors who've already sent a few PRs to that specific organization before applying, so the maintainers recognize your name when the proposal shows up. Pick your target org months in advance, not weeks.
If you want to go deep on one org instead of collecting PRs broadly
ESoC-style contributions — picking one project (in our case, orgs like shap, sktime, and openml show up repeatedly in our own contribution records) and returning to it repeatedly — build a different kind of credibility. Maintainers start recognizing your name, you start understanding the codebase's actual architecture instead of just its surface, and your PRs get easier to review because you're not re-learning the project's conventions every time.
What we tell people who ask "but which one actually helps with jobs/internships"
All three, for the same underlying reason: they all produce a public, verifiable record of you writing code that other engineers reviewed and accepted. That's the actual signal — not the program's name, but the merged PRs sitting on your GitHub profile with real reviewers attached to them. Pick whichever program gets you to that record fastest given where you're starting from.
