GSOC 2010 FAQ for applicants

Back to GSoC 2010 ideas list

What if I don't have experience in the languages / tools needed for a project?

More experience is better, but we don't have unreasonable expectations.  You don't necessarily have to know everything you're going to use, especially if you can show us you'll be able to learn what you need.  Have you picked up skills for projects in the past?  How will you set about getting up to speed?  An awareness of what you need to learn shows you've thought about your application. 

Are some projects more likely to get selected than others?

There are more ideas than GSoC projects.  None are favoured over others, but some might get more applications, and our mentors can probably only mentor one student each.  We will rank applications globally, based on your ideas, skills and enthusiasm for an idea (see the application template on our GSoC profile page).  If we see you made a strong application for a project which already has strong applications, we might ask you to consider also applying for another idea.  Tactical applications aren't likely to be as strong as applications for projects which interest you.

Where can I find help about getting started with Sakai3?

The project has the UX code in Github:
http://github.com/sakaiproject/3akai-ux

UX development guidelines:
http://confluence.sakaiproject.org/display/3AK/Sakai+3+UX+Development+Guidelines+and+Information

UX Project bug and task tracking:
http://jira.sakaiproject.org/browse/SAKIII

UX email list:
sakai-ux@collab.sakaiproject.org

UX development demo server:
http://3akai.sakaiproject.org/dev/

Kernel code:
http://github.com/sakaiproject/nakamura

Kernel Google group:
http://groups.google.com/group/sakai-kernel

Getting started guide:
http://confluence.sakaiproject.org/display/3AK/Sakai+3+UX+Prototype+development

I want to apply for more than one Sakai project, should I make separate applications?

Yes - you can re-use most of your application: only two questions need different answers, but they are important questions so don't sacrifice quality for quantity.  If you submit your application as a web page it should be straightforward to recycle it.

What if I have my own project proposal?

 Awesome!  Hopefully you are already in touch with a potential mentor.  You need to tell the Sakai GSoC admin AS SOON AS POSSIBLE so they can adjust the number of slots applied for from Google.  We usually apply for one slot per mentor and we usually get them, although there's no guarantee.  If you do this too late, you'll potentially deprive someone else of a slot, and the competition will be steeper for everyone. 

Why do you want me to submit my application as a web page?  Do I have to?

Think of it as an opportunity to show off your web skills. Last year only a few applicants had a proper site of their own, so don't be discouraged if you don't.  Some got a site from their school, some hand-coded their pages, some maintained or built other sites which they showed us instead, one made a demo of their problem solution, several used Google Sites, some didn't submit as a URL at all.  To summarise: yes, please submit your application as a web page, yes, we are interested to see your web skills, no, you don't need to make a blog if you don't have one, and no, none of this is set in stone: we'll consider all applications.

How will I be mentored?

Last year we used a google group for GSoC mentoring and reports, it worked reasonably well but it will be up to the mentors and students again if they want to do something different.

How do I use content feeds in JCR?

15:18:01 < aewp2> hi everyone, Zerocool1989 here is applying for GSoC 2010, Sakai3 'mashup' project
15:18:08 < aewp2> he is looking for some help re. regarding data feeds stored in jcr.  Anyone able to lend him a hand?
15:39:58 < simong> Sure
15:40:08 < simong> Zerocool1989: Anything in specific you want to know ?
15:53:10 < Zerocool1989> how are the data feeds stored in jcr
15:55:38 < simong> Ah
15:56:04 < simong> We use a hierarchical data model
15:56:14 < simong> You can think of it as a file/folder structure
15:57:23 < simong> I think we have some doc somewhere for this, let me check (smile)
15:58:29 < simong> ok
15:59:03 < simong> So as you know, data can be retrieved via a simple http GET request
15:59:18 < simong> We usually retrieve a json representation of our dat
15:59:35 < simong> ex: /blog/Hello-world-post.json
15:59:40 < Zerocool1989> yes i saw that
15:59:45 < simong> ok
15:59:57 < simong> Now that data is stored as properties on a node
16:00:41 < simong> Imagine you have the following json

16:00:42 < simong> {
16:00:42 < simong>   "subject" : "Hello world",
16:00:43 < simong>   "body" : "Hi there! This is a blog post"
16:00:43 < simong> } 

16:00:56 < simong> Then that subject and body key are the properties
16:01:04 < Zerocool1989> ok
16:01:11 < simong> And you can create/update those properties with a simple http POST
16:01:35 < Zerocool1989> so i need to fetch all such properties
16:01:56 < simong> in curl that would be something like: curl -d"subject=Hello world" -d"body=Hi there! This is a blog post" http://admin:admin@localhost:8080/blog/hello-world-post
16:02:03 < simong> Well
16:02:32 < simong> Since almost everything is stored as a property on a node, you will have to use them yes (smile)
16:02:46 < Zerocool1989> ok
16:03:08 < simong> I will try to find some good resources for this as it is (imho) essential
16:04:07 < simong> http://sling.apache.org/site/46-line-blog.html
16:06:16 < simong> This gives a small introduction
16:06:57 < Zerocool1989> checking it out now
16:09:33 < simong> ping me if you have any questions
16:09:47 < simong> I know it can be a quite daunting sight at first (wink)
16:11:23 < simong> Also feel free to contact sakai-kernel@googlegroups.com with questions/bugs/issues ..
16:11:32 < simong> That is the main developer list for sakai 3
16:11:39 < Zerocool1989> i saw the intro videos by zach thomas in "your first day with nakamura
16:12:22 < Zerocool1989> There's lots of information available, and various services will draw upon the JCR pool of content in different ways, creating data feeds for all kinds of users what does this mean
16:13:22 < simong> Every user has his own space in the JCR repository

16:13:22 < simong> Every user has his own space in the JCR repository
16:13:44 < simong> Everybody has his own folder where they can store files, information, ... etc
16:13:54 < simong> They can write whatever they want to it
16:14:08 < simong> It's a bit organized like a unix home folder
16:14:11 < Zerocool1989> the feeds will be stored in RSS
16:14:18 < Zerocool1989> or Atom feed
16:14:23 < Zerocool1989> or RDF
16:14:38 < simong> What do you mean by feeds exactly?

16:14:58 < simong> Data is stored as a property on a node
16:15:10 < simong> It can be extracted (via GET) trough json, xml, txt, html, ...
16:15:41 < Zerocool1989> so the project is basically making an index of all the properties for all users
16:17:30 < simong> Ah
16:17:47 < simong> I'd assime it'll be json