Skip to content

Google Summer of Code 2026

Ewout ter Hoeven edited this page Dec 5, 2025 · 4 revisions

Build the Future of Agent-Based Modeling

Mesa is an open-source Python library for agent-based modeling (ABM), used by researchers and developers worldwide to simulate complex systems, from epidemics to economies to ecosystems. Agent-based models allow us to understand how individual behaviors lead to emergent system-level patterns, making them invaluable tools for research in social sciences, biology, economics, and beyond.

Through GSoC, we're looking for 2-4 contributors to help shape the next generation of Mesa. Whether you're interested in performance optimization, visualization, new modeling paradigms, or developer experience, there's meaningful work to be done. Mesa believes open source collaboration accelerates scientific discovery, and through GSoC we invest in contributors who help researchers worldwide simulate complex systems and understand emergent behaviors.

Quick Start

Getting involved with Mesa before submitting your proposal is essential. The strongest candidates are those who've already built models, contributed to discussions, and understand how Mesa works from the inside. Here's how to get started:

  1. Read the GSoC Candidates Guide: This guide contains insights from previous contributors about what made their proposals successful, common pitfalls to avoid, and how to make your application stand out.
  2. Learn agent-based modeling: Work through our introductory tutorial. Understanding ABM concepts is non-negotiable; we're a modeling library, and you need to understand what our users are trying to accomplish.
  3. Build models: This is the most important step. Create your own models and contribute them to mesa-examples. Nothing demonstrates your readiness better than working code.
  4. Join the conversation: Connect with us on Matrix chat and GitHub Discussions. Introduce yourself, ask questions, and participate in discussions. We want to get to know you before the application period.

Key Dates for 2026

The GSoC timeline spans most of the year, but there are a few critical deadlines set by Google:

Date Milestone
March 16 Contributor proposals open
March 31 Proposal deadline
April 30 Accepted projects announced
May – November Coding period (12-22 weeks, depending on project scope)
November 11 Program end

All dates in 2026. The full timeline is available on the GSoC website.

We strongly encourage you to start engaging with Mesa well before March. Contributors who show up in the final week before the deadline rarely submit competitive proposals, since there simply isn't enough time to understand the codebase and community.

What We're Looking For

Technical skills

Mesa is a Python library, so solid Python proficiency is required. You should be comfortable reading and writing Python code, understanding object-oriented programming, and working with common data structures. Beyond that:

  • Helpful: Experience with NumPy, pandas, or scientific Python ecosystem
  • Helpful: Familiarity with data visualization libraries or web frameworks like Solara
  • Essential: Willingness to learn agent-based modeling concepts if you haven't encountered them before

Don't worry if you're not an expert in all of these, we care more about your ability to learn than your current knowledge. What matters is that you're genuinely interested in the domain and willing to put in the work.

Qualities we value

Technical skills matter, but they're not everything. We're looking for contributors who embody these qualities:

  • Curiosity over credentials: We want people who ask questions, explore ideas, and dig into the codebase to understand how things work. A curious mindset will take you further than an impressive resume.
  • Builders: The best proposals come from people who've actually built Mesa models and discovered firsthand what's missing or could be improved. Theory is nice, but working code is better.
  • Community mindset: Open source is building together, and making that fun and exciting. It's a collaborative, non-zero-sum endeavor. Many of our past GSoC contributors have become maintainers and mentors, continuing to shape Mesa long after their GSoC summer ended. We're looking for people who might do the same.

What makes a Strong proposal

Your proposal is your chance to show us how you think and what you're capable of. Strong proposals typically share these characteristics:

  • Demonstrates hands-on Mesa experience: Link to models you've built, PRs you've submitted, or discussions you've participated in. Show us you've already invested time in understanding Mesa.
  • Includes concrete code examples: Don't just describe your feature in abstract terms. Show us what the API would look like, how users would interact with it, and what problems it solves.
  • Shows proof-of-concept work: Even a rough prototype demonstrates that your idea is feasible and that you can execute on it. This dramatically strengthens your proposal.
  • Fits Mesa's mission: Our goal is making agent-based modeling accessible to researchers worldwide. Your project should clearly serve that mission, with a well-defined target audience and use cases.

Project Ideas for 2026

Coming soon! We're currently discussing project ideas for 2026. Participate or check back here as we get closer to the application period.

In the meantime, there's plenty you can do to prepare:

  • Review 2025's project ideas to understand the scope and format we're looking for. This gives you a sense of what's realistic for a GSoC project.
  • Explore major Mesa discussions to see what the community has been thinking about. Many great project ideas emerge from these conversations.
  • Build models and identify gaps: As you work with Mesa, you'll naturally discover things that are harder than they should be, features that are missing, or workflows that could be improved. Your own ideas are welcome, and proposals based on genuine experience often stand out.

What to Expect as a Contributor

If you're selected, here's what your GSoC experience with Mesa will look like:

Mentorship Structure

You won't be working alone. Every contributor is assigned a dedicated primary mentor who will guide you through the project, help you navigate challenges, and provide regular feedback on your work. You'll also have backup mentors available if your primary mentor is unavailable or if you need additional perspectives.

Beyond your assigned mentors, you'll have access to the broader Mesa development team. We're a friendly community, and other maintainers often jump in to help with code reviews, design discussions, or technical questions.

