Differences between revisions 3 and 4
Revision 3 as of 2016-01-18 11:35:45
Size: 4435
Editor: schilly
Comment:
Revision 4 as of 2016-01-18 11:41:15
Size: 4686
Editor: schilly
Comment:
Deletions are marked like this. Additions are marked like this.
Line 8: Line 8:
Sage works hand-in-hand with other computational mathematics software systems, such as Sympy, GAP, etc, and can serve as an umbrella organization for GSOC projects for those sister projects. Sage works hand-in-hand with other computational mathematics software systems, such as SymPy, GAP, etc, and can serve as an umbrella organization for GSOC projects for those sister projects.
Line 13: Line 13:

/!\ We also '''require''' you to show us that you are able to execute actual development by submitting a patch via Sage's trac (i.e. see [[http://goo.gl/3rvjD|tickets marked for beginners]]) or a similar development tool of the respective project.

GSoC 2016

Introduction

Google Summer of Code is a highly enjoyable and rewarding way to spend a summer.

SageMath (or Sage for short) 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 :-) 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 how users can interact with Sage, most notably 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 organization for GSOC projects for those sister projects.

All projects will start with an introduction phase to learn about Sage’s (or sister projects') internal organization and to get used to their established development process.

For Sage, this is documented in the developers' manual and all students will be instructed by the mentors on how to get their hands dirty. Sage uses Git for revision control and trac for organizing development and code review. Our license is GPLv2+. Feel free to contact Mentors before you send us project proposals.

/!\ We also require you to show us that you are able to execute actual development by submitting a patch via Sage's trac (i.e. see tickets marked for beginners) or a similar development tool of the respective project.

For Sage, feel free to introduce yourself and your project idea in Sage's GSOC mailing list.

For GAP, feel free to introduce yourself to GAP's developer list. Some discussion of possible GAP GSOC projects is happening at the joint GAP Sage days in St Andrews, see the agenda.

To get a better feeling of how Sage works, please check out the developer guide.

There is also a comprehensive list of future feature wishes in our trac issue tracker. They might contain the perfect project idea for you we didn't even think about!

Application Template

Please use this application template, in particular answer the questions thoroughly enough to convince us to pick you!

Personal:

  • Name
  • Contact Information (email, instant messaging, …)
  • Location/Timezone
  • University

Background:

  • What are your technical skills, education, experience, etc. Especially make sure to explain with what level of mathematics you are comfortable with and on what level you would like to program.
  • Who are you? What makes you the best person to work on this particular project? Your personal motivation?
  • What platform and operating-system are you using on your computer? (Sage development is done best on Linux and OSX)
  • Are you or have you been engaged in other open-source projects?
  • Do you code on your own pet projects?
  • Are you a Sage user, how long do you know Sage?

Project:

  • Title, Project Synopsis: a short description and summary of its aim and scope.
  • What is your personal involvement or relationship with your proposed project?
  • Details: describe all the details and explain modules or parts of your whole project. Break down the whole project into individual tasks - as good as possible - and describe deliverable and quantifiable results for each of them. It also helps if you have already discussed this with a possible mentor.
  • Schedule: A timetable, including special circumstances like exams or holidays, for the individual tasks.
  • Risk Management: Try to anticipate potential problems and explain, how to mitigate them. Propose alternative scenarios, if a particular milestone isn't reached, to still successfully complete the project.

Project Ideas

Please feel free to add ideas (or copy-paste them from last year's Sage GSOC wiki page).

GSoC/2016 (last edited 2016-03-22 09:18:34 by schilly)