From SMC Wiki


3,488 bytes removed, 05:26, 26 January 2017
Reverted edits by Sperminator (talk) to last revision by Hrishikesh.kb
* Join the `SymPy SMC mailing list<https>`_ and introduce Introduce yourself.Not onlydo we over there so that the community can get to know you, but you can use the mailing list . Feel free to get feedback ondiscuss your project ideas and get as well as to ask for any help as that you start working with the code basemay require.
* Write Prepare a detailed proposal regarding your project and submit a proposal to it on the Google Summer of CodewebsiteCode website ( If you want You have to, you can draft your projectproposal on our wiki ( is notrequired, but if you do, we will help you proofread it.See update the sectionbelow for how to name and link to your application so we can easily find it.You may take a look at the old applications to see how they did things, linksto pages containing old applications can be found on in the Project wiki main page. * You will need to create an account on GitHub and send a patch.See below. * If you need help with anything, ask on the `SymPy list<also(>`_ or our IRC channel (`#sympy onFreenode <irc://irc.freenodeorg.netin/sympy>`_) (don't be afraid if you don'tknow git for example. We'll teach you everything that is needed, the onlyrequired thing from you is enthusiasm and willingness to learn new things)
* If you need help with anything, ask on the `SMC list or our IRC channel (`#smc-project on Freenode (don't be afraid if you don't know git for example. We'll teach you everything that is needed, the only required thing from you is enthusiasm and willingness to learn new things, but- '''don't expect spoon feeding from us''')
===Writing your proposal===
If you want, you can start Start a wiki page to work on your proposal athttps Every applicant should create an account in SMC wiki/.If you add your proposal thereunder your userpage, we willhelp you edit it and provide feedback (though understand that we will not helpyou write it).You can add your application to our [[list of currentapplications|GSoC-2013-Current-Applications]].To maintain a consistent namingscheme, title your application: "GSoC 2013 Application <Your Name>: <ProjectName>".Old applications can be found either through the links on the mainpage of the wiki or by browsing through [[_pages]]. Note that your final application must be submitted at, so do not worry about the formatting of yourapplication on the wiki, as you will have to reformat it there.You shouldnot be too concerned with the formatting in Melange either, as we understandthat the text editor there is not the best for making things look niceformatting-wise.We are more concerned with the content of your application,and that it is readable. You may be able to get equivalent formatting in Melange from the wiki bycopying the webpage contents or messing with the HTML source, but youshouldn't worry about it too much. You should include the following information in your proposal: '''You the person'''  Please put this information at the top of your proposal. * Name * University / current enrollment * Short bio / overview of your background * How can we contact you (email, IRC handle, GitHub username, Google Codeusername, etc.)?This information will help us associate all of yourvarious usernames with you. '''You the programmer'''  In your project proposal let us know about your programming experience.Don'tworry if you don't know SymPy or git.Many of our students start fresh.We will teach you what you need to know. * What platform do you use to code?What editor do you prefer and why? * What is your experience programming?Tell us about something you havecreated. * What is your experience with Python?What are your favorite features ofPython that are lacking in most other common programming languages?What,in your opinion, is the most advanced Python language feature or standardlibrary functionality that you have used? * What is your favorite feature of SymPy?Demonstrate it here with a cool example. * Have you ever used git or another version control system?  '''You and your project'''
Note that your final application must be submitted at, so do not worry about the formatting of your application on the wiki, as you will have to reformat it there.You should not be too concerned with the formatting in Melange either, as we understand that the text editor there is not the best for making things look nice formatting-wise.We are more concerned with the content of your application, and that it is readable.
Answer the following questions in your proposal:
* What do you want to achieve?'''The application template is given below'''-----
====Personal information====* What excites Email Address:* Telephone: '''No Need to Provide Phone Number in Wiki since it is going to be public'''* Blog URL:* Freenode IRC Nick:* Your university and current education: * Why do you want to work with the Swathanthra Malayalam Computing?* Do you about this have any past involvement with the Swathanthra Malayalam Computing or another open source projectas a contributor?* Did you participate with the past GSoC programs, if so which years, which organizations?* Do you have other obligations between May and August ? Please note that we expect the Summer of Code to be a full time, 40 hour a week commitment* Will you continue contributing/ supporting the Swathanthra Malayalam Computing after the GSoC 2013 program, if yes, which area(s), you are interested in?* Why did should we choose you choose itover other applicants?
* What qualifications do you have to implement ====Proposal Description====Please describe your idea?For example, if youare implementing solvers for partial differential equations, what courseshave you taken or books have you read on PDEs?Why are you suited to work onthis project?proposal in detail.
* What have other people done on this idea?Has it been implemented before?(hint'''NOTE''': it probably has)Are there any papers or blog posts about it? * How much time do you plan to invest in the project before, during, and afterthe Summer of Code? (we expect full time 40h/week during GSoC, but bettermake this explicit) If you plan to take any vacations over the summer, letus know about it here. * Please provide a schedule of how this time will be spent on sub-tasksof the project over the period of the summer. While this is onlypreliminary, we will use it to help monitor your progress throughoutthe program.Also understand that during the project you will issueweekly progress reports against that plan on your blog. * In planning your project, it is good to note where along the way you couldformulate a pull request. These would be points where you can have a selfcontained and well documented and tested piece of functionality. Doing thisat several points during the summer helps to keep branch merges reasonableand code reviews manageable. A big code dump at the end of the summer willlikely be hard to review and merge before the project deadline. * Please do not verbatim copy text from the ideas page, or from other people's
discussions about your project, but rewrite it in your own words.If you
include any significant text or code from another source in your
application, it must be accompanied with a proper citation.All papers orreferences that you use or plan to use must also be cited.Put all this in
a "References" section at the bottom of your application.
You do not need to format your application as a question/answer formatfor the above questions, but we expect to see all of the above questionsanswered in your application somewhere. '''Patch requirementInclude''':* An overview of your proposal* The need you believe it fulfills* Any relevant experience you haveIn addition * How you intend to the written implement your proposal, we require every GSoC applicant to write apatch and get it pushed into our current master. To do this: * Set up A rough timeline for your platform to develop progress with SymPy (install git, clonephases * Any other details you feel we should consider, execute tests)* Tell us about something you have created. The page on our[[Development-workflow]] will walk * Have you through setting up git and lays outcommunicated with a potential mentor? If so, who?our preferred way * SMC Wiki link of development.your proposal
* Create an account at GitHub and fork SymPy (
* Find something in SymPy that doesn====Other requirements===='''t work or needs improvement and send us agit patch fixing it. If Make sure you need inspirationhave completed following task to get qualified, feel free failing to fix complete any issuefrom our `easy to fix issues list<>`_. Aside fromthe issues, search for ``FIXME`` or ``TODO`` task will results in the code. You can grep fromthe command line with the following: ``grep -r -H "TODO"`` . You could alsosearch for NotImplementedErrors and XFAILs).You could also play with SymPyand find something that needs fixing or that could be implemented, and doitrejecting your application.'''
* Your patch must be codeYou have subscribed with the [, not documentationsmc. If your project will usea language other than Python SMC mailinglist] (eand [http://lists.gnongnu., JavaScriptorg/mailman/listinfo/silpa-discuss SILPA mailinglist] for SILPA projects), you should submit patchesthat use that language as well, so that we know that you know you are* Your application is available on [ SMC Project wiki] under your userspaceproficient in that language.* Your application is submitted to google-melange
In addition to the written proposal, we require every GSoC applicant to do this:* Report success Do create an account on the SymPy SMC wiki and start a wiki page for your proposal(Under your userpage). Keep it updated.* We expect every GSoC participant to maintain a blog (If not, already) and post about their project's status, development, etc.* Update the project status in the mailing listregularly with a meaningfull subjectline (don't use something like 'GSoC Project Update ')
* Publish your patch for peer review by creating a pull request on GitHub.
You must submit a patch that is successfully reviewed and pushed in to be
accepted. We do not consider applications without patches. This shows us that
you know Python and that you are able to interact with the community.
Furthermore, your patch must go through a GitHub pull request (as opposed to
a patch file on an issue, for example), as this is not only the easiest way
for us to review your code, but is also what we expect from a student working
on a GSoC project.
* **In your application, please provide a brief summary of your contributions toSymPy so far, including unmerged work. At at least one link to a merged pullrequest proving that you satisfied the patch requirement.**'''Useful Links'''
* Note that because we may be slow to review the pull requests, you do not[ GSoC FAQ]have to have your request merged by the application deadline (though you* [ Timeline]should try to do it if you can!)* [http://en.But you do need to at least have onesubmitted by thenflossmanuals.We will give priority to reviewing requests that arenet/GSoCstudentguide/ GSoC Student manual]needed to satisfy patch requirements* [http://en.It is up to you to respond to ourfeedback in a timely enough manner so that your patch gets merged before theacceptance Melange manual - Student application Phase ]