Difference between revisions of "Google Code In 2017"

From OSGeo
Jump to navigation Jump to search
(add results image)
 
(38 intermediate revisions by 3 users not shown)
Line 2: Line 2:
 
[[Image:GCI-logo.jpg|400px|link=https://developers.google.com/open-source/gci/]] <font size="+3"> @ </font> [[Image:Osgeo-logo.png|300px|link=http://www.osgeo.org]]
 
[[Image:GCI-logo.jpg|400px|link=https://developers.google.com/open-source/gci/]] <font size="+3"> @ </font> [[Image:Osgeo-logo.png|300px|link=http://www.osgeo.org]]
 
</center>
 
</center>
 +
 +
[[Image:GCI-2017-results.png|thumb|right|333px|Top 5 OSGeo students from the GCI 2017 contest]]
  
 
Central page for administering OSGeo participation in Google Code In 2017
 
Central page for administering OSGeo participation in Google Code In 2017
 
  
 
= Background =
 
= Background =
Line 14: Line 15:
 
* [https://developers.google.com/open-source/gci/resources/media Logo, flyer and presentation]
 
* [https://developers.google.com/open-source/gci/resources/media Logo, flyer and presentation]
 
* [https://developers.google.com/open-source/gci/help/responsibilities Roles and responsibilities of Students, Mentors and Admins]
 
* [https://developers.google.com/open-source/gci/help/responsibilities Roles and responsibilities of Students, Mentors and Admins]
 
  
 
= Timeline =
 
= Timeline =
  
 
* [https://developers.google.com/open-source/gci/timeline Full timeline]
 
* [https://developers.google.com/open-source/gci/timeline Full timeline]
* Oct 9 2017: Open source organizations can apply to be mentoring organizations (we should have mentors and tasks by then)
+
* Oct 9 2017: organizations can start drafting application to be mentoring organizations
 +
* Oct 24 2017: application deadline ([https://www.timeanddate.com/worldclock/fixedtime.html?year=2017&month=10&day=24&hour=16&min=0&sec=0 exact time]) for mentoring organizations (we should have mentors and tasks by then - "between 150 to 500 tasks")
 +
* Oct 26 2017: Mentoring organizations announced
 
* Nov 28 2017: Contest opens for entries by student participants
 
* Nov 28 2017: Contest opens for entries by student participants
 
* Jan 15 2018: Deadline for students to claim new tasks
 
* Jan 15 2018: Deadline for students to claim new tasks
Line 26: Line 28:
 
* Jan 31 2018: Grand Prize Winners and Finalists announced
 
* Jan 31 2018: Grand Prize Winners and Finalists announced
 
* June (exact dates TBD): Grand Prize Winner’s Trip
 
* June (exact dates TBD): Grand Prize Winner’s Trip
 +
 +
= Rules =
 +
 +
* [https://developers.google.com/open-source/gci/resources/contest-rules Contest rules]
 +
** Ineligible individuals (according to the above rules):
 +
*** a resident of a United States embargoed country, Brazil, Italy, or Quebec (see Google's [https://groups.google.com/d/msg/gci-mentors/KOZY6ivqfqA/9NazTL65AgAJ reasons]; [http://www.ce.camcom.it/files/normativa/dpr430_01.pdf link to the Italian law about online contests]),
 +
*** ordinarily resident in a United States embargoed country,
 +
*** participating as a Mentor in the 2017 Contest, or
 +
*** otherwise prohibited by applicable export controls and sanctions programs.
 +
* Delivery of prizes by Google
 +
** see what countries that Google cannot ship prizes to: https://developers.google.com/open-source/gci/faq#what_is_a_restricted_country
 +
 +
= Communication =
 +
 +
* IRC-channel: #osgeo-gsoc channel on freenode.net
 +
** how to connect: choose your favorite IRC client, or go directly through browser with [https://webchat.freenode.net/?channels=osgeo-gsoc webchat]
 +
* Google's "Code-in Discuss" forum (mostly students asking how to participate etc): https://groups.google.com/forum/#!forum/gci-discuss
  
 
= Administrators =
 
= Administrators =
  
* [[Margherita Di Leo]] <libravatar email="diregola@gmail.com"/>
+
* [[Margherita Di Leo]] <libravatar email="diregola@gmail.com"/> (IRC nickname: "madi")
* [[Jeff McKenna]] <libravatar email="jmckenna@gatewaygeomatics.com"/>
+
* [[Jeff McKenna]] <libravatar email="jmckenna@gatewaygeomatics.com"/> (IRC nickname: "jmckenna")
 
* [[User:Masterflorin|Florin-Daniel Cioloboc]] <libravatar email="cioloboc.florin@gmail.com"/>
 
* [[User:Masterflorin|Florin-Daniel Cioloboc]] <libravatar email="cioloboc.florin@gmail.com"/>
 +
* [[Helmut Kudrnovsky]] <libravatar email="hellik@web.de"/>
  
 
= Interested mentors / volunteers =
 
= Interested mentors / volunteers =
  
Willing mentors must write to gsoc-admin(at)osgeo.org and will be sent a form to fill in.
+
* fill out the Google form mentioned at [[Google Code In 2017 Mentors]]
 +
 
 +
= Recommendations for Students =
 +
 
 +
* https://wiki.osgeo.org/wiki/Google_Code_In_2017_Recommendations_for_Students
 +
 
 +
= Tasks =
 +
 
 +
* available on the GCI Dashboard when the contest starts on 28 November: https://codein.withgoogle.com/
 +
* mentors: for bulk uploading tasks see steps [https://wiki.osgeo.org/wiki/Google_Code_In_2017_Tasks#Bulk_Uploading_Tasks here]
 +
 
 +
= Application =
 +
 
 +
* our OSGeo application as a mentor organization, see: [[Google Code In 2017 Application]]
  
 
= Kickoff (virtual) meeting =
 
= Kickoff (virtual) meeting =
  
 
* 2017-09-25 at [https://www.timeanddate.com/worldclock/fixedtime.html?year=2017&month=09&day=25&hour=20&min=0 20.00 UTC]
 
* 2017-09-25 at [https://www.timeanddate.com/worldclock/fixedtime.html?year=2017&month=09&day=25&hour=20&min=0 20.00 UTC]
* On IRC in the #osgeo-gsoc channel on irc.freenode.net (connect directly in your browser via [https://webchat.freenode.net/?channels=osgeo-gsoc webchat])
+
* On IRC in the '''#osgeo-gsoc''' channel on irc.freenode.net (connect directly in your browser via [https://webchat.freenode.net/?channels=osgeo-gsoc webchat])
 
* agenda:
 
* agenda:
 
** discuss ideas for tasks for the students
 
** discuss ideas for tasks for the students
 
** plan to share mentor invites to all OSGeo projects
 
** plan to share mentor invites to all OSGeo projects
 +
** Collect questions to discuss with other mentor orgs at mentor summit
 +
 +
= Q&A =
 +
 +
Adrien Destugues (PulkoMandy) mentor for Haiku has replied to some of our questions:
 +
 +
'''Q''': It is not clear to me if it's possible to use more than one bug tracker or we must use the osgeo tracker for all the projects <libravatar email="diregola@gmail.com"/>
 +
 +
'''A''': You don't need a single bugtracker. You will have to import your tasks into the dedicated GCI website, and student work from that. The goal is that they learn how to find their way in your project and GSoC in general. In the case of Haiku, some tasks involve the OS itself (with a dedicated bugtracker), some involve contributing to existing projects (on github, for example), and some tasks are about writing an application from scratch so there isn't even a bugtracker to start with
 +
 +
'''Q''': The [https://developers.google.com/open-source/gci/how-it-works how it works] page doesn't mention how the word of this gets out to students, or does Google handle that?? How is promotion to students handled?? <libravatar email="jmckenna@gatewaygeomatics.com"/>
 +
 +
'''A''': Google handles some of it, students from past years handle some of it, and you can have a task like "make a 20 minute talk about our project and GCI for other students around you" so the students help you spread the word. Of course you can also do your own communication.
 +
 +
'''Q''': Discuss the opportunity to create "virtual environments" for the students to play with, and eventually come up with a patch? For example, for tasks that would otherwise require access to sensitive systems, e.g. SAC, web pages, etc.. <libravatar email="diregola@gmail.com"/>
 +
 +
'''A''': About setting up the environment for building the project: if that part of your project is really complex, providing a preset environment might be a good idea. We went a different way: GCI has "beginner" tasks which are things the students should do first before moving on to other tasks in the project. In our cases, these were something like "get the source, compile it, and add your name to the about box" or even "get the Haiku operating system running, open a text document and put your name in it, then take a screenshot". This allows the students to get points for just getting started with these things. Our documentation tasks also included tasks to write or update pages about setting up the development environment.
 +
 +
'''Q''': Is it necessary for the students to pick from different "types" of tasks or they can decide to complete only one type? <libravatar email="diregola@gmail.com"/>
 +
 +
'''A''': The student can mix types of tasks as they wish. At Haiku we are unfortunately putting a lot more coding tasks than anything else, mostly because that's what we can mentor best.
 +
 +
'''Q''': When is the deadline to prepare the tasks: Oct 9th (Open source organizations can apply to be mentoring organizations) or Nov 28th (Contest opens for entries by student participants)? What is the minimum number of tasks we need to get ready by the deadline?  <libravatar email="diregola@gmail.com"/>
 +
 +
'''A''': The deadline for tasks is, AFAIK, just before the contest opens to students. In fact you can continue adding new tasks to the contest after it opens and all the way until january, to keep the students busy. However, be prepared to have a few hundred tasks ready when the contest opens.
 +
 +
'''Q''': How many mentors do other organizations have (to be on the safe side and not underestimate the work load)? <libravatar email="diregola@gmail.com"/>
 +
 +
'''A''': I don't remember the exact number of mentors, but I'd say about 10 to 12 is a minimum. Expect hundreds of students trying to complete tasks, lot of activity on your IRC channel and other communication mediums. It always feels strange to us when things come back to their normal quiet state after GCI ends.I have started to work on a tool to edit Haiku tasks. You may not find it of much use as it runs only in the Haiku operating system. However, alongside it is a JSON file with our tasks from the 2016 edition. This can give you an idea of the number of tasks and their contents: https://github.com/pulkomandy/gcitool
 +
  
 
= Open questions =
 
= Open questions =
  
* The [https://developers.google.com/open-source/gci/how-it-works how it works] page doesn't mention how the word of this gets out to students, or does Google handle that?? How is promotion to students handled?? (Jeff)
+
* Add yours
* Discuss the opportunity to create "virtual environments" for the students to play with, and eventually come up with a patch? For example, for tasks that would otherwise require access to sensitive systems, e.g. SAC, web pages, etc.. (madi)
+
 
* It is not clear to me if it's possible to use more than one bug tracker or we must use the osgeo tracker for all the projects (madi)
+
= Insights from other orgs =
* Is it necessary for the students to pick from different "types" of tasks or they can decide to complete only one type? (madi)
+
 
 +
Tim Abbot from the Zulip project says:
 +
 
 +
The Zulip project did GCI for the first time last year, and we learned basically everything we needed to know at the mentor summit GCI session.
 +
If you're spending time on preparation in advance of that, I'd encourage you to focus on a few things:
 +
  * Recruiting volunteers to help the students; we had over 30 people organized in 4-hour shifts to provide continuous coverage.
 +
  * Writing really good developer onboarding documentation, and testing it on inexperienced programmers.
 +
  * Creating a few really polished starter tasks (e.g. we had one that was basically "figure out how to do manual and automatic testing in Zulip, including writing a simple unit test"
 +
  * Planning out some larger categories of tasks (e.g. where you want 15 similar things done) that you can write really good guides for.
 +
 
 +
See more insights in the summary about GCI from Mentor summit [[Google_Summer_of_Code_2017_Mentor_Summit#Report_from_Margherita_Di_Leo | report]]
  
 +
= Lessons Learned =
  
 +
* see https://wiki.osgeo.org/wiki/Google_Code_In_2017_Lessons_Learned
  
 
[[Category:Google Code In]]
 
[[Category:Google Code In]]

Latest revision as of 08:02, 4 June 2018

GCI-logo.jpg @ Osgeo-logo.png

Top 5 OSGeo students from the GCI 2017 contest

Central page for administering OSGeo participation in Google Code In 2017

Background

Timeline

  • Full timeline
  • Oct 9 2017: organizations can start drafting application to be mentoring organizations
  • Oct 24 2017: application deadline (exact time) for mentoring organizations (we should have mentors and tasks by then - "between 150 to 500 tasks")
  • Oct 26 2017: Mentoring organizations announced
  • Nov 28 2017: Contest opens for entries by student participants
  • Jan 15 2018: Deadline for students to claim new tasks
  • Jan 17 2018: All student work must be submitted; contest ends
  • Jan 18 2018: Mentoring organizations complete all evaluations of students’ work
  • Jan 31 2018: Grand Prize Winners and Finalists announced
  • June (exact dates TBD): Grand Prize Winner’s Trip

Rules

Communication

Administrators

Interested mentors / volunteers

Recommendations for Students

Tasks

Application

Kickoff (virtual) meeting

  • 2017-09-25 at 20.00 UTC
  • On IRC in the #osgeo-gsoc channel on irc.freenode.net (connect directly in your browser via webchat)
  • agenda:
    • discuss ideas for tasks for the students
    • plan to share mentor invites to all OSGeo projects
    • Collect questions to discuss with other mentor orgs at mentor summit

Q&A

Adrien Destugues (PulkoMandy) mentor for Haiku has replied to some of our questions:

Q: It is not clear to me if it's possible to use more than one bug tracker or we must use the osgeo tracker for all the projects <libravatar email="diregola@gmail.com"/>

A: You don't need a single bugtracker. You will have to import your tasks into the dedicated GCI website, and student work from that. The goal is that they learn how to find their way in your project and GSoC in general. In the case of Haiku, some tasks involve the OS itself (with a dedicated bugtracker), some involve contributing to existing projects (on github, for example), and some tasks are about writing an application from scratch so there isn't even a bugtracker to start with

Q: The how it works page doesn't mention how the word of this gets out to students, or does Google handle that?? How is promotion to students handled?? <libravatar email="jmckenna@gatewaygeomatics.com"/>

A: Google handles some of it, students from past years handle some of it, and you can have a task like "make a 20 minute talk about our project and GCI for other students around you" so the students help you spread the word. Of course you can also do your own communication.

Q: Discuss the opportunity to create "virtual environments" for the students to play with, and eventually come up with a patch? For example, for tasks that would otherwise require access to sensitive systems, e.g. SAC, web pages, etc.. <libravatar email="diregola@gmail.com"/>

A: About setting up the environment for building the project: if that part of your project is really complex, providing a preset environment might be a good idea. We went a different way: GCI has "beginner" tasks which are things the students should do first before moving on to other tasks in the project. In our cases, these were something like "get the source, compile it, and add your name to the about box" or even "get the Haiku operating system running, open a text document and put your name in it, then take a screenshot". This allows the students to get points for just getting started with these things. Our documentation tasks also included tasks to write or update pages about setting up the development environment.

Q: Is it necessary for the students to pick from different "types" of tasks or they can decide to complete only one type? <libravatar email="diregola@gmail.com"/>

A: The student can mix types of tasks as they wish. At Haiku we are unfortunately putting a lot more coding tasks than anything else, mostly because that's what we can mentor best.

Q: When is the deadline to prepare the tasks: Oct 9th (Open source organizations can apply to be mentoring organizations) or Nov 28th (Contest opens for entries by student participants)? What is the minimum number of tasks we need to get ready by the deadline? <libravatar email="diregola@gmail.com"/>

A: The deadline for tasks is, AFAIK, just before the contest opens to students. In fact you can continue adding new tasks to the contest after it opens and all the way until january, to keep the students busy. However, be prepared to have a few hundred tasks ready when the contest opens.

Q: How many mentors do other organizations have (to be on the safe side and not underestimate the work load)? <libravatar email="diregola@gmail.com"/>

A: I don't remember the exact number of mentors, but I'd say about 10 to 12 is a minimum. Expect hundreds of students trying to complete tasks, lot of activity on your IRC channel and other communication mediums. It always feels strange to us when things come back to their normal quiet state after GCI ends.I have started to work on a tool to edit Haiku tasks. You may not find it of much use as it runs only in the Haiku operating system. However, alongside it is a JSON file with our tasks from the 2016 edition. This can give you an idea of the number of tasks and their contents: https://github.com/pulkomandy/gcitool


Open questions

  • Add yours

Insights from other orgs

Tim Abbot from the Zulip project says:

The Zulip project did GCI for the first time last year, and we learned basically everything we needed to know at the mentor summit GCI session.
If you're spending time on preparation in advance of that, I'd encourage you to focus on a few things:
 * Recruiting volunteers to help the students; we had over 30 people organized in 4-hour shifts to provide continuous coverage.
 * Writing really good developer onboarding documentation, and testing it on inexperienced programmers.
 * Creating a few really polished starter tasks (e.g. we had one that was basically "figure out how to do manual and automatic testing in Zulip, including writing a simple unit test"
 * Planning out some larger categories of tasks (e.g. where you want 15 similar things done) that you can write really good guides for.

See more insights in the summary about GCI from Mentor summit report

Lessons Learned