Skip to content

Conversation

@colinfrisch
Copy link
Collaborator

GSoC guide for new contributors looking to join Mesa for GSoC.

@colinfrisch colinfrisch added the docs Release notes label label Nov 2, 2025
Copy link
Member

@EwoutH EwoutH left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think this is a great start already! I have a few (mostly minor) suggestions.

I'm really curious how the other (ex) GSoC contributors view this guide! Does it tell you what you wish you wanted you'd knew before writing your proposal?

colinfrisch and others added 6 commits November 2, 2025 13:25
Co-authored-by: Ewout ter Hoeven <[email protected]>
Co-authored-by: Ewout ter Hoeven <[email protected]>
Co-authored-by: Ewout ter Hoeven <[email protected]>
Co-authored-by: Ewout ter Hoeven <[email protected]>
Co-authored-by: Ewout ter Hoeven <[email protected]>
Co-authored-by: Ewout ter Hoeven <[email protected]>
@colinfrisch
Copy link
Collaborator Author

Thanks for your reviews, I agree with all of them so I added them. I integrated a few feedbacks already from @Sahil-Chhoker, but I'd be curious to see what the others think of it indeed :)

@EwoutH
Copy link
Member

EwoutH commented Nov 2, 2025

Maybe you can also link to the guide on the main Readthedocs page

- [Github]

Copy link
Collaborator

@Sahil-Chhoker Sahil-Chhoker left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think this looks solid.

@pragam-m25
Copy link
Contributor

Hi @EwoutH (and @colinfrisch),

Ewout asked me to share my thoughts on this guide from a new contributor's perspective.

First, I think it's a great guide! If I had this 3 days ago, I would have understood the GSoC expectations much better.

As a new contributor, I did find a few small things that were a bit confusing for me as a complete beginner:

  1. ABM Acronym: The guide introduces "agent-based modeling" on line 4, but as a developer who is not a modeller, I wasn't 100% sure what that was. Then on line 27, it uses the acronym "ABM" without defining it (e.g., "Agent-Based Modeling (ABM)"). For a total beginner, it might be helpful to define the acronym clearly at the start.

  2. Confusing Jargon: On line 52, it mentions "pressing matters" and "fluff". As a new person, I don't know what the project's 'pressing matters' are, and 'fluff' is also a bit confusing. These words might be hard for beginners to understand.

  3. Complex Sentence: The long sentence on line 28 ("Putting in a lot of reflection on use cases...") was also a bit complex. I wasn't sure if it was advice for GSoC proposals or for my feedback on the guide itself.

These are just my honest thoughts as someone new to the project. I hope this is helpful!

@Sahil-Chhoker
Copy link
Collaborator

2. Confusing Jargon: On line 52, it mentions "pressing matters" and "fluff". As a new person, I don't know what the project's 'pressing matters' are, and 'fluff' is also a bit confusing. These words might be hard for beginners to understand.

I wrote this line to explain what I’m trying to say, this applies only after you’ve seen the project you’ll be working on. Every project shouldn’t just be a simple feature or bug fix; it should be a solution to a problem with its own trade-offs. 'Pressing matters' defines just that, working on what matters more. 'Fluff' is the unimportant stuff people tend to add to their proposals just to make them longer.

In my opinion, this is best understood once contributors have seen their respective projects. Let me know what you think.

@EwoutH
Copy link
Member

EwoutH commented Nov 3, 2025

Would something like “to separate the main issues from the non-essentials” make it more clear?

Every project shouldn’t just be a simple feature or bug fix; it should be a solution to a problem with its own trade-offs. 'Pressing matters' defines just that, working on what matters more. 'Fluff' is the unimportant stuff people tend to add to their proposals just to make them longer.

I think this captures it well. Maybe just add (a version of) this?

@colinfrisch
Copy link
Collaborator Author

Thanks for the feedback ! I integrated everything. Anything else you want me to add/modify ?

@EwoutH
Copy link
Member

EwoutH commented Nov 3, 2025

I think is an awesome start! If we think of more we can always improve it further.

Now we have make this document findable, otherwise nobody reads it. I would suggest linking to it in 3 places:

  1. The main docs page:

Maybe you can also link to the guide on the main Readthedocs page

- [Github]

  1. Here in the readme: https://github.com/projectmesa/mesa?tab=readme-ov-file#resources
  2. In italic on top of the contributing guide: https://github.com/projectmesa/mesa/blob/main/CONTRIBUTING.md

I would suggest in all three to use the full name and the abbreviation, something like “For participating in the Google Summer of Code (GSoC), checkout Mesa’s GSoC guide.”

I’m thinking, do we need to do anything to let Readthedocs build this document (@tpike3 / @quaquel)?

@colinfrisch colinfrisch requested a review from EwoutH November 3, 2025 20:54
colinfrisch and others added 2 commits November 3, 2025 22:48
Co-authored-by: Ewout ter Hoeven <[email protected]>
Copy link
Member

@EwoutH EwoutH left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Awesome, I’m good. Readthedocs renders nicely. Thanks!

Let give the rest of the team a bit of time to look at it.

@EwoutH EwoutH changed the title gsoc-guide Add guide for GSoC contributors Nov 4, 2025
@EwoutH EwoutH merged commit 9c100eb into projectmesa:main Nov 4, 2025
3 checks passed
@EwoutH
Copy link
Member

EwoutH commented Nov 4, 2025

Let’s keep this a living document and keep updating where relevant.

Thanks Colin for setting this up!

EwoutH pushed a commit that referenced this pull request Nov 7, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

docs Release notes label

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants