Jump to content

Talk:Google Code-in/Mentors

About this board

Wikipadia template mechanism

4
Carn (talkcontribs)

There's an idea for a math assignment including MediaWiki internal variables, and a bit of astronomy. It is understood that the student will have to write a template related to the calculation of time intervals limited by computing means MediaWiki. Does such a task fall into the competition theme?

AKlapper (WMF) (talkcontribs)

@Carn Hi, hard to say without more information. :) Would working on this take a complete newcomer about 2-3 days to complete? I'm not sure what "time intervals limited by computing means MediaWiki" is supposed to mean.

Carn (talkcontribs)

It means using {{#time: }} {{#expr: }}and other en:Help:Conditional expressions to calculate a specific date associated with the movement of the Earth around the Sun and the Moon around the Earth, knowing some initial values. What is the deadline for preparing the assignment?

AKlapper (WMF) (talkcontribs)
Reply to "Wikipadia template mechanism"
Samwalton9 (talkcontribs)

I'm a little confused about which kinds of tasks should be classed as Beginner. The examples listed include "setting up the development environment and providing a screenshot of it" - does this mean I should file that as its own task, and not assume it to be an inherent component of working on tasks related to a particular tool?

Samwalton9 (talkcontribs)

Alternatively I have a *very* easy task, that won't take 3 days by itself, but could be wrapped into 'set up the development environment, make this small change, and file a pull request', if that was the idea here.

X-Savitar (talkcontribs)

@Samwalton9, beginner tasks are really really easy tasks and can only be done once on GCI. So a task such as "Get on IRC and idle for at least 1 hour" is in theory a beginner task and should be done only once on GCI site. So for most if not all beginner task on GCI, once the student does it, he/she should not do it again.

The reasoning behind this is to avoid students from doing only beginner tasks as the contest is to get student with most number of tasks so it doesn't make sense anymore if a student keeps doing only beginner tasks :)

Also, coming to your task, we try so much so that we do not mark tasks as beginner task because the default number of days on GCI that a task will be completed is 3 days. So maybe you can make the task take a little more time that is, make it a little bit more bony so the student will take say in theory 3 days to work on.

Setting up environment is of course a default for all students working on Wikimedia code bases and we assume they should do this on their own before working on patches. So it's not needed to be a task in this case. Does this answer your question @Samwalton9?

Samwalton9 (talkcontribs)

That's helpful, thank you!

Reply to "Beginner tasks"

Can extension tasks be part of this?

2
Nischayn22 (talkcontribs)

Not sure if tasks within extensions like SemanticMediaWiki or PageForms can be part of the tasks? I have one such task which I am ready to mentor as well. It involves MediaWiki API related programming.

AKlapper (WMF) (talkcontribs)

Hi, yes they can and we welcome new tasks and mentors! Please register. :)

John Vandenberg (talkcontribs)

I didn't see anything about the Finalist/Top 10 process in File:Information session for Wikimedia’s Google Code-In 2016 new mentors.pdf, and I think it would be helpful for mentors to know how that works in order to avoid unintentionally causing a student to have false expectations. We talk a lot about quality being very important, but in reality quantity is the first criteria for becoming a Finalist.

"5.2 Selecting Finalists and Grand Prize Winners. Each Organization will evaluate the work of the ten (10) highest scoring contestants who completed tasks for their Organization and will select five (5) of those contestants as Finalists and two (2) of those Finalists as Grand Prize Winners for their Organization. Each entry will be judged according to the following factors: creativity, thoroughness, and quality of work. The Organization may additionally factor the contestant’s involvement in the Organization’s community in the judging. The Organization’s decision is final and binding." <https://developers.google.com/open-source/gci/resources/contest-rules>

As a result, mentors need to be aware that to be fair to the students, it is very important to keep tasks of a similar size, and approve task once the participant have done roughly what the original task required, and give the participant a new task to continue their work.

I recall one year I let a student keep working on a task as the scope grew beyond the original task, and I extended time and I was most appreciative of their work, and I emphasised to them that quality was more important than quantity. But in fact, the rules are that quantity is the first criteria. Quality is only relevant for deciding between the top 10. fwiw, I do know that they were unlikely to be a Grand Prize winner, but I haven't checked whether I might have affected their ability to be Top 10, and thus possibly also Finalist. I do worry about that now, after knowing the winner selection process better.

AKlapper (WMF) (talkcontribs)

If a task is *way* bigger than originally anticipated then mentors are encouraged to create a separate follow-up task, indeed. Could you add that recommendation to the Mentors page?

Reply to "Finalist eligibility"

Work already performed by students cannot retroactively become a GCI task per rules, section 4.2).

