Difference between revisions of "Joomla! Student Outreach Program Project Ideas"

From Joomla! Documentation

Line 27: Line 27:
Improve the process for creating and deploying the help screens in the many languages for which Joomla! is translated.
Improve the process for creating and deploying the help screens in the many languages for which Joomla! is translated.
:'''Interested Mentors:''' Jean-Marie Simonet
:'''Interested Mentors:''' Jean-Marie Simonet,Akarawuth Tamrareang
:'''Interested Students:'''  
:'''Interested Students:'''
====System Testing====  
====System Testing====  

Revision as of 21:42, 30 March 2010

Joomla! Student Outreach Program[edit]

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.

Large Team Projects[edit]

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.

Improved, automated API documentation presentation[edit]

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.

Interested Mentors: Louis Landry. Chris Davenport
Interested Students:

Web-based translation of Joomla core language files and 3rd party components[edit]

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.

Interested Mentors: Marius van Rijnsoever
Interested Students:

Internationalisation of the Joomla! help screens for 1.6[edit]

Improve the process for creating and deploying the help screens in the many languages for which Joomla! is translated.

Interested Mentors: Jean-Marie Simonet,Akarawuth Tamrareang
Interested Students:

System Testing[edit]

Create automated system tests to allow testing of the CMS from a user perspective.

Interested Mentors: Mark Dexter
Interested Students:

Version 1.5 to 1.6 migration script[edit]

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.

Interested Mentors: Mark Dexter
Interested Students:

Project Management Tools[edit]

This project could include:

  • Develop a component with project collaboration features (like BaseCamp: http://basecamphq.com/).
  • ProgressBar views based on completed task based on sprints, milestones, project...
  • Different front-end views for Clients, Team, Managers...
  • A module to show the active projects and is respective ProgressBars.
  • Allow Comments and discussions on tasks
  • Allow manager/team to set the function points value of each task (eq: planing poker)
Skills needed: Joomla CMS framework, MVC, PHP, MySQL, Javascript, MooTools
Interested Mentors: Marcelo Eden
Interested Students:

Zen Joomla! template switcher[edit]

This would be capable of efficiently allowing selection from a few hundred templates. Also maybe a component for submission and processing?

Interested Mentors:
Interested Students:

Usability testing[edit]

Interested Mentors: Elin Waring
Interested Students:

Joomla Dev Tools[edit]

This is a project which automatically generate codes for you to help when developing Extensions. This will help,

  • New comers to decrease the learning curve of Joomla! Development
  • Professionals to automate their Joomla! tasks

more details: http://docs.google.com/View?id=dhdpnvnz_59g6n3rsc8

samples : http://code.google.com/p/arunoda/source/browse/#svn/trunk/kadira%3Fstate%3Dclosed

Interested Mentors: Oleg Nesterov
Interested Students: Arunoda Susiripala

Small Task Projects[edit]

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.

Program Structure[edit]

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.

Application Process[edit]

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.