GSoC 2018 application: Difference between revisions

From Octave
Jump to navigation Jump to search
(copy from last year)
 
No edit summary
Line 3: Line 3:
Octave's application for GSoC 2018.
Octave's application for GSoC 2018.


=== Why does your org want to participate in Google Summer of Code? ===
=== Why does your org want to participate in Google Summer of Code? (1000 chars) ===


We hope to establish collaborations with talented new contributors. We also want to raise awareness of Octave in the free software community.
We hope to establish collaborations with talented new contributors. We also want to raise awareness of Octave in the free software community.


Google Summer of Code represents a unique opportunity to bring new perspectives to the Octave community. As a somewhat older project, we benefit from having new and younger contributors among our developers. We have been able to retain several GSoC participants as contributors to the Octave project and we hope to improve in the future by engaging more effectively with students during both the application and mentoring processes, setting clear standards for what is required for acceptance, and maintaining those standards throughout the project.
Google Summer of Code represents a unique opportunity to bring new perspectives to the Octave community. As a somewhat older project, we benefit from having new and younger contributors among our developers. We have been able to retain several GSoC participants as contributors to the Octave project and we hope to continue and improve this in the future by engaging effectively with students during both the application and mentoring processes, setting clear standards for what is required for acceptance, and maintaining those standards throughout the project.


=== How many potential mentors have agreed to mentor this year? ===
=== How many potential mentors have agreed to mentor this year? ===
Line 13: Line 13:
11-15
11-15


=== How will you keep mentors engaged with their students? ===
=== How will you keep mentors engaged with their students? (1000 chars) ===


We will select mentors with proven involvement in Octave and free software and align project topics with the priorities of the core developer team. The vast majority of our mentors have been involved in Octave development for several years, and new mentors will be paired with more experienced ones.
We will select mentors with proven involvement in Octave and free software and align project topics with the priorities of the core developer team. The vast majority of our mentors have been involved in Octave development for several years, and new mentors will be paired with more experienced ones.


Each project will include 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 should also include a mentor with expertise in the relevant field.
Each project will include 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 should also include a mentor with expertise in the relevant field.


=== How will you help your students stay on schedule to complete their projects? ===
=== How will you help your students stay on schedule to complete their projects? (1000 chars) ===


Previous contributions to Octave are a condition for acceptance. In this way, we hope to select students who are familiar with the codebase and able to start their project quickly.
Previous contributions to Octave are a condition for acceptance. In this way, we hope to select students who are familiar with the codebase and able to start their project quickly.


A tentative project timeline is required as part of the application, and is checked by mentors for realism as part of the applicant evaluation process. Once a student is selected, the mentor will work with them to come up with a more detailed summer timeline, including clear expectations for progress by the midterm and final evaluation periods.
A tentative project timeline is required as part of the application, and is checked by mentors for realism in the applicant evaluation process. Once a student is selected, the mentor will work with them to come up with a more detailed timeline, including clear expectations for progress by the midterm and final evaluation periods.


During the summer, mentors will check with students at least weekly to make sure they are staying on schedule and help with any obstacles that might arise. Students are also expected to regularly update their mentors and the Octave maintainers community on their progress via e-mails and blog posts.
During the summer, mentors will check with students at least weekly to make sure they are staying on schedule and help with any obstacles that might arise. Students are also expected to regularly update their mentors and the Octave maintainers community on their progress via e-mails and blog posts.
Line 29: Line 29:
Overall, the vast majority of previous SoC students have finished successfully, making substantive contributions to Octave that have been integrated into our codebase.
Overall, the vast majority of previous SoC students have finished successfully, making substantive contributions to Octave that have been integrated into our codebase.


=== How will you get your students involved in your community during GSoC? ===
=== How will you get your students involved in your community during GSoC? (1000 chars) ===


Students will be urged to participate on our IRC channel and mailing list. We will set clear expectations on the minimum frequency of email progress updates, typically every two to three days. Students will also set up a blog for longer, weekly, updates which is aggregated at http://planet.octave.org
Students will be urged to participate on our IRC channel and mailing list. We will set clear expectations on the minimum frequency of email progress updates, typically every two to three days. Students will also set up a blog for longer, weekly, updates which is aggregated at http://planet.octave.org
Line 35: Line 35:
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 copy the maintainers mailing list.
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 copy the maintainers mailing list.


Finally, we organize a developers' summit, OctConf, during the summer and have in previous years provided support for GSoC students to attend and present. This strengthens relationships between community members and the new students.  
Finally, we organize an annual developers' summit, OctConf, and have in previous years provided support for GSoC students to attend and present. This strengthens relationships between community members and the new students.  


=== How will you keep students involved with your community after GSoC? ===
=== How will you keep students involved with your community after GSoC? (1000 chars) ===


