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

From Joomla! Documentation

(add items to small project list)
Line 38: Line 38:
 
:'''Interested Mentors:''' Marcelo Eden
 
:'''Interested Mentors:''' Marcelo Eden
 
:'''Interested Students:'''
 
:'''Interested Students:'''
 
====System Testing====
 
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====
 
====Version 1.5 to 1.6 migration script====
Line 65: Line 59:
 
:'''Interested Mentors:''' Marcelo Eden, Mike Carson
 
:'''Interested Mentors:''' Marcelo Eden, Mike Carson
 
:'''Interested Students:'''
 
:'''Interested Students:'''
 +
 +
 +
==== Joomla Dev Tools  ====
 +
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===
 +
 +
These projects will be broken down into segments that can be completed within 30 days.
  
 
====Zen Joomla! template switcher====
 
====Zen Joomla! template switcher====
Line 77: Line 88:
 
:'''Interested Students:'''
 
:'''Interested Students:'''
  
==== Joomla Dev Tools  ====
 
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
+
====System Testing====
 +
Create automated system tests to allow testing of the CMS from a user perspective.
  
samples    : http://code.google.com/p/arunoda/source/browse/#svn/trunk/kadira%3Fstate%3Dclosed
+
:'''Interested Mentors:''' Mark Dexter
 +
:'''Skills Needed:''' PHP, HTML
 +
:'''Interested Students:'''
  
:'''Interested Mentors:''' Oleg Nesterov
+
====Improve Unit Test Coverage====
:'''Interested Students:''' Arunoda Susiripala
+
Work has been started on this with the goal of a continuous build model, but test coverage is incomplete. We need to add many more unit tests. Proposals should specify an area of concentration. Several projects for different areas would be welcome.
 
 
===Small Task Projects===
 
  
The other part of this is that we can also have a list of small
+
:'''Interested Mentors:''' Alessandro Nadalin, Mark Dexter
tasks that students could work on individually (like the GHOP model,
+
:'''Consultant:''' Ian MacLennon
for those of you familiar with this). One or more mentors could help
+
:'''Skills Needed:''' PHP, PHPUnit, Joomla! Framework
students with these tasks. Example of tasks might be to create a unit
+
:'''Difficulty:''' Medium
or system test, fix a bug, or write some documentation.
 
  
 
===Program Structure===
 
===Program Structure===

Revision as of 18:06, 13 April 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: Edvard Ananyan


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:


Multimedia Galleries[edit]

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....), be able to create playlists and more... give your ideas.

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)

Interested Mentors: Marcelo Eden
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, Mike Carson
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]

These projects will be broken down into segments that can be completed within 30 days.

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: Toni Marie, Flavia Tarzwell
Interested Students:

Usability testing[edit]

Interested Mentors: Elin Waring
Interested Students:


System Testing[edit]

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

Interested Mentors: Mark Dexter
Skills Needed: PHP, HTML
Interested Students:

Improve Unit Test Coverage[edit]

Work has been started on this with the goal of a continuous build model, but test coverage is incomplete. We need to add many more unit tests. Proposals should specify an area of concentration. Several projects for different areas would be welcome.

Interested Mentors: Alessandro Nadalin, Mark Dexter
Consultant: Ian MacLennon
Skills Needed: PHP, PHPUnit, Joomla! Framework
Difficulty: Medium

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.