281
edits
(→Numerical: Added interval package) |
(remove notices from last year and re-format some of the student expectations) |
||
Line 1: | Line 1: | ||
The following is distilled from the [[Projects]] page for the benefit of potential [https://www.google-melange.com/gsoc/homepage/google/gsoc2015 Google] and [http://sophia.estec.esa.int/socis2015 ESA] Summer of Code (SoC) students. Although students are welcome to attempt any of the projects in that page or any of their own choosing, here we offer some suggestions on what good student projects might be. | The following is distilled from the [[Projects]] page for the benefit of potential [https://www.google-melange.com/gsoc/homepage/google/gsoc2015 Google] and [http://sophia.estec.esa.int/socis2015 ESA] Summer of Code (SoC) students. Although students are welcome to attempt any of the projects in that page or any of their own choosing, here we offer some suggestions on what good student projects might be. | ||
= Steps Toward a Successful Application = | = Steps Toward a Successful Application = | ||
If you like any of the projects described below these are the steps you need to follow to apply: | If you like any of the projects described below, these are the steps you need to follow to apply: | ||
* '''Help Us Get To Know You'''<br> | * '''Help Us Get To Know You'''<br> | ||
: If you aren't communicating with us before the application is due, your application will not be accepted. | : If you aren't communicating with us before the application is due, your application will not be accepted. | ||
:: '''Join the [https://lists.gnu.org/mailman/listinfo/octave-maintainers maintainers mailing list]''' or read the archives and see what topics we discuss and how the developers interact with each other. | :: '''Join the [https://lists.gnu.org/mailman/listinfo/octave-maintainers maintainers mailing list]''' or read the archives and see what topics we discuss and how the developers interact with each other. | ||
:: '''Hang out in our [https://webchat.freenode.net/?channels=#octave IRC channel]'''. Ask questions | :: '''Hang out in our [https://webchat.freenode.net/?channels=#octave IRC channel]'''. Ask questions, show us that you are motivated and well-prepared. There will be more applicants than we can effectively mentor, so do ask for feedback on your public application to increase the strength of your proposal! | ||
* '''Find Something That Interests You''' | * '''Find Something That Interests You''' | ||
: It's '''critical''' that you '''find a project that excites you'''. You'll be spending most of the summer working on it (we expect you to treat the SoC as a full-time job). | : It's '''critical''' that you '''find a project that excites you'''. You'll be spending most of the summer working on it (we expect you to treat the SoC as a full-time job). | ||
: Don't just tell us how interested you are, show us that you're willing and able to '''contribute''' to Octave. You can do that by [https://savannah.gnu.org/bugs/?group=octave fixing a few bugs] or [http://savannah.gnu.org/patch/?group=octave submitting patches] well before the deadline, in addition to regularly interacting with Octave maintainers and users on e-mail and IRC. Our experience shows us that successful SoC students demonstrate their interest early and often. | |||
* '''Prepare Your Proposal With Us''' | * '''Prepare Your Proposal With Us''' | ||
: By working with us to prepare your proposal, you'll be getting to know us and showing us how you approach problems. The best place for this is your | : By working with us to prepare your proposal, you'll be getting to know us and showing us how you approach problems. The best place for this is your Wiki user page and the [https://webchat.freenode.net/?channels=#octave IRC channel]. | ||
* '''Complete Your Application''' | * '''Complete Your Application''' | ||
: Fill out our '''''public''''' application template. | : Fill out our '''''public''''' application template. | ||
:: This is best done by '''[[Special:CreateAccount|creating an account at this wiki]]''' and copying the '''[[Template:Student_application_template_public|template]]''' from its page. | :: This is best done by '''[[Special:CreateAccount|creating an account at this wiki]]''', and copying the '''[[Template:Student_application_template_public|template]]''' from its page. | ||
:: You really only need to copy and answer the '''''public''''' part there, there is no need to showcase everything else to everybody reading your user page! | :: You really only need to copy and answer the '''''public''''' part there, there is no need to showcase everything else to everybody reading your user page! | ||
: Fill out our '''''private''''' application template. | : Fill out our '''''private''''' application template. | ||
Line 40: | Line 36: | ||
* '''The Procedure for Contributing Changesets''' | * '''The Procedure for Contributing Changesets''' | ||
: You will be expected to follow the same procedures as other contributors and core developers. | : You will be expected to follow the same procedures as other contributors and core developers. | ||
: You will be helping current and future Octave developers by using | : You will be helping current and future Octave developers by using our standard style for changes, commit messages, and so on. You should also read the same [https://www.gnu.org/software/octave/doc/interpreter/Contributing-Guidelines.html contribution] [http://hg.savannah.gnu.org/hgweb/octave/file/tip/etc/HACKING guidelines] we have for everyone. | ||
: [[Hg_instructions_for_mentors#Mercurial_Tips_for_SoC_students | This page]] describes the procedures students are expected to use to publicly display their progress in a public mercurial repo during their work. | : [[Hg_instructions_for_mentors#Mercurial_Tips_for_SoC_students | This page]] describes the procedures students are expected to use to publicly display their progress in a public mercurial repo during their work. | ||
* '''The Maintainers Mailing List''' | * '''The Maintainers Mailing List''' | ||
Line 51: | Line 47: | ||
: Unless your primary mentor has a strong preference for some other method of communication, the IRC channel will likely be your primary means of communicating with your mentor and Octave developers. | : Unless your primary mentor has a strong preference for some other method of communication, the IRC channel will likely be your primary means of communicating with your mentor and Octave developers. | ||
* '''The Octave Forge Project''' | * '''The Octave Forge Project''' | ||
: [http://octave.sf.net Octave-Forge] is a | : [http://octave.sf.net Octave-Forge] is a collection of contributed packages that enhance the capabilities of core Octave. They are somewhat analogous to Matlab's toolboxes. | ||
* '''Related Skills''' | * '''Related Skills''' | ||
: In addition, you probably should know '''some''' mathematics, engineering, | : In addition, you probably should know '''some''' mathematics, engineering, experimental science, or something of the sort. | ||
: If | : If so, you probably have already been exposed to the kinds of problems that Octave is used for. | ||
== Criteria by which applications are judged == | == Criteria by which applications are judged == | ||
Line 61: | Line 57: | ||
* '''Applicant has demonstrated an ability to make substantial modifications to Octave''' | * '''Applicant has demonstrated an ability to make substantial modifications to Octave''' | ||
: The most important thing is that | : The most important thing is that you've contributed some interesting code samples to judge you by. It's OK during the application period to ask for help on how to format these code samples, which normally are Mercurial patches. | ||
* '''Applicant shows understanding of topic''' | * '''Applicant shows understanding of topic''' | ||
Line 76: | Line 72: | ||
The following projects are broadly grouped by category and probable skills required to tackle each. Remember to check [[Projects]] for more ideas if none of these suit you, and your own ideas are always welcome. | The following projects are broadly grouped by category and probable skills required to tackle each. Remember to check [[Projects]] for more ideas if none of these suit you, and your own ideas are always welcome. | ||
{{Note|these are | {{Note|these are suggested projects but you are welcome to propose your own projects provided you find an Octave mentor}} | ||
== Numerical == | == Numerical == |
edits