GSoC 2014 application: Difference between revisions

From Octave
Jump to navigation Jump to search
(misc small edits)
Line 10: Line 10:
as a free alternative to Matlab.
as a free alternative to Matlab.


GNU Octave has an extensive core of functions useful for numerical computations
GNU Octave has an extensive core of functions useful for computations
in several fields, such as numerical analysis, optimisation, signal and image
in several fields, such as numerical analysis, optimisation, signal and image
processing, and control theory. Its sister project, Octave Forge
processing, and control theory. Its sister project, Octave Forge
(http://octave.sourceforge.net/), helps in speeding up development, increase user
(http://octave.sourceforge.net/), helps in speeding up development, increasing user
contributions and test code before it is included in GNU Octave's core set of
contributions, and testing code before it is included in GNU Octave's core set of
functions.
functions.


Line 41: Line 41:
=== If you chose "new" in the dropdown above, have you applied in the past? If so, for what year(s)? ===
=== If you chose "new" in the dropdown above, have you applied in the past? If so, for what year(s)? ===


Yes (2012 and 2013).
Yes (2011-2013).


=== Why is your organization applying to participate in Google Summer of Code? What do you hope to gain by participating? ===
=== Why is your organization applying to participate in Google Summer of Code? What do you hope to gain by participating? ===
Line 55: Line 55:
=== Did your organization participate in past Google Summer of Codes? If so, please summarize your involvement and the successes and challenges of your participation. ===
=== Did your organization participate in past Google Summer of Codes? If so, please summarize your involvement and the successes and challenges of your participation. ===


Yes, we participated in GSoC each year since 2011 under GNU. Additionally, we have been a mentoring organization for the European Space Agency (ESA) Summer of Code in Space (http://sophia.estec.esa.int/socis2013/).
Yes, we participated in GSoC each year since 2011 under GNU. Additionally, we have been a mentoring organization for the European Space Agency (ESA) Summer of Code in Space (http://sophia.estec.esa.int/socis2013/). Students working with us have made valuable contributions in improving Octave's usability in functionality, undertaking such tasks as adding just-in-time compilation support, geometric integration algorithms, and finite element modeling capabilities.


The challenges are managing very diverse problem domains and finding
The challenges are managing very diverse problem domains and finding
Line 89: Line 89:


First, make all reasonable efforts to accommodate the student and make them feel
First, make all reasonable efforts to accommodate the student and make them feel
welcome. We will engage the students frequenty by email and IRC, provide prompt response to student queries,
welcome. We will engage the students frequently by email and IRC, provide prompt response to student queries,
and expect periodic status reports from mentors about the project status. We will also
and expect periodic status reports from mentors about the project status. We will also
encourage the student to participate in the public mailing list and IRC channel,
encourage the student to participate in the public mailing list and IRC channel,
with or without the mentor. Their progress should be regularly applied to our source
with or without the mentor. Their progress should be regularly applied to our source
tree, if necessary, in a feature branch. All of these have shown to be effective
tree, if necessary in a feature branch. All of these have shown to be effective
with all students in previous years.
with students in previous years.


Should this fail and the student disappears for unforeseen reasons (which we
Should this fail and the student disappears for unforeseen reasons (which we
Line 112: Line 112:


This situation should be infrequent and we hope to prevent it by selecting
This situation should be infrequent and we hope to prevent it by selecting
mentors with proven involvement in Octave or other free software projects. We are also
mentors with proven involvement in Octave or other free software projects. We will also
pairing new mentors with more experienced ones.
pair new mentors with more experienced ones.


=== What steps will you take to encourage students to interact with your project's community before and during the program? ===
=== What steps will you take to encourage students to interact with your project's community before and during the program? ===
Line 119: Line 119:
We will encourage them to join us on our IRC channel and mailing list.  We will set clear expectations on the minimum frequency of email
We will encourage them to join us on our IRC channel and mailing list.  We will set clear expectations on the minimum frequency of email
progress updates of every two to three days. Longer updates should be done on a
progress updates of every two to three days. Longer updates should be done on a
blog and aggregated at http://planet.octave.org.
blog and aggregated at http://planet.octave.org


Everything should be completely open. Almost all interactions with the student should
Everything should be completely open. Almost all interactions with the student should
be public, e.g. contacting the mentor should happen in the public IRC
be public, e.g. contacting the mentor should happen in the public IRC
channel or CC the maintainers mailing list.
channel or CC the maintainers mailing list.
Our annual conference, OctConf, will be held in the summer. Students will be invited to attend and present on their work. Last year's OctConf had several such student presenters.


For some projects, there may be way to bridge them directly into industry
For some projects, there may be way to bridge them directly into industry
projects. We hope that we can increase the student's participation this way.
projects. We hope that we can increase student participation this way.


=== What will you do to encourage that your accepted students stick with the project after Google Summer of Code concludes? ===
=== What will you do to encourage that your accepted students stick with the project after Google Summer of Code concludes? ===

Revision as of 13:38, 7 February 2014


Octave's application for GSoC 2014.

Organization description

GNU Octave (http://www.gnu.org/software/octave/) is a free numerical computing environment largely compatible with Matlab. It was started in 1992 by John W. Eaton and is used by hundreds of thousands of people worldwide as a free alternative to Matlab.

GNU Octave has an extensive core of functions useful for computations in several fields, such as numerical analysis, optimisation, signal and image processing, and control theory. Its sister project, Octave Forge (http://octave.sourceforge.net/), helps in speeding up development, increasing user contributions, and testing code before it is included in GNU Octave's core set of functions.

Recent and ongoing improvements include a GUI and just-in-time compilation capabilities.

Organization home page url

http://www.octave.org

Main organization license

GPLv3

Veteran/new

New

Backup admin

JordiGH

If you chose "veteran" in the dropdown above, please summarize your involvement and the successes and challenges of your participation. Please also list your pass/fail rate for each year.

[blank]

If you chose "new" in the dropdown above, have you applied in the past? If so, for what year(s)?

Yes (2011-2013).

Why is your organization applying to participate in Google Summer of Code? What do you hope to gain by participating?

Octave has participated during the last three years under the auspices of the GNU project. Due to the success of those experiences, where many members of the Octave community helped mentor the students, we are trying again to enter GSoC as a participating organization.

We hope to get good code from interested students and ideally establish new continuing collaborations. We also want to raise awareness of Octave in the free software community.

Google Summer of Code represents a unique opportunity to improve both core Octave and domain-specific functionality. We believe the interaction with fresh minds will bring not only new code to Octave but also will augment the developers group.

Did your organization participate in past Google Summer of Codes? If so, please summarize your involvement and the successes and challenges of your participation.

Yes, we participated in GSoC each year since 2011 under GNU. Additionally, we have been a mentoring organization for the European Space Agency (ESA) Summer of Code in Space (http://sophia.estec.esa.int/socis2013/). Students working with us have made valuable contributions in improving Octave's usability in functionality, undertaking such tasks as adding just-in-time compilation support, geometric integration algorithms, and finite element modeling capabilities.

The challenges are managing very diverse problem domains and finding people who are competent in all of them. We have not had trouble keeping students interested, although we have seen lulls in their productive output a few times, which were always thankfully remedied with a little prodding.

What is the URL for your Ideas page?

http://wiki.octave.org/Summer_of_Code_Project_Ideas

What is the main development mailing list for your organization?

maintainers@octave.org

What is the main IRC channel for your organization?

#octave in Freenode

What criteria did you use to select your mentors for this year's program? Please be as specific as possible.

Each project includes at least one core Octave developer as mentor. These are proven, veteran members of the project, active in its development, and familiar with the code base.

GNU Octave is a project with applications in very diverse domains so each project also includes mentors with expertise in the related field. All of these have previously contributed with code, have commit access to either Octave or Octave Forge source tree, and are active in the mailing lists. Most also keep a constant presence in the IRC channel.

What is your plan for dealing with disappearing students?

First, make all reasonable efforts to accommodate the student and make them feel welcome. We will engage the students frequently by email and IRC, provide prompt response to student queries, and expect periodic status reports from mentors about the project status. We will also encourage the student to participate in the public mailing list and IRC channel, with or without the mentor. Their progress should be regularly applied to our source tree, if necessary in a feature branch. All of these have shown to be effective with students in previous years.

Should this fail and the student disappears for unforeseen reasons (which we hope will be very unlikely, since it has never happened before and nobody vanishes without good reason), make reasonable attempts to contact them via alternative channels up to a private phone number. If more than 2 weeks have passed without a response, we will analyse the code submitted thus far, and prepare it for integration into our source tree.

What is your plan for dealing with disappearing mentors?

Distribute the workload among the remaining mentors. The mailing list is active enough and questions almost never go unanswered. Reassign the student to a backup mentor. In the worst case, the project admin can become a mentor for the student until another backup mentor is found.

This situation should be infrequent and we hope to prevent it by selecting mentors with proven involvement in Octave or other free software projects. We will also pair new mentors with more experienced ones.

What steps will you take to encourage students to interact with your project's community before and during the program?

We will encourage them to join us on our IRC channel and mailing list. We will set clear expectations on the minimum frequency of email progress updates of every two to three days. Longer updates should be done on a blog and aggregated at http://planet.octave.org

Everything should be completely open. Almost all interactions with the student should be public, e.g. contacting the mentor should happen in the public IRC channel or CC the maintainers mailing list.

Our annual conference, OctConf, will be held in the summer. Students will be invited to attend and present on their work. Last year's OctConf had several such student presenters.

For some projects, there may be way to bridge them directly into industry projects. We hope that we can increase student participation this way.

What will you do to encourage that your accepted students stick with the project after Google Summer of Code concludes?

We will constantly merge their code into our codebase, and GNU Octave is a project with many test users that give constant feedback on new features and bug reports. We will forward these to the students so they get the feeling of doing something that is being used by others, and that is useful to the community from the very start.

In addition, students are likely required to use Octave during their academic year and even during their professional careers. As such, they are prone to stay involved with its development, even if at a lower lever than during the summer.

Are you a new organization who has a Googler or other organization to vouch for you? If so, please list their name(s) here.

Yes, GNU can vouch for us.

Are you an established or larger organization who would like to vouch for a new organization applying this year? If so, please list their name(s) here.

No.