Difference between revisions of "SoC 2012 Rules"

From VideoLAN Wiki
Jump to navigation Jump to search
(updated for VLC 2.0, removed references to x264, fixed grammar and typos.)
Line 25: Line 25:
  
 
* Learn about the code you should modify (where in the source, what is the idea...),
 
* Learn about the code you should modify (where in the source, what is the idea...),
* Be able to compile a VLC or x264 for your platform and learn how to use [[Git]].
+
* Be able to compile VLC for your platform and learn how to use [[Git]].
* Show the team that you compiled VLC and x264, by probably provide a small patch and a build. You can send the patch to an admin or to vlc-devel@ or x264-devel@
+
* Show the team that you compiled VLC by providing a small patch and a build. You can send the patch to an admin or to vlc-devel@
  
  
* Do one of the slection task (can be done after proposing the proposal)
+
* Do one of the selection tasks (can be done after proposing the proposal)
 
* Complete the Google admission and give a planning idea.
 
* Complete the Google admission and give a planning idea.
  
Line 36: Line 36:
 
* Examples of small patches:
 
* Examples of small patches:
 
** ASX playlists improvements, notably port to VLC-XML (see [http://trac.videolan.org/vlc/ticket/20 ticket 20] and the code there) (easy)
 
** ASX playlists improvements, notably port to VLC-XML (see [http://trac.videolan.org/vlc/ticket/20 ticket 20] and the code there) (easy)
** Close a VLC bug on trac, [http://trac.videolan.org/vlc/query?status=assigned&status=new&status=reopened&group=status&milestone=1.1+bugs 1.1 issues] or [http://trac.videolan.org/vlc/query?status=assigned&status=new&status=reopened&group=status&milestone=Bugs+paradize general issues]
+
** Close a VLC bug on trac, [http://trac.videolan.org/vlc/query?status=assigned&status=new&status=reopened&group=status&milestone=2.0.x+maintenance+bugs 2.0.x issues] or [http://trac.videolan.org/vlc/query?status=assigned&status=new&status=reopened&group=status&milestone=Bugs+paradize general issues]
 
** Add RMI (RIFF MIDI) support to the SMF demux,
 
** Add RMI (RIFF MIDI) support to the SMF demux,
 
** Add KAR support to the SMF demux,
 
** Add KAR support to the SMF demux,
Line 45: Line 45:
 
** Add new audio effects like chorus, reverb or phasing,
 
** Add new audio effects like chorus, reverb or phasing,
 
** Add new video filters,
 
** Add new video filters,
 +
** add support for the podcast service discovery module to the Mac interface (see [https://trac.videolan.org/vlc/ticket/6017 ticket 6017])
 
** Fix warnings,
 
** Fix warnings,
 
** Add some simple feature that sounds nice to you.
 
** Add some simple feature that sounds nice to you.

Revision as of 13:51, 9 March 2012

Rules

We don't like rules.

We like freedom and having fun with software programming.

However, we have no choice, seeing past experiences and issues. :'(

Summer Generalities

If you are a student, we expect that:

  • You don't have a full-time job during your summer if you are doing SoC at the same time,
  • You are of good will to work within VideoLAN team.

If you are a mentor, we expect that:

  • You are willing to work with one student and answers his questions.

Selection

To be selected, students should:

  • Select an idea,
  • Post a proposal on Google website,
  • Show on IRC often,
  • Join the mailing lists
  • Say hello to the potential mentor and admin.


  • Learn about the code you should modify (where in the source, what is the idea...),
  • Be able to compile VLC for your platform and learn how to use Git.
  • Show the team that you compiled VLC by providing a small patch and a build. You can send the patch to an admin or to vlc-devel@


  • Do one of the selection tasks (can be done after proposing the proposal)
  • Complete the Google admission and give a planning idea.


VLC selection tasks

  • Examples of small patches:
    • ASX playlists improvements, notably port to VLC-XML (see ticket 20 and the code there) (easy)
    • Close a VLC bug on trac, 2.0.x issues or general issues
    • Add RMI (RIFF MIDI) support to the SMF demux,
    • Add KAR support to the SMF demux,
    • libsox based module,
    • libmpg123 mp3 decoding module,
    • port a demuxer from MPlayer or ffmpeg,
    • Extend the DBus control to activate a video filter on the fly on an already playing video,
    • Add new audio effects like chorus, reverb or phasing,
    • Add new video filters,
    • add support for the podcast service discovery module to the Mac interface (see ticket 6017)
    • Fix warnings,
    • Add some simple feature that sounds nice to you.

During the summer

Student expectations

  • Student should explain his planning to his mentor and to an admin (not everyone has the same vacations)
  • Student should report with a small mail once a week to both mentor and admin during the time agreed (failure to do that will fail the application)
  • Student should commit on his personal git branch once a week, except the first week of your schedule (or more if your project is complex).

Explaining why you can't work one week is fine. Disappearing without notice is not.

  • Update wiki status page.

Student rights

  • Ask questions and stupid questions to anyone
  • Bother the mentor with questions
  • Ask the admin for another mentor if the mentor doesn't answer or doesn't fit.

Students will be considered as full-right developers.

Mentor expectations

  • Mentor should report to admins any problems as soon as noticed,
  • Mentor should tell admins if they can't make it in order to have another mentor for the student.

Mentor rights

  • Fail a student :D

Advice

To get selected

  • Be nice.
  • Show us basic skills with checking out and compiling the VLC code base.
  • Show us that you understand the VLC architecture. Code samples are good.
  • Come on IRC. Hang out, talk to us.

During the SoC

COMMIT EARLY, COMMIT OFTEN

  • Please do check that your commits compile. This makes it much easier to find problems later on, as searching for one problem doesn't stumble into broken commits that relate to something else entirely.
  • Ask questions. Don't sit on problems until the GSoC is over.
  • Don't be afraid to start researching your question yourself then check whether you are on the right track with your mentor. He (or others on the mailinglist or in the irc channel) will be happier to answer you if you can show you have done the groundwork. It tends to make explanations shorter and more meaningful, too.
  • Finishing the GSoC project in time is pretty cool too. It's your show! Make it something nice.