[[TOC]] = Google Code In 2014 - 2015 = == Information for GCI Participants == === Instructions and Guidelines === * Please sign our [http://bit.ly/SSF-eCLA Contributor License Agreement] before claiming or completing any tasks (even non-coding tasks). * Please set your expectations from our mentors: * We will take 24 hours to respond to task claim requests * We will take 36 hours to review submitted completed tasks * Please use our public mailing list (http://groups.google.com/group/sahana-eden) or IRC channel (#sahana-eden on irc.freenode.net or http://webchat.freenode.net/?channels=sahana-eden&uio=d4) for all communications - no private messaging please - our mentors wil redirect you back to our public channels. This also lets you introduce yourself to the community. And if you post questions to the mailing list for the project you're working on, then many people will be available to answer, not just your mentor. * Note that Melange does notify mentors assigned to a task by e-mail whenever there is a status change or a comment made on a task... so you do not need to send an email to our lists when you claim or complete a task. * Please be patient.... * The mentor for your project may be in a different timezone. They may be asleep, having dinner... * Our mentors have lives, spouses, children, jobs, hobbies, exams... * See the times above -- that gives the maximum response time, and a response might take that long. Thanks! === How to do well in GCI === * Focus on adding value & helping rather than just completing tasks. * If the mentors give you feedback (which we should be!) be sure that you action it! * Students who make the extra effort, e.g. improve the wiki, help other students, will be more highly regarded than students who just complete tasks. === Admins and Mentors === * GCI admins: * Arnav Kumar Agrawal (IRC: knowing42) * Ramindu Deshapriya (IRC: ramindu) * GCI mentors: * Daniel Klischies (IRC: Nostraa) * Hitesh Sharma (IRC: hitesh96db) * Pat Tressel (IRC: ptressel) * Lolitha Ratnayake (IRC: Lolitha) * Arnav Kumar Agrawal (IRC: knowing42) * Somay Jain (IRC: Somay) * Vishrut Mehta (IRC: vishrut009) * Hardik Juneja (IRC: hardikj) * Anirudh Tewari (IRC: anirudh) * Robby O'Connor (IRC: robbyoconnor, shared with OpenMRS) == Tasks == * [http://sunflower.sahanafoundation.org/eden/project/task?task_tag.tag_id__belongs=14 Coding] * [http://sunflower.sahanafoundation.org/eden/project/task?task_tag.tag_id__belongs=13 Documentation/Training] * [http://sunflower.sahanafoundation.org/eden/project/task?task_tag.tag_id__belongs=16 Outreach/Research] * [http://sunflower.sahanafoundation.org/eden/project/task?task_tag.tag_id__belongs=12 Quality Assurance] * [http://sunflower.sahanafoundation.org/eden/project/task?task_tag.tag_id__belongs=9 User Interface] == Committing Code == Please read this, about how to use git and !GitHub, but we have some differences for GCI, which are explained below. http://eden.sahanafoundation.org/wiki/DeveloperGuidelines/Git We will be using a !GitHub repository just for GCI, rather than submitting code directly to the main repository. This will help us conserve the time of the (very busy) folks who have to approve submissions to the main repository. This is the repository to use for pull requests. You should still fork the main repository to create your own repository.[[br]] https://github.com/edengci/eden Also, we will use several branches in that GCI repository to receive the pull requests, to make it simpler and faster to get them merged, as we can review and merge them in parallel. So, there will be two changes to the procedure for submitting code. When you have code ready for review by a mentor, ask which branch in the GCI repository you should send your pull request to. The mentor will make sure this branch is up to date. The first steps to submit your work are the same as in the wiki page linked above. * "Squash" your commits into one. * Rebase from the main repository, so your branch is fully up to date, and has no conflicts. * Push your commit to your Eden repository on !GitHub. * Open the !GitHub page for your Eden repository. * Click the "Compare and Create Pull Request" button shown on that commit. The next step is where the change comes in: * The pull request page will have a line that shows which repository and branch you are sending the pull request too. You will need to change both, to the GCI repository and the branch name supplied by the mentor. * There will be a down-arrow next to the repository -- that will give you a list of repositories. Select the GCI repository. * Then use the down-arrow on the branch -- select your branch. * Create the pull request. Then: * Continue with the code review as usual. After the mentor accepts your pull request, the GCI admins will collect your commits and those of other students into one pull request each day (or every few days) and submit that to the main repository. Your commits will have your name on the, and will show up in the main repository. == Mentors == Here is a list of mentors with their IRC nicknames and timezones: ||= Mentor =||= IRC nickname =||= Timezone =|| || Somay Jain || Somay || UTC+0530 || || Ramindu Deshapriya || ramindu || UTC+0530 || || Arnav Kumar Agrawal || knowing42 || UTC+0530 || || Hardik Juneja || hardikj || UTC +0530 || || Pat Tressel || ptressel || UTC -0800 || || Hitesh Sharma || hitesh96db || UTC +0530 || || Vishrut Mehta || vishrut009 || UTC +0530 || || Robby OConnor || robbyoconnor || UTC-0500 || || Daniel Klischies || Nostraa || UTC+0100 || || Anirudh Tewari || anirudh || UTC +0530 || || Arnav Sharma || iamas || UTC +0530 || || Lolitha Ratnayake || Lolitha || UTC +0530 || [https://docs.google.com/spreadsheet/ccc?key=0Arty00iY8dujdE1NZWRfSFNaUzR1aENSZ2FJbU1lNmc&usp=sharing_eid#gid=0 Mentor Sign Up & Roster] === Mentors: Adding New GCI Tasks === A Google Code-In task should be a small unit of work in one of the categories listed below. They should be clearly and well documented so that they are easy for students to complete (and should link to all the information which the student should need to complete the task) and give a full criteria for completion so it is easy for mentors to evaluation. Tasks must be added to Sunflower under the following projects: * Code : [http://sunflower.sahanafoundation.org/eden/project/project/138/task Sahana Eden Trunk Code] * Documentation : [http://sunflower.sahanafoundation.org/eden/project/project/137/task Sahana Eden Documentation] * Outreach-Research : [http://sunflower.sahanafoundation.org/eden/project/project/139/task Sahana Outreach] * UI : [http://sunflower.sahanafoundation.org/eden/project/project/141/task Sahana Eden User Interface] * Quality Assurance : [http://sunflower.sahanafoundation.org/eden/project/project/140/task Sahana Quality Assurance] When adding tasks, ensure that you have used the 'New' and 'GCI Task' tags upon creation.