Google Summer of Code

Discussion about the project in general, organization, website, or any other details that aren't directly about the game.
Post Reply
Message
Author
User avatar
Oliver U
Space Krill
Posts: 8
Joined: Tue Feb 26, 2008 6:35 pm
Location: Linköping, Sweden

Google Summer of Code

#1 Post by Oliver U »

Hi!

I bet you all know about Google's Summer of Code. In short, Google pays uni-level studets to code for open source projects over the summer. I discovered your awesome project the night before SoC was announced, and had even thought of joining you as a part of it. Imagine my surprise when the next morning I'm eating my breakfast and checking my RSS feeds, I see the SoC announced. That was this morning.

Now, from the beginning I was astounded by the longevity and sturdiness of this project. The commit-rate on sourceforge seems even, which means there's activity even five years after the start, which in turn means it's not like 90% of other open source game projects out there (long since abandoned because the kid who started it lost interest). The solid roadmap and task list, aswell as firm but friendly leadership, leads me to believe this project will succeed in it's goals.

As I discussed your project with a person from Google (#gsoc @ freenode), they said that if you aspire to be a mentoring organisation/project for SoC, you are likely to be one of the successful projects. All for the reasons mentioned above.

What I wonder is, of course, are you interesting in having a paid (newbie to OSS development) developer join you over summer, learn the ways of your community, hopefully complete a project, and then (again hopefully) join you in the long term? In addition to that, you'll recieve $500 for each student you successfully take under your wing, assuming you don't run into problems with Google.

It would take some effort, but I have no doubt that it would be good publicity and a good addition to your project. I am obviously hoping that I would be one of your students, since I so much wish to see something MoO2-like alive again and because I don't want to work as a janitor over the summer ;) - but you'll of course recieve many more applicants if you get to be a mentoring project. How many applicants you are allowed to take on is decided by google, but you decide which applicants you want.

A quick bit of info on me can be seen at
viewtopic.php?f=2&t=149&p=29895#p29895

And SoC info is available at
http://code.google.com/soc/2008/

What do you think?

User avatar
Geoff the Medio
Programming, Design, Admin
Posts: 13603
Joined: Wed Oct 08, 2003 1:33 am
Location: Munich

Re: Google Summer of Code

#2 Post by Geoff the Medio »

After seeing mithro post repeatedly about Thousand Parsec being involved with the Summer of Code program, I thought it would be nifty to have someone new putting in a summer's worth of work... But I have a few concerns.

At first, I was skeptical that a game project would be acceptable, but given mithro's success, it seems not to be a problem.

More importantly, I'm unsure what is expected and required of a mentor. I've skimmed the SoC webpage, but can't find a clear explanation of what a mentor is supposed and expected to do or the level of time committment involved. As well, what is expected and required in terms of mentor experience with programming? Does the "mentor" just need to provide tasks and requirements, or is s/he expected to help resolve programming difficulties and software design issues during the development? What qualifies a mentor to do so?

I wouldn't want to spend time setting up an application, only to be rejected due to should-have-been-obvious lack of mentoring resources, or worse, be accepted and not be able to adequately support a student.

That all said, it would be nice to have some new, motivated coders contributing.

User avatar
Oliver U
Space Krill
Posts: 8
Joined: Tue Feb 26, 2008 6:35 pm
Location: Linköping, Sweden

Re: Google Summer of Code

#3 Post by Oliver U »

I'll try and get some mentors of previous years to post here about their experiences with SoC, especially what was required of them.

In the meantime, it seems from what I've read (there's a lot to read, ToS, huge FAQ, advice to mentors on wiki) that the main task is to control that the student is doing well, give help when it's needed, and discuss things as with any member of the community. Be a bridge between student and community.

[Edit: Oh, and thanks for the quick answer.]

danderson
Space Krill
Posts: 1
Joined: Tue Feb 26, 2008 10:04 pm

Re: Google Summer of Code

#4 Post by danderson »

Hi all,

I'm a SoC veteran (and now working for Google), and I heard you wanted a few more details. The links Oliver pasted are good references, especially the advice to mentors on the wiki. Basically, if selected, mentors of an org are expected to:

1) Provide a page somewhere of ideas/things to do.

The wiki page has some good advice on how to scope and frame those ideas to appeal to students. Basically, reformulate your TODO into an ideas list, with difficulty ranging from open source newbie project to open-ended open source guru task.

2) Receive, review and grade applications from students.

If accepted, you will receive an allocation of N students, and you will likely receive more than N applications. The SoC webapp lets you bounce back and forth with the student, get details on their proposals, ask them to be more specific, and most importantly grade them to signal your own preferences.

Your goal here is to grade the applications based on how interesting they are to you (not to Google, or The World(tm), just your project), taking into account the value of the contribution, feasibility, student motivation, and whatever criteria you feel is necessary. Again, the advice for mentors page provides some guidelines derived from the experience of past orgs, and veterans/googlers are around to help if need be.

