GSoC 2013 application: Difference between revisions

From Octave
Jump to navigation Jump to search
(Add categories.)
 
(19 intermediate revisions by 4 users not shown)
Line 1: Line 1:
__NOTOC__
__NOTOC__


Octave's application for GSoC 2012.
Octave's application for GSoC 2013.


=== Describe your organization ===
=== Organization description ===


GNU Octave (http://www.gnu.org/software/octave/) is a free numerical computing environment largely compatible with Matlab. It is an old project, started in 1992 by [[John W. Eaton]] and used by hundreds of thousands of people worldwide as a free alternative to Matlab.
GNU Octave (http://www.gnu.org/software/octave/) is a free numerical computing
GNU Octave has an extensive core of functions useful for numerical computations in several fields, such as numerical analysis, optimisation, signal and image processing, and control theory. In order to speed up development, increase user contributions and test code before it is included in GNU Octave's core set of functions, a sister project, Octave Forge (http://octave.sourceforge.net/), hosts many field-specific packages.
environment largely compatible with Matlab. It is an old project, started in
1992 by [[John W. Eaton]] and used by hundreds of thousands of people worldwide
as a free alternative to Matlab.


=== Why is your organization applying to participate in Google Summer of Code 2013? What do you hope to gain by participating? ===
GNU Octave has an extensive core of functions useful for numerical 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, increase user
contributions and test code before it is included in GNU Octave's core set of
functions.
 
=== Organization home page url ===
 
http://www.octave.org
 
=== Main organization license ===
 
GPLv3
 
=== Veteran/new ===
 
New
 
=== Backup admin ===
 
jwe
 
 
=== 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. ===


Octave has participated during the last two years with five students under the auspices of the GNU project. Due to the success of those experiences, where many members of the Octave community helped mentor the student, we want to try again.
[blank]


We hope to get good code from interested students and ideally establish a line of collaboration with them for the future. We also want to raise awareness of Octave amongst the free software community.
=== If you chose "new" in the dropdown above, have you applied in the past? If so, for what year(s)? ===


Google Summer of Code represents a unique opportunity to pump up work into highly needed low level improvements to Octave, as well as high level field-specific functionality. We believe the interaction with fresh minds will bring not only new code to Octave but also will augment the developers group.
Yes, in 2012. We participated during 2011 and 2012 under GNU. Additionally,
in 2012, we also mentored two students under European Space Agency (ESA) Summer
of Code in Space (http://sophia.estec.esa.int/socis2012/).


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


Yes, during 2011 and 2012, under the GNU umbrella. Four students have successfully completed projects for us in the past, all of which is live and in our main source tree. In addition, we have mentored two students in 2012 through the European's Space Agency's independent Summer of Code In Space.
Octave has participated during the last two years with four students 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.


The challenges have been about managing very diverse problem domains and finding people who are competent in all of them. We have not had great trouble keeping students interested, although we've seen lulls in their productive output a few times, which were always thankfully remedied with a little prodding.
We hope to get good code from interested students and ideally establish a line
of collaboration with them for the future. We also want to raise awareness of
Octave in the free software community.


=== If your organization has not previously participated in Google Summer of Code, have you applied in the past? If so, for what year(s)? ===
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.


This is the second time we apply as an independent organisation. We applied last year, but were rejected as an independent, and instead worked under GNU. We believe our community is strong and diverse enough to warrant its independence.
=== Did your organization participate in past Google Summer of Codes? If so, please summarize your involvement and the successes and challenges of your participation. ===


=== What Open Source Initiative approved license(s) does your project use? ===
Yes, during 2011 and 2012, under the GNU umbrella. Four students have
successfully completed projects for us in the past, all of which is live and in
our main source tree. In addition, we mentored two students in 2012 through the Summer of Code In Space
project run by the European Space Agency.


We prefer the GPLv3+ and may use the AGPLv3+ for one side project. We can accept any GPL-compatible free license.
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? ===
=== What is the URL for your Ideas page? ===


http://octave.org/wiki/index.php?title=GSoC_Project_Ideas
http://wiki.octave.org/Summer_of_Code_Project_Ideas


=== What is the main development mailing list for your organization? ===
=== What is the main development mailing list for your organization? ===
Line 42: Line 80:
<tt>#octave</tt> in Freenode
<tt>#octave</tt> in Freenode


=== Does your organization have an application template you would like to see students use? If so, please provide it now. ===
=== 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.


We <s>freely stole</s> worked derivatively from [http://wiki.unknown-horizons.org/w/Student_application_template the Unknown Horizons template] and adapted it to [[Student Application Template|this]].
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? ===


=== Who will be your backup organization administrator? ===
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,
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 all students in previous years.


John W. Eaton <jwe@octave.org>
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 criteria did you use to select your mentors for this year's program? Please be as specific as possible. ===
=== What is your plan for dealing with disappearing mentors? ===


Mentors have been chosen based on their expertise in the field of the corresponding project, either based in their past contributions to Octave or in their academic background or their current professional activities, as well as on their involvement in the mailing list and the quality of their past advice. Preferrably they already have code in the Octave source tree and ideally already have commit access to our source tree. Also whether they can participate in chat sessions, but this is less important.
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.


=== What is your plan for dealing with disappearing students? ===
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
pairing new mentors with more experienced ones.


First, make all reasonable efforts to accomodate the student and make them feel welcome. Frequent contact with the student, prompt response to student queries, periodic status reports from mentors about the contact of the student. Also encourage the student to participate in the public mailing list and IRC channel, with or without mentor. Their progress should be regularly applied to our source tree, if necessary, in a feature branch.
=== What steps will you take to encourage students to interact with your project's community before and during the program? ===


Should this fail and the student disappears for unforeseen reasons (which we hope will be very unlikely, and nobody vanishes without good reason), make reasonable attempts to contact them first, of course, up to and including using a phone number if one was provided. If enough time has passed without response (say, two weeks without a response, after attempting all methods), begin to analyse the code they have submitted, and attempt to integrate it into our source tree.
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.


=== What is your plan for dealing with disappearing mentors? ===
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'ing the maintainers mailing list.


Distribute the workload amongst the remaining mentors. The mailing list is active enough and questions almost never go unanswered. Reassign the student to a backup mentor. Worse comes to worst, the project admin can become a mentor for the student until another backup mentor is found.
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.


This should be infrequent and we hope to prevent this to begin with by selecting mentors with proven involvement in Octave or other free projects.
=== What will you do to encourage that your accepted students stick with the project after Google Summer of Code concludes? ===


=== What steps will you take to encourage students to interact with your project's community before, during and after the program? ===
We will constantly merge their code into our codebase, and GNU Octave is a
Invite them to IRC. Set clear expectations on the minimum frequency of email progress updates (probably every two or three days). Be nice and friendly to them.
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.


Octave community boasts developers from academia and industry, and we believe that emergence of joint projects is not unlikely. Connections made while contributing to the Octave community represent potential career opportunities for students, and successful student interns will be encouraged to continue their collaboration. This will be achieved by actively inviting students to continue and extend participation in Octave and Octave Forge projects, depending on their interests and code submitted.
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. ===
=== 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.
Yes, GNU can vouch for us.
Dick Lyon <dicklyon@google.com> will also 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. ===
=== 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.
No.
[[Category:Summer of Code]]
[[Category:2013]]

Latest revision as of 06:39, 21 January 2021


Octave's application for GSoC 2013.

Organization description

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

GNU Octave has an extensive core of functions useful for numerical 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, increase user contributions and test code before it is included in GNU Octave's core set of functions.

Organization home page url

http://www.octave.org

Main organization license

GPLv3

Veteran/new

New

Backup admin

jwe


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, in 2012. We participated during 2011 and 2012 under GNU. Additionally, in 2012, we also mentored two students under European Space Agency (ESA) Summer of Code in Space (http://sophia.estec.esa.int/socis2012/).

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

Octave has participated during the last two years with four students 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.

We hope to get good code from interested students and ideally establish a line of collaboration with them for the future. 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, during 2011 and 2012, under the GNU umbrella. Four students have successfully completed projects for us in the past, all of which is live and in our main source tree. In addition, we mentored two students in 2012 through the Summer of Code In Space project run by the European Space Agency.

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 frequenty 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 all 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 are also pairing 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'ing the maintainers mailing list.

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.

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.