We will typically merge their code into our codebase during or soon after the summer. GNU Octave is a project with many tester-users who give constant feedback on new features and report bugs. As participants in the mailing lists and bug tracker, students get the feeling of doing something that is useful to the community from the very start.
We will typically merge their code into our codebase during or soon after the summer. GNU Octave is a project with many tester-users who give constant feedback on new features and report bugs. As participants in the mailing lists and bug tracker, students get the feeling of doing something that is useful to the community from the very start.
Line 47: Line 47:
=== Has your org been accepted as a mentoring org in Google Summer of Code before? For each year your organization has participated, provide the counts of successful and total students. ===
=== Has your org been accepted as a mentoring org in Google Summer of Code before? For each year your organization has participated, provide the counts of successful and total students. ===


Yes (2014 and 2016).
Yes.


2017 4/4
2016 5/5
2016 5/5
2014 3/3
2014 3/3
Line 92: Line 93:
=== Proposal Tags (for applicants to use) (up to 10) ===
=== Proposal Tags (for applicants to use) (up to 10) ===


Numerical, Infrastructure, Octave Forge, New feature, Performance, Matlab compatibility
Numerical, Infrastructure, Octave Forge, Image analysis, GUI, Graphics, New feature, Performance, Matlab compatibility


=== Description (180 chars) ===
=== Description (180 chars) ===
Line 114: Line 115:
Familiarize yourself with using and building Octave, and with any other skills needed to carry out your proposed project. Demonstrate this familiarity by contributing [bug fixes](https://savannah.gnu.org/bugs/?group=octave) or [patches](https://savannah.gnu.org/patch/?group=octave) before the end of the application period.
Familiarize yourself with using and building Octave, and with any other skills needed to carry out your proposed project. Demonstrate this familiarity by contributing [bug fixes](https://savannah.gnu.org/bugs/?group=octave) or [patches](https://savannah.gnu.org/patch/?group=octave) before the end of the application period.


[Make an account](http://wiki.octave.org/Special:CreateAccount) on our Wiki and then copy and fill out Octave's [application template](http://wiki.octave.org/Template:Student_application_template_public) on your Wiki user page. Also complete your GSoC application on Melange as per Google guidelines.
[Make an account](https://wiki.octave.org/Special:CreateAccount) on our Wiki and then copy and fill out Octave's [application template](https://wiki.octave.org/Template:Student_application_template_public) on your Wiki user page. Also complete your GSoC application on Melange as per Google guidelines.


For more details, please see the [Octave Wiki](http://wiki.octave.org/Summer_of_Code_Project_Ideas#Steps_Toward_a_Successful_Application).
For more details, please see the [Octave Wiki](https://wiki.octave.org/Summer_of_Code_Project_Ideas#Steps_Toward_a_Successful_Application).


</code>
</code>
Line 139: Line 140:


Application instructions: http://wiki.octave.org/Summer_of_Code_Project_Ideas#Steps_Toward_a_Successful_Application
Application instructions: http://wiki.octave.org/Summer_of_Code_Project_Ideas#Steps_Toward_a_Successful_Application
Source code: http://hg.savannah.gnu.org/hgweb/octave

Revision as of 22:17, 10 January 2018


Octave's application for GSoC 2018.

Why does your org want to participate in Google Summer of Code? (1000 chars)

We hope to establish collaborations with talented new contributors. We also want to raise awareness of Octave in the free software community.

Google Summer of Code represents a unique opportunity to bring new perspectives to the Octave community. As a somewhat older project, we benefit from having new and younger contributors among our developers. We have been able to retain several GSoC participants as contributors to the Octave project and we hope to continue and improve this in the future by engaging effectively with students during both the application and mentoring processes, setting clear standards for what is required for acceptance, and maintaining those standards throughout the project.

How many potential mentors have agreed to mentor this year?

11-15

How will you keep mentors engaged with their students? (1000 chars)

We will select mentors with proven involvement in Octave and free software and align project topics with the priorities of the core developer team. The vast majority of our mentors have been involved in Octave development for several years, and new mentors will be paired with more experienced ones.

Each project will include 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 should also include a mentor with expertise in the relevant field.

How will you help your students stay on schedule to complete their projects? (1000 chars)

Previous contributions to Octave are a condition for acceptance. In this way, we hope to select students who are familiar with the codebase and able to start their project quickly.

A tentative project timeline is required as part of the application, and is checked by mentors for realism in the applicant evaluation process. Once a student is selected, the mentor will work with them to come up with a more detailed timeline, including clear expectations for progress by the midterm and final evaluation periods.

During the summer, mentors will check with students at least weekly to make sure they are staying on schedule and help with any obstacles that might arise. Students are also expected to regularly update their mentors and the Octave maintainers community on their progress via e-mails and blog posts.

Overall, the vast majority of previous SoC students have finished successfully, making substantive contributions to Octave that have been integrated into our codebase.

How will you get your students involved in your community during GSoC? (1000 chars)

Students will be urged to participate on our IRC channel and mailing list. We will set clear expectations on the minimum frequency of email progress updates, typically every two to three days. Students will also set up a blog for longer, weekly, updates which is 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 copy the maintainers mailing list.

Finally, we organize an annual developers' summit, OctConf, and have in previous years provided support for GSoC students to attend and present. This strengthens relationships between community members and the new students.

How will you keep students involved with your community after GSoC? (1000 chars)

We will typically merge their code into our codebase during or soon after the summer. GNU Octave is a project with many tester-users who give constant feedback on new features and report bugs. As participants in the mailing lists and bug tracker, students get the feeling of doing something that is useful to the community from the very start.

Many of our GSoC students use Octave during the academic year or in their professional careers. As such, they are prone to stay involved with its development, even if at a lower level than during the summer.

Several previous students have continued with regular contributions to GNU Octave, and many remain available to help with any problems related to the code they wrote for the project.

Has your org been accepted as a mentoring org in Google Summer of Code before? For each year your organization has participated, provide the counts of successful and total students.

Yes.

2017 4/4 2016 5/5 2014 3/3

We have a nice trajectory mentoring projects since 2011 (both as an independent organization and as part of GNU). This page lists the successful projects that have been executed under our mentoring.

Are you part of a foundation/umbrella organization?

Yes, we are affiliated with GNU.

What year was your project started?

1992

Organization ID

octave

Organization name

GNU Octave

Organization Category

Programming Languages and Development Tools

Tagline (80 characters)

Free Your Numbers

Primary License

GPL 3.0

Technology Tags (the primary specific technologies your organization uses) (up to 5)

C++, hg

Topic Tags (general topics that describe your organization) (up to 5)

mathematics, numerical computation, numerical methods, matlab, scientific computing

Proposal Tags (for applicants to use) (up to 10)

Numerical, Infrastructure, Octave Forge, Image analysis, GUI, Graphics, New feature, Performance, Matlab compatibility

Description (180 chars)

GNU Octave is a high-level interpreted language, primarily intended for numerical computations.

Description (2000 chars)

GNU Octave is a high-level interpreted language, primarily intended for numerical computations. It provides capabilities for the numerical solution of linear and nonlinear problems and for performing other numerical experiments. It also provides extensive graphics capabilities for data visualization and manipulation. Octave is normally used through its interactive command line interface, but it can also be used to write non-interactive programs. The Octave language is quite similar to Matlab so that most programs are easily portable.

Octave is continually being upgraded. The current version 4.2 includes a graphical user interface, support for classdef object-oriented programming, and many new and improved functions. Student projects may also involve developing or upgrading Octave Forge packages, which can be loaded to provide additional specialized functions that supplement those provided in Core Octave.

Application instructions (1500 chars)

(Markdown for links)

Post on our [mailing list](https://lists.gnu.org/mailman/listinfo/octave-maintainers) or chat on [IRC](https://webchat.freenode.net/?channels=#octave) to get feedback on your ideas, and help with any questions.

Familiarize yourself with using and building Octave, and with any other skills needed to carry out your proposed project. Demonstrate this familiarity by contributing [bug fixes](https://savannah.gnu.org/bugs/?group=octave) or [patches](https://savannah.gnu.org/patch/?group=octave) before the end of the application period.

[Make an account](https://wiki.octave.org/Special:CreateAccount) on our Wiki and then copy and fill out Octave's [application template](https://wiki.octave.org/Template:Student_application_template_public) on your Wiki user page. Also complete your GSoC application on Melange as per Google guidelines.

For more details, please see the [Octave Wiki](https://wiki.octave.org/Summer_of_Code_Project_Ideas#Steps_Toward_a_Successful_Application).

Organization urls

http://www.octave.org

Logo: http://hg.savannah.gnu.org/hgweb/octave/raw-file/155d8e90ee1f/doc/icons/octave-logo.svg (generate 256x256 PNG with inkscape -z -e octave-logo.png -w 256 -h 256 octave-logo.svg)

Blog: http://planet.octave.org/

Feed: http://planet.octave.org/atom.xml

IRC Channel: https://webchat.freenode.net/?channels=#octave

Mailing List: https://lists.gnu.org/mailman/listinfo/octave-maintainers

General Email: octave-maintainers@gnu.org

Ideas: http://wiki.octave.org/Summer_of_Code_Project_Ideas

Application instructions: http://wiki.octave.org/Summer_of_Code_Project_Ideas#Steps_Toward_a_Successful_Application

Source code: http://hg.savannah.gnu.org/hgweb/octave