JSOP has been created to provide a structure to allow students to participate in and contribute to the Joomla! project. Students will work with experienced mentors on coding and other projects designed to improve the Joomla! CMS and the general Joomla! ecosystem.
This program will include two separate ways that students can contribute to Joomla! in structured programs with experienced mentors. The first way will be working on larger projects as part of a team. The team will include one or more students and one or more mentors.
Here is a starting list for possible large team projects. The idea is that these will be larger projects that would be worked on by teams of students and mentors.
If you are interested in participating in one of these projects, please add your name under Interested Mentors or Interested Students. This is not final and does not commit you to anything. It will just help us figure out who is interested in what. You can add your name to more than one project if you like and then we can decide later which project you will work on.
Figure out a way to read the PHP code documentation into a database and use it to allow access to accurate, up-to-date documentation of the Joomla! API in a way that is usable to developers.
Currently the process of making translations for Joomla requires manual copying of files and subsequently using a text editor to manually translate. This is labour intensive, hard to keep up to date with the latest Joomla releases and does not promote collaborations. I am proposing to use an automated system to create and distribute translations for Joomla. The translations would be done using Narro a free GPL web-based translation software used by Mozilla. In addition an automation layer with a Joomla components needs to be developer to ensure the system does not need any manual updating and ensures that translations are community driven. Its an important project and will be lots of fun at the same time.
Improve the process for creating and deploying the help screens in the many languages for which Joomla! is translated.
Develop an component able to create galleries with music, videos, applets, flash-games... it must support medias from different types (youtube, brightcove, .swf, .flv, .rmv, .mov....) and be able to create playlists.
This project can reuse code from denvideo (http://extensions.joomla.org/extensions/multimedia/video-players-a-gallery/4053) and jmultimedia (http://extensions.joomla.org/extensions/external-contents/multimedia-channels/video-channels/5659)
Create automated system tests to allow testing of the CMS from a user perspective.
We need to allow 1.5 users to easily migrate their sites to version 1.6. Work on this has been started, but it is a big job. Also, this could include hooks to make it easier for third-party developers to build migration tools for their extensions.
This project could include:
This would be capable of efficiently allowing selection from a few hundred templates. Also maybe a component for submission and processing?
This is a project which automatically generate codes for you to help when developing Extensions. This will help,
more details: http://docs.google.com/View?id=dhdpnvnz_59g6n3rsc8
The other part of this is that we can also have a list of small tasks that students could work on individually (like the GHOP model, for those of you familiar with this). One or more mentors could help students with these tasks. Example of tasks might be to create a unit or system test, fix a bug, or write some documentation.
In both cases, students would be working on a volunteer basis. However, we will figure out some fun rewards, like awarding t-shirts or other Joomla! stuff. Also, we will issue official certificates to students who successfully contribute to either program.
As with GSoC, the primary benefits to students are (a) real-world experience; (b) working with world-class mentors; and (c) the satisfaction of contributing to a great project and being part of a great community.
Since JSOP is a volunteer program, we do not have a fixed limit on the number of students who can participate. However, we need to make sure we have mentors for each project or task. Also, we still want students to formally apply to the program so that we have information about each student and can make sure they are assigned to projects. We will have more information about the details of the application process shortly.