Join GitHub today
GitHub is home to over 28 million developers working together to host and review code, manage projects, and build software together.Sign up
GSoC 2017 Guidelines
Astropy is a community effort to develop a single core package for Astronomy in Python and foster interoperability between Python astronomy packages. The project was started in 2011, and there are many opportunities to make a big impact on the package by developing new features that will be used in day-to-day work by professional Astronomers. Astropy is participating in the Google Summer of Code 2017 under the OpenAstronomy umbrella organization. Please also read the student guidelines page to get started. Additional useful information can be found in the Python organization GSoC guide.
Note that the deadline for applying is April 3rd 2017, and you should get in touch with the Astropy developers as soon as possible, since preparing your application and patch will likely require communicating with the developers over a couple of weeks!
If you are interested in participating, follow these steps:
Read over the GSoC 2017 site to understand better how the program works and whether you are eligible to participate.
Take a look at the OpenAstronomy ideas list, search on
astropyprojects, and pick a project that matches your skills and interest. You will increase your chances of being selected if you familiarize yourself with the project idea and show a good understanding of it when you contact the Astropy developers. What matters is not how hard the project is, but how well matched you are to the project.
Send mail to our GSoC applications mailing list email@example.com, introduce yourself, and let us know of your interest, so that we can pair you up with two prospective mentors to help you prepare your application.
Fill out this form as it makes it easier for us to keep track of your interest (note that this does not replace getting in touch with the mailing list)
Take a look at the open astropy issues, pick an issue that is not being worked on, leave a comment that you will be attempting to solve it, and then open a pull request. Note that you can look for the subset of issues labeled package-novice and/or effort-low, which are better suited to new contributors. But of course, the harder the issue(s) you tackle, the more impressive your application will be. You are required to open a pull request for your application to be considered (but it does not matter if the pull request is merged or not before the application deadline).
Start working on your application. If you would like us to give feedback on your application, submit a draft of your proposal to the Google Summer of Code site. We suggest you follow the Python organization template. This student guide and Sympy Application Template also provides some additional advice on preparing your application. Let your potential mentors know once you have done this so they can give it a look over.
Submit your application via the Google Summer of Code site!
Take the initiative - we can send you information on the projects and feedback on the applications, but it is your responsibility to ask the questions and start preparing your application. We will let you know if something is missing from your application or if any of the goals are unrealistic, but we will not write the application.
Use Astropy - you will gain a much better understanding of how Astropy works by actually using it. Download it, install it, and follow some of the examples in the documentation, to get a better idea of what it can do.
Familiarize yourself with the development guidelines for Astropy. The developer documentation contains a lot of information on using git (including rebasing), how to write tests, documentation, etc. The more understanding of the workflow you can demonstrate, the better your chances.
Good luck! :)