Differences between revisions 12 and 13
Revision 12 as of 2017-01-24 13:39:12
Size: 6004
Editor: arpitdm
Comment:
Revision 13 as of 2017-02-08 08:24:20
Size: 7158
Editor: arpitdm
Comment:
Deletions are marked like this. Additions are marked like this.
Line 50: Line 50:

Its always a good idea to get started early, even before the complete project ideas list is out. By becoming actively involved, you can significantly improve your GSoC proposal and also help us in deciding how you stand out from the rest of the applicants. But first, you should complete the checklist below to ensure that you are ready to contribute.

1. '''Know where Sage development happens''': There are different forums for contacting the community as listed above. Also, we have,
a. [[http://git.sagemath.org/sage.git/tree/ | git.sagemath.org]] - Sage uses Git for version control and this online repository is a good way to study the code online. It is also available on [[https://github.com/sagemath/sage | Github]]. The developer version can be downloaded from [[ http://www.sagemath.org/download-source.html | here]].
b. [[http://doc.sagemath.org/html/en/developer/index.html | Developer Documentation]] - This is the single best resource for everything related to Sage and as such should be considered as required reading.

There are different ways to contribute and acquaint yourself with the various aspects of Sage development.

Google Summer of Code (GSoC) Student Application Guide

Hello and welcome to SageMath's (or Sage for short) GSoC guide for students!

We are glad that you are interested in participating in GSoC with Sage and we look forward to working with you. On this page, you will find numerous application details and links to resources that can help you quickly set up Sage and get started.

You can also explore the GSoC 2017 Ideas Page for information on potential projects.

What is GSoC?

Google Summer of Code is a program for university students aimed at introducing them to world of open source. Students typically begin by browsing the Ideas Pages of various participating open source organisations (orgs) such as Sage and communicate with mentors to write and submit well-defined project proposals. These proposals are reviewed by the respective orgs as well as Google and the selected students then spend 12 weeks in the summer writing code and receive a stipend from Google for their work.

Please ensure that you satisfy the Eligibility Criteria before applying and note the GSoC Timeline.

What is Sage?

Sage is a GPL open-source mathematical software system. It is designed to be not just a computer algebra system, but more like a complete environment for doing mathematics and related calculations. It is based on a vast collection of existing open-source software tools and libraries and ties them together via Python. Python is also the primary interface language for the user and its object-oriented way of expressing concepts is used to express calculations - of course, there are also many “normal” functions available. Behind the scenes, the Sage library executes the commands and calculations by its own algorithms or by accessing appropriate routines from the included software packages. On top of that, there are various ways for users to interact with Sage, most notably via a dynamic web-site called “Notebook”. Sage works hand-in-hand with other computational mathematics software systems, such as SymPy, GAP, etc, and can serve as an umbrella organisation for GSOC for those sister projects.

Please see the FAQ for more details.

Contacting Us

Sage maintains three primary mailing lists namely:

  • sage-gsoc - discussions specific to the GSoC program

  • sage-devel - primary discussion group for development pertaining to all of Sage

  • sage-support - help in running/using Sage

Apart from these, there are numerous other lists dedicated to specific modules of Sage such as sage-coding-theory. For further support in using Sage, there is also a vibrant Question-Answer forum at ask.sagemath.org.

All prospective students must join the sage-gsoc mailing list.

Interacting with the Sage Community

Sage, as an open source project, depends on a diverse community of volunteers to contribute and help move it forward. The mentors are here to help you and the rest of the community is eager to provide support as well. Please respect the time and efforts of the community and be courteous at all times. Following are some tips to keep in mind.

  • Set up Sage on your system - If you are planning on applying to Sage for GSoC or if you wish to contribute, first make sure that you've installed Sage on your personal system and that you've completed the rest of the pre-requisites before posting to the mailing list. The Getting Started section below provides a checklist and links to detailed documentation.

  • Don't Send Generic Introductory Emails - Posts such as "I am interested in open source. How can I get started with Sage?", "How can I proceed?", "How do I use this module?" are very time-consuming to answer and can get ignored. At best, these will get a response containing a link to the documentation and request for further information. Save yourself the time and do your homework. Briefly describe your background and ask easily answerable questions by indicating the field and project you are interested in.

  • Be Specific and Precise - Spend a little time in crafting good emails with helpful titles. Provide context to the problem you are facing and include relevant details such as describing what you have done so far, the error message, development environment, etc. Make it easy for the reader to understand what you are asking for.

  • Do Your Homework - Please check the information pages and past discussions on forums to ensure that you are not reposting or crossposting the same question. Attempt to first resolve the problem yourself before asking and demonstrate willingness and capability to help yourself. This will go a long way in creating a positive impression. (How To Ask Questions The Smart Way? is a wonderful read on how to ask questions in a way more likely to get you a satisfactory answer.)

  • Don't Ask to Ask - Don't hesitate to ask questions but when you do, don't ask questions of the type "Can anyone help me?". Simply go ahead and state the issue you are facing.

You may also want to peruse the The DOs and DON’Ts of Google Summer of Code published on GSoC's official blog.

Getting Started

Its always a good idea to get started early, even before the complete project ideas list is out. By becoming actively involved, you can significantly improve your GSoC proposal and also help us in deciding how you stand out from the rest of the applicants. But first, you should complete the checklist below to ensure that you are ready to contribute.

1. Know where Sage development happens: There are different forums for contacting the community as listed above. Also, we have, a. git.sagemath.org - Sage uses Git for version control and this online repository is a good way to study the code online. It is also available on Github. The developer version can be downloaded from here. b. Developer Documentation - This is the single best resource for everything related to Sage and as such should be considered as required reading.

There are different ways to contribute and acquaint yourself with the various aspects of Sage development.

GSoC/Contributors (last edited 2024-02-22 06:51:39 by tscrim)