GCi: Difference between revisions

From KDE Community Wiki
No edit summary
No edit summary
 
(15 intermediate revisions by 6 users not shown)
Line 1: Line 1:
= Google Code-in =
= Google Code-in =
Student start page: [https://community.kde.org/GoogleCodeIn Google Code-in]
This is a contest for pre-university students ages 13-17. Please be aware '''GCI will start about a month earlier this year than in previous years''' - the contest starts for students ''October 23rd'' 2018.
This is a contest for pre-university students ages 13-17. Please be aware '''GCI will start about a month earlier this year than in previous years''' - the contest starts for students ''October 23rd'' 2018.


Organization ''applications open for GCI orgs next week on Thursday, September 6th, and close less than 2 weeks later on Monday, September 17th''. We will announce organizations on Tuesday, September 18th giving orgs 5 weeks to create their tasks before the contest begins on October 23rd.
KDE has been accepted for the 2018 contest. Now is the time for all mentors to:
 
* Subscribe to the [https://mail.kde.org/mailman/listinfo/kde-soc-mentor KDE-Soc-Mentor] list if you are not subscribed.
 
* Ask to be invited to the GCi webapp. Any of the admins can do that. Please write directly to kde-soc-mentor and tell us what email address you want to use.


Mentors: please join [[https://mail.kde.org/mailman/listinfo/kde-soc-mentor KDE-Soc-Mentor]] list if you are not subscribed.
* create more tasks!


Contest site: https://codein.withgoogle.com/ | Announcement: https://opensource.googleblog.com/2018/08/announcing-google-code-in-2018.html
Things to keep in mind:
* Mentors must be invited by OA's using the mentor's preferred Google account.
* Mentors may be as young as 13. A special Parental Consent form (Mentor Participant) is required and will be sent to any 13-17 year old prospective mentor when they first register with your org. OA's must be 18 years or older.
* Consider having multiple "instances" for some tasks (ex: you can have 20 of the same task available for students to work on, rather than making copies of the same task over and over again. This is a good strategy for beginner tasks.)
We strongly encourage you to have a minimum of 50 unique tasks comprising at least 100 task instances available on October 23rd, the start of the contest. The more tasks you have in your queue at the start of the contest, the easier your life will be for the next 7 weeks - trust us on this.
* Be sure to have tasks in all 5 categories throughout the contest.
* Tasks should range in difficulty from "I'm totally new and have no programming skills" to "I'm a comfortable programmer." Most participants will do easier tasks, but you'll be surprised by how many start easy and work their way towards harder ones.
* You do not need to publish all of the tasks on the first day of the contest. We encourage you to publish more tasks every few days during the first few weeks of the contest when demand is particularly high. Fresh tasks help keep students interested!
* In 2017, the average number of tasks completed per org was 650.
 
=== Important Information about Creating Tasks ===
* Only Org Admins can publish tasks so you are ultimately responsible for what tasks are available for students. Mentors can create tasks but Org Admins have to publish them (you can do bulk publishing, so don't worry).
* '''Do not create any tasks that require students to supply personal information.''' For example, what country they live in, pictures of the student, hobbies, etc. This is personal information and can not be asked or required of students in any manner. If you are unsure about a task please reach out to [email protected] and we can okay it or say it's not acceptable.
* Tasks should have a specific tangible output. Code, graphics, documentation, tests, test verification, etc.
It is not a "task" to require someone to make an account, sign up for a mailing list, or follow you on social media. Some of those things are overhead, some of the others are blatant marketing and don't benefit the student. We understand that sometimes this kind of trivial task is used as a beginner / hook task, but you'll need to find other things that are not trivial and don't violate privacy concerns.
* No tasks asking students to write blog posts about themselves. You can ask students to write a blog post about some kind of research related to your org, etc. but not a task asking them to write about their favorite tasks or why they are participating, etc.
 
Contest site: https://codein.withgoogle.com/ | Announcement: https://opensource.googleblog.com/2018/08/announcing-google-code-in-2018.html FAQ: https://developers.google.com/open-source/gci/faq


== The major changes for GCI 2018 ==
== The major changes for GCI 2018 ==
* Orgs will evaluate the 20 students completing the most tasks with their org when deciding on finalists and winners
* Orgs will evaluate the 20 students completing the most tasks with their org when deciding on finalists and winners
* Orgs will choose 6 finalists (instead of 5)
* Orgs will choose 6 finalists (instead of 5)
* We have renamed the User Interface category to Design  
* The former ''User Interface'' category is now called ''Design''
* Students will have to wait until Google reviews their Parental Consent form before they can claim their first task. This will slow things down but it is a requirement to be able to continue the program.
* Students will have to wait until Google reviews their Parental Consent form before they can claim their first task. This will slow things down but it is a requirement to be able to continue the program.
* No tasks asking for personal information about students will be allowed (this includes tasks asking for students to introduce themselves with info like what country they are from, or photos of the students, etc.).
* No tasks asking for personal information about students will be allowed (this includes tasks asking for students to introduce themselves with info like what country they are from, or photos of the students, etc.).


== Please add task ideas in the following areas, followed by mentor name ==
When we get into the contest, some information about [https://groups.google.com/forum/#!topic/gci-mentors/5ou45f95c30  how to detect cheating]
== Code: writing or refactoring ==
 
===GCompris: Write unit test for ApplicationInfo===
See task https://phabricator.kde.org/T9607
; mentors: Timothee<[email protected]>, Johnny<[email protected]>
 
===GCompris: Write unit test for DownloadManager===
See task https://phabricator.kde.org/T9608
; mentors: Timothee<[email protected]>, Johnny<[email protected]>
 
===GCompris: Add keyboard binding support to "Money"===
See task https://phabricator.kde.org/T8495
 
===GCompris: Add keyboard controls support to Memory activities===
See task https://phabricator.kde.org/T8491
 
===GCompris: Add keyboard controls support to "Simple paint"===
See task https://phabricator.kde.org/T8494
 
===KDE Partition Manager: Write unit tests for LvmDevice===
Try to understand this class' functionalities in kpmcore and write some unit tests for it.
; mentors: Caio Jordão Carvalho <[email protected]>, Andrius Stikonas <[email protected]>
 
===KDE Partition Manager: Write unit tests for SoftwareRAID===
Try to understand this class' functionalities in kpmcore and write some unit tests for it.
; mentors: Caio Jordão Carvalho <[email protected]>, Andrius Stikonas <[email protected]>
 
== Documentation/Training: creating/editing documents and helping others learn more ==
 
===GCompris: Add manual to "Guess count"===
See task https://phabricator.kde.org/T8512
 
===GCompris: Document "menu/ConfigurationItem.qml"===
Look for how this item is used and as some documentation to it.
 
===KDE Partition Manager: Write a simple manual for LVM PV creation process===
; mentors: Caio Jordão Carvalho <[email protected]>, Andrius Stikonas <andrius@stikonas.eu>
 
===KDE Partition Manager: Write a simple manual for LVM VG creation process===
; mentors: Caio Jordão Carvalho <caiojcarvalho@gmail.com>, Andrius Stikonas <[email protected]>
 
===KDE Partition Manager: Write a simple manual for the creation process of one of the available RAID levels in partitionmanager===
; mentors: Caio Jordão Carvalho <[email protected]>, Andrius Stikonas <[email protected]>
 
== Outreach/Research: community management, marketing, or studying problems and recommending solutions ==
 
=== Beginner: Connect to the #kde-soc channel on freenode, introduce yourself, and have a conversation with someone ===
* To connect to IRC, either install and use a client, such as KDE's Konversation, mIRC on Windows, or Colloquoy on Mac; OR use webchat: https://webchat.freenode.net/
* Once you have connected to irc.freenode.net, join the #kde-soc channel (/join #kde-soc) and introduce yourself. Explain that you are doing a beginner GCi task, and that to finish that, you need to talk to someone. You might ask questions that help you in your future tasks, as IRC is how many of us communicate on a daily basis.
* Submit a screenshot of the beginning or end of the conversation.
;mentors: Aman<[email protected]>, Amit<[email protected]>
 
=== Beginner: Subscribe to the GCompris-devel mail list, and introduce yourself ===
* Subscribe to GCompris mailing list. https://mail.kde.org/mailman/listinfo/gcompris-devel for information on how to subscribe.
* Once you have confirmed your subscription, send a post to the list introducing yourself. This means sending an email to [email protected]
* Once you have sent your post, find it in the archives at https://mail.kde.org/pipermail/gcompris-devel/ and submit the link to your email to finish the task.
* You may unsubscribe after posting if you like, however you are welcome to stay subscribed if you like.
 
=== Beginner: How did you get to know about KDE? ===
Write a short 5 paragraph essay answering and explaining the above. You should ideally state your experience about "that first time" when you heard/read about KDE. You can also include the information about what you know about KDE till now, points about opensource and free software in general.
 
== Quality Assurance: testing and ensuring code is of high quality ==
 
===Beginner: Build GCompris from source, test and suggest===
Clone GCompris, build it from source, test it and suggest what could be improved and the way you would think for the changes.
 
===KDE Partition Manager: Build kpmcore and partitionmanager from source===
Clone kpmcore and KDE Partition Manager, build them from source, then write a review about it and suggest possible improvements for INSTALL files.
; mentors: Caio Jordão Carvalho <[email protected]>, Andrius Stikonas <[email protected]>
 
===KDE Partition Manager: Test SMART status GUI and suggest some improvement.===
Test SMART status and try to suggest some layout or usability improvement.
; mentors: Caio Jordão Carvalho <[email protected]>, Andrius Stikonas <[email protected]>
 
===KDE Partition Manager: Test Volume Group creation GUI and suggest some improvement===
Test Volume Group creation and try to suggest some layout or usability improvement.
; mentors: Caio Jordão Carvalho <[email protected]>, Andrius Stikonas <[email protected]>
 
===KDE Partition Manager: Test creation of RAID 0, 1, 4, 5, 6 and 10===
Test array creation for all the RAID levels available in KDE Partition Manager in your machine and try to suggest some improvement.
; mentors: Caio Jordão Carvalho <[email protected]>, Andrius Stikonas <[email protected]>
 
== Design: graphic design or user interface design ==
 
===GCompris: "Louis Braille", reduce the view height===
See task https://phabricator.kde.org/T9571
 
===GCompris: "Enumerate", fix overriding===
See task https://phabricator.kde.org/T8514
 
===GCompris: "Falling words/letters, fix score overriding===
See task https://phabricator.kde.org/T8525
 
===GCompris: "Click game", fix overriding===
See task https://phabricator.kde.org/T8523
 
===GCompris: "Reading", fix overriding===
See task https://phabricator.kde.org/T8516
 
===GCompris: "Algebra", fix layout issue and overridings===
See task https://phabricator.kde.org/T8513
 
===GCompris: "Erase", fix layout===
See task https://phabricator.kde.org/T8524
 
===GCompris: "Canal lock", fix lock overriding===
See task: https://phabricator.kde.org/T8520
 
===GCompris: "The fifteen game", fix layout issue and prevent overriding===
See task https://phabricator.kde.org/T8518
 
===GCompris: "Magic Hat", fix overridings===
See task https://phabricator.kde.org/T8519
 
===GCompris: "Gnumch", fix layout issue===
See task https://phabricator.kde.org/T8521
 
===GCompris: "Color mix", fix layout===
See task https://phabricator.kde.org/T8522
 
===KDE Partition Manager: Improve the layout of SMART status GUI===
; mentors: Caio Jordão Carvalho <[email protected]>, Andrius Stikonas <[email protected]>

Latest revision as of 01:00, 30 November 2018

Google Code-in

Student start page: Google Code-in

This is a contest for pre-university students ages 13-17. Please be aware GCI will start about a month earlier this year than in previous years - the contest starts for students October 23rd 2018.

KDE has been accepted for the 2018 contest. Now is the time for all mentors to:

  • Ask to be invited to the GCi webapp. Any of the admins can do that. Please write directly to kde-soc-mentor and tell us what email address you want to use.
  • create more tasks!

Things to keep in mind:

  • Mentors must be invited by OA's using the mentor's preferred Google account.
  • Mentors may be as young as 13. A special Parental Consent form (Mentor Participant) is required and will be sent to any 13-17 year old prospective mentor when they first register with your org. OA's must be 18 years or older.
  • Consider having multiple "instances" for some tasks (ex: you can have 20 of the same task available for students to work on, rather than making copies of the same task over and over again. This is a good strategy for beginner tasks.)

We strongly encourage you to have a minimum of 50 unique tasks comprising at least 100 task instances available on October 23rd, the start of the contest. The more tasks you have in your queue at the start of the contest, the easier your life will be for the next 7 weeks - trust us on this.

  • Be sure to have tasks in all 5 categories throughout the contest.
  • Tasks should range in difficulty from "I'm totally new and have no programming skills" to "I'm a comfortable programmer." Most participants will do easier tasks, but you'll be surprised by how many start easy and work their way towards harder ones.
  • You do not need to publish all of the tasks on the first day of the contest. We encourage you to publish more tasks every few days during the first few weeks of the contest when demand is particularly high. Fresh tasks help keep students interested!
  • In 2017, the average number of tasks completed per org was 650.

Important Information about Creating Tasks

  • Only Org Admins can publish tasks so you are ultimately responsible for what tasks are available for students. Mentors can create tasks but Org Admins have to publish them (you can do bulk publishing, so don't worry).
  • Do not create any tasks that require students to supply personal information. For example, what country they live in, pictures of the student, hobbies, etc. This is personal information and can not be asked or required of students in any manner. If you are unsure about a task please reach out to [email protected] and we can okay it or say it's not acceptable.
  • Tasks should have a specific tangible output. Code, graphics, documentation, tests, test verification, etc.

It is not a "task" to require someone to make an account, sign up for a mailing list, or follow you on social media. Some of those things are overhead, some of the others are blatant marketing and don't benefit the student. We understand that sometimes this kind of trivial task is used as a beginner / hook task, but you'll need to find other things that are not trivial and don't violate privacy concerns.

  • No tasks asking students to write blog posts about themselves. You can ask students to write a blog post about some kind of research related to your org, etc. but not a task asking them to write about their favorite tasks or why they are participating, etc.

Contest site: https://codein.withgoogle.com/ | Announcement: https://opensource.googleblog.com/2018/08/announcing-google-code-in-2018.html FAQ: https://developers.google.com/open-source/gci/faq

The major changes for GCI 2018

  • Orgs will evaluate the 20 students completing the most tasks with their org when deciding on finalists and winners
  • Orgs will choose 6 finalists (instead of 5)
  • The former User Interface category is now called Design
  • Students will have to wait until Google reviews their Parental Consent form before they can claim their first task. This will slow things down but it is a requirement to be able to continue the program.
  • No tasks asking for personal information about students will be allowed (this includes tasks asking for students to introduce themselves with info like what country they are from, or photos of the students, etc.).

When we get into the contest, some information about how to detect cheating