Meeting Schedule

We hold regular meetings to keep everyone connected and ensure projects stay on track:

  • Weekly 1-on-1 meetings with your mentor to discuss your specific project, review progress, and plan next steps
  • Mesa community dev meetings on Tuesdays at 12:30 GMT, where the broader team discusses Mesa development

Your weekly schedule will alternate between project-focused meetings and community meetings, giving you both dedicated attention for your work and exposure to the wider Mesa ecosystem.

Can't make the Tuesday time slot? That's completely fine—we understand contributors are spread across time zones and have other commitments. We'll work with you to find meeting times that fit your schedule.

Time Commitment

GSoC projects with Mesa follow the standard GSoC structure:

  • Standard projects: approximately 12 weeks of coding
  • Extended projects: up to 22 weeks, if you and your mentor agree that a longer timeline makes sense for your project's scope

The exact hours per week can vary depending on the project size (either 175 or 350 hours) and your other commitments, but expect to treat this as a significant part-time commitment during the coding period.

Our Philosophy

We want to be clear about something: the primary goal isn't just completing deliverables. Of course we want to ship great code, but GSoC is fundamentally about giving you real development experience, integrating you into the open source community and getting you excited about working in the open.

This means we care about your growth as a developer and community member as much as we care about the features you build. We'll push you to write good code, but we'll also support you when things get difficult. We'd rather you learn deeply and ship something solid than rush to check boxes on a feature list.

Our Values

Mesa's community is built on a few core values that guide how we work together:

  • Be polite: We're all volunteers contributing our time because we believe in this project. Treat everyone with respect and assume good intentions.
  • Everyone has something to learn: No matter how experienced you are, there's always more to discover. Approach conversations with humility and openness.
  • Be curious, not judgmental: When you encounter code or ideas you don't understand, ask questions rather than making assumptions. Curiosity leads to better solutions.
  • Contribution ebbs and flows: Life happens. Sometimes you'll (and we) have more time for Mesa, sometimes less. That's completely normal, and we won't judge you for it. Contribute as you can (and be a bit lenient if we miss something as well).

Past Contributors

GSoC 2025 brought us four contributors working on Mesa Frames (our high-performance DataFrame-based backend), front-end visualization improvements, and Mesa-LLM integration for AI-powered agents. These projects pushed Mesa forward in meaningful ways and the contributors became valued members of our community.

What we're most proud of is that several past GSoC contributors remain active in the Mesa community as maintainers and mentors. For many, GSoC was just the beginning of a longer journey with Mesa. We hope the same will be true for you.

Preparing Your Proposal

Here's the most important advice we can give you: Don't just fix random issues. Build models.

This might seem counterintuitive: shouldn't you be contributing code to show you can work on Mesa? But here's the thing: by building models with Mesa, you'll accomplish something more valuable. You'll understand what works well and what's frustrating. You'll discover genuine gaps that would make great projects. And you'll be able to write a proposal grounded in real experience rather than abstract ideas.

When you build models, contribute some of them to mesa-examples. This shows you can work with our codebase and community processes, and it gives us something concrete to evaluate.

Other Ways to Engage

Building models is the priority, but there are other valuable ways to contribute:

  • Participate in PR reviews and discussions: You don't need to be an expert to provide useful feedback. Fresh eyes often catch things maintainers miss.
  • Help answer questions on Matrix: If you've learned something about Mesa, share that knowledge with others who are just starting out.
  • Read the Contributing guide: This will help you understand our development workflow, coding standards, and how to submit quality contributions.
  • Explore the codebase: Read through Mesa's source code to understand how it's structured. Look at recent PRs to see what kinds of changes are being made and how the review process works.

Common Questions

What if I'm new to agent-based modeling?

That's okay! Many successful contributors started without ABM experience. The key is that you're willing to learn. Start with our tutorial, build a few simple models, and read about classic ABM examples like Schelling's segregation model or Conway's Game of Life. Understanding ABM concepts is essential for contributing to Mesa, but you don't need a PhD in complexity science—just genuine curiosity and willingness to learn.

What if English isn't my first language?

No problem at all. Clear communication matters more than perfect grammar, and many of our contributors and maintainers are non-native English speakers. If you can explain your ideas and understand technical discussions, you'll do fine. Don't let language concerns hold you back from participating.

What if I don't get selected?

First, know that not being selected doesn't mean your proposal wasn't excellent. We receive many strong applications but can only accept 2-4 contributors. The selection process is competitive, and sometimes great candidates don't make it simply because we don't have enough slots.

More importantly: you're absolutely welcome to keep contributing regardless of GSoC. Many of our best community members started outside of any formal program. If you've already been building models and participating in discussions, why stop? The community is here for you either way.

Get in Touch

We're happy to answer questions and help you get started. Don't be shy—reaching out early is much better than waiting until the last minute.

  • 💬 Mesa Matrix Chat — Best for quick questions, introductions, and community discussion. This is where most day-to-day conversation happens.
  • 🐙 GitHub Discussions — For longer-form technical discussions, feature ideas, or questions that benefit from permanent, searchable answers.

Mesa has participated in Google Summer of Code since 2024. We're proud to be part of a program that connects passionate developers with open source communities worldwide, and we're excited to meet the next generation of contributors.

Clone this wiki locally