I want to join as a contributor, e.g., making pull or merge requests on GitHub, in an existent open source astronomy project. How do I start? What's the typical scenario? Writing directly to the repository owners? Knocking some doors?

[This question might be naive or opinion-based, I'm not 100% sure if it's a good question for this SE; I have no problems on closing it]

Context: I did the astro BSc. but I'm currently working as a back-end dev. As graduate studies are not in my plans for this year, I really need to get my hands in science-related code and I think this would be a great idea.

  • 4
    $\begingroup$ There is nothing different abot asrtonomy here, I suggest you ask you question to the people at Open Source $\endgroup$
    – James K
    Feb 23 at 6:07
  • 4
    $\begingroup$ I’m voting to close this question because it is not about astronomy. While this is a good question, this part of the StackExchange network simply is not the right place to ask this question. $\endgroup$ Feb 23 at 10:22

1 Answer 1


This is more a general software or open source question. It has an excellent answer here.

In summary the usual rules apply:

  • join a project you are interested in and best need yourself for other purposes
  • join a project written in a language you like
  • get acquainted with the project:
  • join the project-specific communication channels and listen
  • look at the issue tracker and try to tackle a small problem first
  • ask questions, but don't be demanding or impatient. Often people do OSS work on smaller projects in their own free time.
  • get acquainted with the expected coding style and adhere to it
  • ask for feedback on your submissions, and expect initial rejection. Mind they are not personal but meant to keep the project well-organized. Just rinse & repeat. Developers respect is earned by continued and good submissions much more than by grand ideas of what could be done or even should be done (then just do that instead of telling others to do).
  • Kindness goes a LOOOONG way. Every project is different.

Not the answer you're looking for? Browse other questions tagged .