2
John Vandenberg (talkcontribs)

This page currently says:

Work already performed by students cannot retroactively become a GCI task (GCI contest rules, section 4.2).

That rule says:

4.2 Claiming a Task. To work on a task, you must first claim it by clicking the “Claim this task” button, subject to the following:
(a) you may only claim one (1) task at a time;
(b) you may not claim a task that is currently claimed by another contestant;
(c) you may not claim a task that you have already completed; and
(d) you may not claim more than two (2) tasks labeled as beginner tasks.

I assume we are referring to 4.2(c). I believe that could be read literally to match the exact behaviour of the GCI system. Where a student has already claimed and completed a task, it is not available for them to claim again. It actually disappears from the task list that they can see when logged in.

We are reading it to mean that even if they have done some work on a problem, possibly because they were trying to do a different task but ran into trouble, they can't claim that work.

e.g. a student is doing GCI task `A`, and encounters a bug `B` which impedes them from doing task `A`. As they want to finish task `A`, they decided to debug `B`, create a phab task `B` and toss a good patch into Gerrit to solve it. As the bug is now sorted out, they can now finish GCI task `A` unimpeded. They want to work on GCI task `B` that resolves phab task `B`.

According to our reading of this rule, they would be prohibited from working on GCI task `B` because they have already completed it.

If that is correct, participants should not create phab tasks or gerrits except for their current GCI task, which is IMO not a good behaviour to instill in participants.

I would appreciate more justification for our reasoning here. I can definitely see the need for some rule here, more advanced than the GCI rule 4.2(c), especially preventing them from claiming work which was uploaded into Gerrit before GCI started. By the same rule though, should we also be preventing participants from doing the "set up your Vagrant" task if they did that task the previous year, or if we know they were using Vagrant just before GCI started?

AKlapper (WMF) (talkcontribs)

As the contest rules only refer to GCI, the term "task" means "a task in the GCI system". Students who run into an issue are more than welcome to create task B in Phab. Students can also propose potential GCI tasks to mentors.

As long as a student has not completed (= e.g. a patch in Gerrit) Phab task B and the student is not assigned to another task A on the GCI site which has not been approved, the student can claim task B on the GCI site. My understanding is that a student cannot claim task B on the GCI site if the student has already published a public patch to solve task B on the GCI site, but "completed" is vague here: If that proposed patch in Gerrit is -1 (needs more work) maybe it's still allowed by the rules; I am not sure here and only Google could clarify.

Obviously we cannot 'control' what students have already worked on but not yet published in public (like on Gerrit) and it is the student's risk (when the student is still assigned to a task on the GCI site that has not been approved yet) that another student could claim the task on the GCI site in the meantime.

If a student has obviously worked on a task on the GCI site before claiming it and published their work, the mentor should unassign the student from the task on the GCI site and admins can make the task unavailable to others on the GCI site, as work on the task has happened outside of the GCI rules.

Regarding the "set up Vagrant" task on the GCI site, mentors and admins cannot easily check if a student has already set up Vagrant last year but I'd expect all students to have read and agreed on the general GCI contest rules.

I'm not sure if I fully answered your question and concerns but I hope this was a bit helpful. I'd love to avoid coming up with additional organization-specific rules outside of the existing rules provided by Google. Might be a topic to discuss 'upstream' on the GCI mailing list?

Reply to "Work already performed by students cannot retroactively become a GCI task per rules, section 4.2)."
There are no older topics