Once the application and grading windows close, the top rated applicants who accept will be assigned to you. Each student gets assigned one mentor person in the org (a mentor can mentor several people, but if possible one person per student would be ideal).

3) Integrate the students into your community and get them up to speed.

This usually involves pointing them to docs of your project, possibly sorting out administrativia for version control, bug tracking, wiki accounts, etc. Then, you should be available if they have questions (be it project organization, code architecture, a nasty bug they're tracking down...), and occasionally review their progress and give them guidance if they're getting sidetracked/lost.

As for your question on what qualifies a mentor, I'd say simply knowledge of the code base, how the project is organized, and how open source "works" in general. Some of them have never been exposed to the kind of development process that happens outside university/company settings, and are looking for a semi-controlled environment in which to discover how the open source process works and how they fit into it.

The students who apply to SoC want to get involved in open source communities, so as a member of such a community, you qualify to be the Zen master who will show them the ropes ;).

4) Provide mid-term and final evaluations for each student in the GSoC webapp.

These are quick questionnaires that ask how things are going (is the student well integrated, is work going according to plan, have you had to rethink their project, ...), and most importantly whether you want to drop them from the SoC. Hopefully this will never happen, but sometimes it's necessary (if the student never shows up, shows bad will in refusing to integrate with the community, turning out to be so clueless they can't boot a computer without asking for help...).

5) Receive $500 per mentored student to do cool stuff with (eg. XMMS2 used these funds to fund a prize for a logo contest, other orgs just gave the $500 to the individual mentor, as a kind of compensation for their time). Each mentor also gets a SoC 2008 tshirt :)

So, basically, as a mentor org, and as individual mentors, you take on the role of a benevolent overseer, to help students get involved in an awesome open source project. That's the spirit of it, how exactly that gets applied varies somewhat from org to org.

Hope that helps a little.

Now, I take off my Google hat, I'm not speaking for anyone but myself: I think that FreeOrion looks like an awesome project (not least because it reminds me of long gaming hours of my youth), and unusually mature for an open source game (ie. it's not just "lulz we're making WoW only better! We have no code btw" as most FOSS game projects are). As such, I think it would be a good candidate as a mentoring organization in SoC, if you can spare the people to mentor students. I can't guarantee you'd make it in, but I believe you have a chance.

If you want to talk more live, you're welcome to bug me ('danderson') on the #gsoc IRC channel on Freenode. Other folks there can also help you out. I'll try to hang out here a little as well if you prefer the forum medium (Oliver, bug me on IRC if I seem to have gone :) )

Cheers,
- Dave

(Edit: unbreak Oliver's name, which I wrote à la française :) )

User avatar
JLP
Space Krill
Posts: 1
Joined: Sat Apr 21, 2007 6:19 pm
Location: Slovenia

Re: Google Summer of Code

#5 Post by JLP »

Well there is little to add to what danderson explained. I can only describe how it was for me helping to mentor people at Thousand Parsec project. Helping because unfortunately we didn't get enough slots and my student didn't come in, so I just helped other mentors.

What I basically had to do is hang on iRC and watch if the students signed in and check on their progress. You know the usuall questions, how is it going, is all going well, do you need any help, ... Motsly students just needed the help with committing their work into repository and help finding the right stuff in the repository and the code. They didn't need so much help with coding. More or less just orienting them around and encouraging them to commit their work and not be afraid of that. They just must know that we all make mistakes and that it is nothing wrong with that, all part of learning. If they had some problem with the code and I could help them a bit I did, otherwise we just had to wait for a more experienced mentor who knows the code better.

So yeah in short all I can say is that I recommend you to apply as a mentoring organization. The program helped quite a bit with Thousand Parsec, not just with amount of new code and new developers. If you write down the questions and problems the new developers have you can use them to improve the documentation on the website and things like that.

If you need any more info or help, we are always (well when awake) available on IRC (Freenode) in #tp channel.

User avatar
Oliver U
Space Krill
Posts: 8
Joined: Tue Feb 26, 2008 6:35 pm
Location: Linköping, Sweden

Re: Google Summer of Code

#6 Post by Oliver U »

Lastly, I found that the post-mortem resume of bzflag's (another OSS game) SoC was enlightening both from a student and especially from a mentor point of view. The pdf can be downloaded from http://my.bzflag.org/w/Google_Summer_of_Code

Ten quick pages of reading, and contains comments about workload, what kind of mentoring was needed, etc.

User avatar
eleazar
Design & Graphics Lead Emeritus
Posts: 3858
Joined: Sat Sep 23, 2006 7:09 pm
Location: USA — midwest

Re: Google Summer of Code

#7 Post by eleazar »

It certainly sounds worth looking into, especially since we have students already interested in our project.

Post Reply