Actions

LimeSurvey project ideas for Google Code-in 2011: Difference between revisions

From LimeSurvey Manual

No edit summary
No edit summary
Line 1,727: Line 1,727:
|}
|}


===User interface: Workflow improvements===
===User interface: Token section workflow improvements===


''Idea added by: Mazi''
''Idea added by: Mazi''


There are some sections at the Limesurvey admin backend at which workflow improvements can be added. Often a summary page is shown even if you just made a minor change. Instead we should speed up the workflow and show just a pop-up, just to name a few issues.
There are some sections at the Limesurvey admin backend like the token part at which workflow improvements can be added. Often a summary page is shown even if you just made a minor change. Instead we should speed up the workflow and show just a pop-up, just to name a few issues.


This is a list of issues I (Mazi) noticed. We can later splitt this up into some small and easy tasks:
This is a list of issues referring to the token screen:
*Problem: When adding new answer options and clicking into the answer text field, you have to manually delete the "Some example subquestion" text. For following answer options the text is deleted automatically when clicking into the input field.
*Solution: Add some Javascript to automatically delete the text once a user clicks into the input field.
*Problem: When switching to the token admin screen you don't see a list of available tokens. You have to click on the "Display Tokens" icon first.
*Problem: When switching to the token admin screen you don't see a list of available tokens. You have to click on the "Display Tokens" icon first.
*Solution: List all tokens below the "Token Summary" and above the "Token database options".
*Solution: List all tokens below the "Token Summary" and above the "Token database options".
Line 1,741: Line 1,739:
*Solution: It would be better to show the confirmation as a pop-up, like it is done after having added answer options or having changed global settings, and directly move on to the "add token entry" page because usually users want to add several token entries one by one.
*Solution: It would be better to show the confirmation as a pop-up, like it is done after having added answer options or having changed global settings, and directly move on to the "add token entry" page because usually users want to add several token entries one by one.
*Alternative solution: When adding a token have two radio options above the save button: a) add another token after save (should be default) OR b) display tokens after save.
*Alternative solution: When adding a token have two radio options above the save button: a) add another token after save (should be default) OR b) display tokens after save.
'''''TO BE CONTINUED'''''
*Problem: ...
*Solution: ...
Steps:
#Check the described issues using the online system we provide
#Search for the according code piece, for this task /admin/tokens.php is a good start
#Overwork the code to improve the workflow
#Create a patch file and send it to your mentor for review.
#Once the mentor accepts your patch he will add it to the current development branch
{|
|Time frame||Skills||Difficulty||Mentor
|-
|X Days||PHP, maybe a little HTML and Javascript|| Easy||c_schmitz
|}
===User interface: Survey designer workflow improvements===
''Idea added by: Mazi''
There are some sections at the Limesurvey admin backend like the survey designer at which workflow improvements can be added. Often a summary page is shown even if you just made a minor change. Instead we should speed up the workflow and show just a pop-up, just to name a few issues.
This is a list of issues referring to the survey designer:
*Problem: When adding new answer option and clicking into the answer text field, you have to manually delete the "Some example subquestion" text. For following answer options the text is deleted automatically when clicking into the input field.
*Solution: Add some Javascript to automatically delete the text once a user clicks into the input field.
*Problem: When creating a new survey there are options to import or copy a survey. BUT there is a "save" button after the "import/copy survey" button as well. This is irritating because users might click the save button instead and then an error message will show up because no survey title etc. was entered at the previous tabs
*Problem: When creating a new survey there are options to import or copy a survey. BUT there is a "save" button after the "import/copy survey" button as well. This is irritating because users might click the save button instead and then an error message will show up because no survey title etc. was entered at the previous tabs
*Solution: Hide "save" button at import and copy tab.
*Solution: Hide "save" button at import and copy tab.
'''''TO BE CONTINUED'''''
*Problem: ...
*Solution: ...
Steps:
#Check the described issues using the online system we provide
#Search for the according code piece
#Overwork the code to improve the workflow
#Create a patch file and send it to your mentor for review.
#Once the mentor accepts your patch he will add it to the current development branch
{|
|Time frame||Skills||Difficulty||Mentor
|-
|X Days||PHP, maybe a little HTML and Javascript|| Easy||c_schmitz
|}
===User interface: User and rights management workflow improvements===
''Idea added by: Mazi''
There are some sections at the Limesurvey admin backend like when adding users and settings rights at which workflow improvements can be added. Often a summary page is shown even if you just made a minor change. Instead we should speed up the workflow and show just a pop-up, just to name a few issues.
This is a list of issues referring to the user management and rights setting screens.
*Problem: After having added a new user there is a summary screen showing the username and email address. You can either click "continue" to get to the user list summary or click the "set user permissions" button which leads you to the next logical step of setting the permissions for this user (a user without any permissions set doesn't make much sense).
*Solution: We should show the summary as a pop uf and automatically redirect the admin to the screen where permissions for the newly added user can be set.
*Problem: After having set permissions as the next workflow step described below, the user receives a short status update and can only click "continue" which leads him to the user overview.
*Solution: We should automatically redirect the admin to the user overview and show the status update as a pop-up. We could also think about redirecting him to the screen where template permissions can be set which would be the next logical step.


'''''TO BE CONTINUED'''''
'''''TO BE CONTINUED'''''

Revision as of 21:34, 1 November 2011

Welcome

Welcome Google Code-in Student aspirants (:razz:)!! Please check if you are an eligible candidate for the GCI program.

This page lists task ideas developed by the LimeSurvey Community. These tend to be areas that will get the most support as tasks since they have been developed by people who know the project and what it needs the most. Good Luck (:biggrin:)

All tasks aim at the development version 2.0a.

How to claim a task

All tasks below will be entered in the Google Code-in task tracker (which is not yet available). You have to be a registered Google Code-In participant to claim a task.

Task ideas

Idea Template

This is just a template you can use to add your ideas:

Code/Documentation/Outreach/Quality assurance/Training/Research/User interface: Some descriptive task description

Idea posted by: <myname>

Here comes some text describing the current situation and how Limesurvey will benefit from this task. The description should make clear what this task is about.

Task steps:

  • Some steps like...
  • Install Limesurvey or use the online system we provide
  • Analyse the problem
  • Discuss the issue and your proposed solution with your mentor
  • Code/document/translate/... and submit your work
  • Discuss the work with your mentor
  • Check-in your changes into the limesurvey svn trunk/add it to the wiki/...
Time frame Skills Difficulty Mentor
X days some skills the applicants should have easy/moderate/difficult mentorname

Localization

Localization: Translate LimeSurvey to your mother language

The LimeSurvey software is available in more than 50 languages - not all of them are completely translated. Check if your language is supported at: http://www.limesurvey.org/translationstatus_v2/

Task Steps:

  • Check out if your language is already there and if the translation status is below 70% OR if your language does not exist at all.
  • Read the documentation on Translating LimeSurvey
  • Translate as crazy - check your translation using a local copy of LimeSurvey.
  • Submit your updated/new translation to us.

Updating a translation from <70% to 100%:

Time frame Skills Difficulty Mentor
2 Days Translation Easy c_schmitz

New translation (at least 50%):

Time frame Skills Difficulty Mentor
3 Days Translation Moderate c_schmitz

Translation: (GERMAN) Translate the english "Expression Manager" docs page to German

Idea posted by: Mazi

The upcoming Limesurvey 2.0 version will contain a powerful "Expression Manager" which replaces conditions and some other features. The documentation of this new feature is only available in English yet. Your task is to translate the current wiki page to German.

Task Steps:

Time frame Skills Difficulty Mentor
2 days German and English language easy mot2

Translation: (GERMAN) Translate the english "Central Participants Database" docs page to German

Idea posted by: Mazi

The upcoming Limesurvey 2.0 version will have a new feature called "Central Participants Database" (CPDB). The documentation of this new feature is only available in English yet. Your task is to translate the current wiki page to German.

Task Steps:

Time frame Skills Difficulty Mentor
2 days German and English language easy mot2

Translation: (GERMAN) Translate the english "Creating a new survey" docs page to German

Idea posted by: Mazi

The "Creating a new survey" page is one of the most important pages at our documentation because it lists all available survey settings. Unfortunately the German documentation of this page is really outdated. Your task is to update the German translation of that wiki page based on the current english wiki page.

Task Steps:

Time frame Skills Difficulty Mentor
2 days German and English language easy mot2

Translation: (GERMAN) Translate the english "Advanced question settings" docs page to German

Idea posted by: Mazi

The "Advanced qustion attributes" page is one of the most important pages at our documentation because it lists all available question attributes which enhance question functionality. Unfortunately the German documentation of this page is really outdated. Your task is to update the German translation of that wiki page based on the current english wiki page.

Task Steps:

Time frame Skills Difficulty Mentor
2 days German and English language easy mot2

Translation: (GERMAN) Translate the english "Tokens" docs page to German

Idea posted by: Mazi

The "Tokens" page is one of the most important pages at our documentation because feature is used a lot to restrict access to a survey on predefined users. Unfortunately the German documentation of this page is really outdated. Your task is to update the German translation of that wiki page based on the current english wiki page.

Task Steps:

Time frame Skills Difficulty Mentor
2 days German and English language easy mot2

Translation: (GERMAN) Translate the english "Installer" docs page to German

Idea posted by: Mazi

The new installer is one of the most important featres of the new Limesurvey 2.0 version. Once the English instructions page (see this idea) was set up, the German translation of that page has to be created.

Task Steps:

  • Have a look at the english installer page once it was set up.
  • Create the German translation of this page directly at our wiki.
  • Check if your new/updated translation contains all information of the english base version.
  • Discuss the translation with your mentor
Time frame Skills Difficulty Mentor
2 days German and English language easy mot2

------------------

Translation: (FRENCH) Translate the english "Expression Manager" docs page to French

Idea posted by: Mazi

The upcoming Limesurvey 2.0 version will contain a powerful "Expression Manager" which replaces conditions and some other features. The documentation of this new feature is only available in English yet. Your task is to translate the current wiki page to French.

Task Steps:

Time frame Skills Difficulty Mentor
2 days French and English language easy Shnoulle

Translation: (FRENCH) Translate the english "Central Participants Database" docs page to French

Idea posted by: Mazi

The upcoming Limesurvey 2.0 version will have a new feature called "Central Participants Database" (CPDB). The documentation of this new feature is only available in English yet. Your task is to translate the current wiki page to French.

Task Steps:

Time frame Skills Difficulty Mentor
2 days French and English language easy Shnoulle

Translation: (FRENCH) Translate the english "Creating a new survey" docs page to French

Idea posted by: Mazi

The "Creating a new survey" page is one of the most important pages at our documentation because it lists all available survey settings. Unfortunately the French documentation of this page is really outdated. Your task is to update the French translation of that wiki page based on the current english wiki page.

Task Steps:

Time frame Skills Difficulty Mentor
1 day French and English language easy Shnoulle

Translation: (FRENCH) Translate the english "Advanced question settings" docs page to French

Idea posted by: Mazi

The "Advanced question attributes" page is one of the most important pages at our documentation because it lists all available question attributes which enhance question functionality. Unfortunately the French documentation of this page is really outdated. Your task is to update the French translation of that wiki page based on the current english wiki page.

Task Steps:

Time frame Skills Difficulty Mentor
2 days French and English language easy Shnoulle

Translation: (FRENCH) Translate the english "Tokens" docs page to French

Idea posted by: Mazi

The "Tokens" page is one of the most important pages at our documentation because feature is used a lot to restrict access to a survey on predefined users. Unfortunately the French documentation of this page is really outdated. Your task is to update the French translation of that wiki page based on the current english wiki page.

Task Steps:

Time frame Skills Difficulty Mentor
2 days French and English language easy Shnoulle

Translation: (FRENCH) Translate the english "Installer" docs page to French

Idea posted by: Mazi

The new installer is one of the most important featres of the new Limesurvey 2.0 version. Once the English instructions page (see this idea) was set up, the French translation of that page has to be created.

Task Steps:

  • Have a look at the english installer page once it was set up.
  • Create the French translation of this page directly at our wiki.
  • Check if your new/updated translation contains all information of the english base version.
  • Discuss the translation with your mentor
Time frame Skills Difficulty Mentor
2 days French and English language easy Shnoulle

---------------

Translation: (SPANISH) Translate the english "Expression Manager" docs page to Spanish

Idea posted by: Mazi

The upcoming Limesurvey 2.0 version will contain a powerful "Expression Manager" which replaces conditions and some other features. The documentation of this new feature is only available in English yet. Your task is to translate the current wiki page to Spanish.

Task Steps:

Time frame Skills Difficulty Mentor
2 days Spanish and English language easy holch

Translation: (SPANISH) Translate the english "Central Participants Database" docs page to Spanish

Idea posted by: Mazi

The upcoming Limesurvey 2.0 version will have a new feature called "Central Participants Database" (CPDB). The documentation of this new feature is only available in English yet. Your task is to translate the current wiki page to Spanish.

Task Steps:

Time frame Skills Difficulty Mentor
2 days Spanish and English language easy holch

Translation: (SPANISH) Translate the english "Creating a new survey" docs page to Spanish

Idea posted by: Mazi

The "Creating a new survey" page is one of the most important pages at our documentation because it lists all available survey settings. Unfortunately the Spanish documentation of this page is really outdated. Your task is to update the Spanish translation of that wiki page based on the current english wiki page.

Task Steps:

Time frame Skills Difficulty Mentor
1 day Spanish and English language easy holch

Translation: (SPANISH) Translate the english "Question types" docs page to Spanish

Idea posted by: Mazi

The "Question types" page is one of the most important pages at our documentation because it lists all available question types. Unfortunately the Spanish documentation of this page is really outdated. Your task is to update the Spanish translation of that wiki page based on the current english wiki page.

Task Steps:

Time frame Skills Difficulty Mentor
2 days Spanish and English language moderate holch

Translation: (SPANISH) Translate the english "Advanced question settings" docs page to Spanish

Idea posted by: Mazi

The "Advanced question attributes" page is one of the most important pages at our documentation because it lists all available question attributes which enhance question functionality. Unfortunately the Spanish documentation of this page is really outdated. Your task is to update the Spanish translation of that wiki page based on the current english wiki page.

Task Steps:

Time frame Skills Difficulty Mentor
2 days Spanish and English language easy holch

Translation: (SPANISH) Translate the english "Tokens" docs page to Spanish

Idea posted by: Mazi

The "Tokens" page is one of the most important pages at our documentation because feature is used a lot to restrict access to a survey on predefined users. Unfortunately the Spanish documentation of this page doesn't exist yet. Your task is to create the Spanish translation of that wiki page based on the current english wiki page.

Task Steps:

Time frame Skills Difficulty Mentor
3 days Spanish and English language difficult holch

Translation: (SPANISH) Translate the english "Installer" docs page to Spanish

Idea posted by: Mazi

The new installer is one of the most important featres of the new Limesurvey 2.0 version. Once the English instructions page (see this idea) was set up, the Spanish translation of that page has to be created.

Task Steps:

  • Have a look at the english installer page once it was set up.
  • Create the Spanish translation of this page directly at our wiki.
  • Check if your new translation contains all information of the english base version.
  • Discuss the translation with your mentor
Time frame Skills Difficulty Mentor
2 days French and English language moderate holch

Code

Code: Usability changes for LimeSurvey

The LimeSurvey user interface (like most interfaces) has its kinks - often it is very easy to enhance the usability by just making small changes to the interface.

Task Steps:

  • Install LimeSurvey - create a small survey, play around with the interface.
  • Pick a couple things you would like to change to have better usability
  • Discuss the found issues with your mentor
  • Together we will either pick one of your found issues or the mentor will make an suggestion for another change.
  • Code the usability change and create a patch
  • Discuss the patch with your mentor and the mentor
  • If necessary make re-submit patch with discusse changes
Time frame Skills Difficulty Mentor
2 days PHP, HTML, CSS, maybe SQL Moderate c_schmitz

Code: Implement "Embedd all text answers" setting at admin statistics

Idea posted by: Mazi

Currently the admin statistics only sum up data. If you want to have a look at text responses in detail, you have to click another button within the summary which opens a new windows.

This is a bad solution if you want to exports results and include the texts because you have to copy them manually. Therefore a new "Embedd all text answers" setting should be introduced so that all text answers will be listed for all corresponding questions. This way this data would also be avialable when exporting the statistics.

Task Steps:

  • Install LimeSurvey - create a small survey with text questions and add some dummy data.
  • Have a look at the data summary and the available export options.
  • Add a "Embedd all text answers" setting.
  • Implement the code to embedd that data and create a patch
  • Discuss the patch with your mentor and ask for feedback.
  • Check-in your changes into the limesurvey svn trunk.
  • Done!
Time frame Skills Difficulty Mentor
2 days PHP, some very basic HTML, SQL Moderate c_schmitz

Code: Implement Google map at admin statistics

Idea posted by: Mazi

Limesurvey offers a "Map" question type which can be used to let the user mark a certain location. The results are stored as lat./long. coordinates at a simply text question. Currently the admin statistics only show the raw coordinates. To improve this, a Google Map should be included at the admin statistics, showing the users' answers at that overview.

Task Steps:

  • Install LimeSurvey - create a small survey with a map question and add some dummy data.
  • Have a look at the admin statistics of that question.
  • Implement the code to embedd a Map and mark the users' answers in there and create a patch
  • Discuss the patch with your mentor and ask for feedback.
  • Check-in your changes into the limesurvey svn trunk.
  • Done!
Time frame Skills Difficulty Mentor
3 days PHP, some very basic HTML, (knowledge about Google Maps API or: learning by doing) Moderate c_schmitz

Code: Implement jqgrid at token overview table

Idea posted by: Mazi

The Limesurvey admin backend includes several tabular overviews, e.g. when listing all the existing users at the token overview. Usability will benefit a lot if those overviews would be sortable, searchable and filterable. For this we can use jqgrid.

Task Steps:

  • Install LimeSurvey - create a small survey with a token table and add a few dummy people there.
  • Have a look at the jqgrid docs at http://www.trirand.com/jqgridwiki/doku.php
  • Implement jqgrid for the token overview and create a patch
  • Discuss the patch with your mentor and ask for feedback.
  • Check-in your changes into the limesurvey svn trunk.
  • Done!
Time frame Skills Difficulty Mentor
2 days Javascript, PHP, HTML, maybe a little CSS Difficult c_schmitz

Code: Implement jqgrid at browse response table

Idea posted by: Mazi

The Limesurvey admin backend includes several tabular overviews, e.g. when listing survey results at the browse responses screen. Usability will benefit a lot if this overview would be sortable, searchable and filterable. For this we can use jqgrid.

Task Steps:

  • Install LimeSurvey - import a test survey with all question types (we'll hand that to you) and add some test answer data.
  • Have a look at the jqgrid docs at http://www.trirand.com/jqgridwiki/doku.php
  • Implement jqgrid for the browse response table and create a patch
  • Discuss the patch with your mentor and ask for feedback.
  • Check-in your changes into the limesurvey svn trunk.
  • Done!
Time frame Skills Difficulty Mentor
2 days Javascript, PHP, HTML, maybe a little CSS Moderate aniessh

Code: Improve drag and drop functionality at attribute mapping

Idea posted by: Aniessh

Central Participant's Database feature has a special drag and drop functionality for mapping/creating attributes in the token table to the central table and vice versa. The feature is working but needs improvement in the user interface.

Task Steps:

  • Install LimeSurvey - create a small survey with a token table and add a few dummy people there.
  • Create some attributes at the token level.
  • Create some attributes at the Central Participant Database panel.
  • Copy the previously added dummy people from token table to the central table.
  • You will be presented with a drag and drop screen that will allow you to match the attributes from the central and the token table.
  • Suggest how to improve the user interface.
  • Improve the user interface and create a patch.
  • Discuss the patch with your mentor and ask for feedback.
  • Check-in your changes into the limesurvey svn trunk.
  • Done!
Time frame Skills Difficulty Mentor
2 days Javascript, PHP, HTML, CSS Moderate aniessh

Code: Add drag and drop feature to ranking question

Idea posted by: Mazi

Limesurvey contains a "ranking" question type (see http://docs.limesurvey.org/Question+type+-+Ranking&structure;=English+Instructions+for+LimeSurvey) which isn't very user friendly when it comes to sorting and it also causes problems when being used by screen readers. Nowadays there are better interfaces for such question types so switching to a drag and drop version is the goal of this coding task.

There is already a workaround and a demo version available so what has to be done is porting the code to create a more generic solution and embedding the CSS for the available shipped templates.

Task Steps:

  • Install LimeSurvey - create a test survey with ranking question types and different question attributes
  • Have a look at the question type within the survey to see what could be improved.
  • Check the workaround linked above and the demo survey to see where we would like to go to.
  • Implement a generic solution to make the ranking question type a little nicer (no DB changes required).
  • Discuss the patch with your mentor and ask for feedback.
  • Check-in your changes into the limesurvey svn trunk.
  • Done!
Time frame Skills Difficulty Mentor
3 days Javascript, PHP, CSS difficult c_schmitz

Code: Add option to switch between bar chart and pie chart at statistics

Idea posted by: Mazi

Limesurvey uses bar charts for multiple choice questions and pie charts for single choice questions. Often users want to switch to a different chart type so this fixed assignment of certain types should be replaced by a more dynamic system which allows the user to set chart types himself.

Task Steps:

  • Install LimeSurvey - import a test survey with all question types (we can provide one) and add some test data.
  • Have a look at the admin statistics and the charts that are created. Check how we could best offer a choice for the user to set chart types.
  • Discuss your suggestions with your mentor and together create a concept how to deal with the problem.
  • Implement a generic solution.
  • Discuss the patch with your mentor and ask for feedback.
  • Check-in your changes into the limesurvey svn trunk.
  • Done!
Time frame Skills Difficulty Mentor
4 days PHP, MySQL, a little HTML difficult c_schmitz

Code: Refactor the CodeIgniter branch

This year LimeSurvey got ported to the CodeIgniter framework. The code however is far from ideal. In order to improve code quality, there are plenty of refactorings required like splitting up long methods, extracting view-related and database-related code from controllers, adding new helper functions, ...

Task Steps:

  • Download the LimeSurvey CI-branch
  • Find a class or method with smelly (bad) code
  • Discuss the code smell with the mentor and make a proposal on how to improve the code
  • Work out the improvement and create a patch
  • Discuss your patch with the mentor
  • Check-in your changes into the limesurvey svn trunk
Time frame Skills Difficulty Mentor
2-4 days (depending on chosen smell) PHP, CodeIgniter (depending on chosen smell) Moderate mrp001

Code: Make unit tests for the CodeIgniter branch

This year LimeSurvey got ported to the CodeIgniter framework. Now we are using the framework, it is possible to write unit tests for the different classes (domain classes, controllers, helpers, libraries, ...) The goal of this task is to write a unit test for an untested class or method.

Task Steps:

  • Download the LimeSurvey CI-branch
  • Find an untested class which could use some testing
  • Discuss the badly tested class/method with the mentor and make a proposal on how to test the code
  • Write tests for class/method and create a patch
  • Discuss your patch with the mentor
  • Check-in your changes into the limesurvey svn trunk.
Time frame Skills Difficulty Mentor
2-4 days (depending on chosen class/method) PHP, CodeIgniter (depending on chosen class/method) Moderate mrp001

Code: Re-factoring HTML into views : CodeIgniter branch

This year LimeSurvey got ported to the CodeIgniter framework. As CodeIgniter is based on MVC architecture, there are still some controllers which have lots of HTML content in them. This task aim for separating this HTML(wherever possible) from controllers and move it to View files. This task will be on controller by controller basis.

Code: Re-factoring database calls into models (Browse Controller): CodeIgniter branch

This year LimeSurvey got ported to the CodeIgniter framework. As CodeIgniter is based on MVC architecture, all database calls should be in served via models and "Active Records" should be used everywhere. This task aim for searching through the

Browse Controller and moving all database calls to models. (i.e. making new functions in models to serve the purpose and call it in controller instead of using db_execute_assoc()!).

Task Steps:

  • Download LimeSurvey's CodeIgniter branch
  • Read the Documentation
  • Find outdated database calls in Browse Controller (db_execute_assoc()).
  • Identify which calls have equivalent methods in models.
  • Port these calls using the existing models.
  • Create or extend the models for the remaining calls.
  • Port the remaining calls using the new models.
  • Discuss the patch with your mentor and ask for feedback.
  • Check-in your changes into the LimeSurvey svn trunk.
  • Done!
Time frame Skills Difficulty Mentor
2-4 days PHP, CodeIgniter, MySQL Moderate dionet/magiclko

Code: Re-factoring database calls into models (Check Integrity Controller): CodeIgniter branch

This year LimeSurvey got ported to the CodeIgniter framework. As CodeIgniter is based on MVC architecture, all database calls should be in served via models and "Active Records" should be used everywhere. This task aim for searching through the

Check Integrity Controller and moving all database calls to models. (i.e. making new functions in models to serve the purpose and call it in controller instead of using db_execute_assoc()!).

Task Steps:

  • Download LimeSurvey's CodeIgniter branch
  • Read the Documentation
  • Find outdated database calls in Check Integrity Controller (db_execute_assoc()).
  • Identify which calls have equivalent methods in models.
  • Port these calls using the existing models.
  • Create or extend the models for the remaining calls.
  • Port the remaining calls using the new models.
  • Discuss the patch with your mentor and ask for feedback.
  • Check-in your changes into the LimeSurvey svn trunk.
  • Done!
Time frame Skills Difficulty Mentor
2-4 days PHP, CodeIgniter, MySQL Moderate dionet/magiclko

Code: Re-factoring database calls into models (Conditions Controller): CodeIgniter branch

This year LimeSurvey got ported to the CodeIgniter framework. As CodeIgniter is based on MVC architecture, all database calls should be in served via models and "Active Records" should be used everywhere. This task aim for searching through the

Conditions Controller and moving all database calls to models. (i.e. making new functions in models to serve the purpose and call it in controller instead of using db_execute_assoc()!).

Task Steps:

  • Download LimeSurvey's CodeIgniter branch
  • Read the Documentation
  • Find outdated database calls in Conditions Controller (db_execute_assoc()).
  • Identify which calls have equivalent methods in models.
  • Port these calls using the existing models.
  • Create or extend the models for the remaining calls.
  • Port the remaining calls using the new models.
  • Discuss the patch with your mentor and ask for feedback.
  • Check-in your changes into the LimeSurvey svn trunk.
  • Done!
Time frame Skills Difficulty Mentor
2-4 days PHP, CodeIgniter, MySQL Moderate dionet/magiclko

Code: Re-factoring database calls into models (Database Controller): CodeIgniter branch

This year LimeSurvey got ported to the CodeIgniter framework. As CodeIgniter is based on MVC architecture, all database calls should be in served via models and "Active Records" should be used everywhere. This task aim for searching through the

Database Controller and moving all database calls to models. (i.e. making new functions in models to serve the purpose and call it in controller instead of using db_execute_assoc()!).

Task Steps:

  • Download LimeSurvey's CodeIgniter branch
  • Read the Documentation
  • Find outdated database calls in Database Controller (db_execute_assoc()).
  • Identify which calls have equivalent methods in models.
  • Port these calls using the existing models.
  • Create or extend the models for the remaining calls.
  • Port the remaining calls using the new models.
  • Discuss the patch with your mentor and ask for feedback.
  • Check-in your changes into the LimeSurvey svn trunk.
  • Done!
Time frame Skills Difficulty Mentor
2-4 days PHP, CodeIgniter, MySQL Moderate dionet/magiclko

Code: Re-factoring database calls into models (Data Entry Controller): CodeIgniter branch

This year LimeSurvey got ported to the CodeIgniter framework. As CodeIgniter is based on MVC architecture, all database calls should be in served via models and "Active Records" should be used everywhere. This task aim for searching through the

Data Entry Controller and moving all database calls to models. (i.e. making new functions in models to serve the purpose and call it in controller instead of using db_execute_assoc()!).

Task Steps:

  • Download LimeSurvey's CodeIgniter branch
  • Read the Documentation
  • Find outdated database calls in Data Entry Controller (db_execute_assoc()).
  • Identify which calls have equivalent methods in models.
  • Port these calls using the existing models.
  • Create or extend the models for the remaining calls.
  • Port the remaining calls using the new models.
  • Discuss the patch with your mentor and ask for feedback.
  • Check-in your changes into the LimeSurvey svn trunk.
  • Done!
Time frame Skills Difficulty Mentor
2-4 days PHP, CodeIgniter, MySQL Moderate dionet/magiclko

Code: Re-factoring database calls into models (Email Templates Controller): CodeIgniter branch

This year LimeSurvey got ported to the CodeIgniter framework. As CodeIgniter is based on MVC architecture, all database calls should be in served via models and "Active Records" should be used everywhere. This task aim for searching through the

Email Templates Controller and moving all database calls to models. (i.e. making new functions in models to serve the purpose and call it in controller instead of using db_execute_assoc()!).

Task Steps:

  • Download LimeSurvey's CodeIgniter branch
  • Read the Documentation
  • Find outdated database calls in Email Templates Controller (db_execute_assoc()).
  • Identify which calls have equivalent methods in models.
  • Port these calls using the existing models.
  • Create or extend the models for the remaining calls.
  • Port the remaining calls using the new models.
  • Discuss the patch with your mentor and ask for feedback.
  • Check-in your changes into the LimeSurvey svn trunk.
  • Done!
Time frame Skills Difficulty Mentor
2-4 days PHP, CodeIgniter, MySQL Moderate dionet/magiclko

Code: Re-factoring database calls into models (Export Controller): CodeIgniter branch

This year LimeSurvey got ported to the CodeIgniter framework. As CodeIgniter is based on MVC architecture, all database calls should be in served via models and "Active Records" should be used everywhere. This task aim for searching through the

Export Controller and moving all database calls to models. (i.e. making new functions in models to serve the purpose and call it in controller instead of using db_execute_assoc()!).

Task Steps:

  • Download LimeSurvey's CodeIgniter branch
  • Read the Documentation
  • Find outdated database calls in Export Controller (db_execute_assoc()).
  • Identify which calls have equivalent methods in models.
  • Port these calls using the existing models.
  • Create or extend the models for the remaining calls.
  • Port the remaining calls using the new models.
  • Discuss the patch with your mentor and ask for feedback.
  • Check-in your changes into the LimeSurvey svn trunk.
  • Done!
Time frame Skills Difficulty Mentor
2-4 days PHP, CodeIgniter, MySQL Moderate dionet/magiclko

Code: Re-factoring database calls into models (Labels Controller): CodeIgniter branch

This year LimeSurvey got ported to the CodeIgniter framework. As CodeIgniter is based on MVC architecture, all database calls should be in served via models and "Active Records" should be used everywhere. This task aim for searching through the

Labels Controller and moving all database calls to models. (i.e. making new functions in models to serve the purpose and call it in controller instead of using db_execute_assoc()!).

Task Steps:

  • Download LimeSurvey's CodeIgniter branch
  • Read the Documentation
  • Find outdated database calls in Labels Controller (db_execute_assoc()).
  • Identify which calls have equivalent methods in models.
  • Port these calls using the existing models.
  • Create or extend the models for the remaining calls.
  • Port the remaining calls using the new models.
  • Discuss the patch with your mentor and ask for feedback.
  • Check-in your changes into the LimeSurvey svn trunk.
  • Done!
Time frame Skills Difficulty Mentor
2-4 days PHP, CodeIgniter, MySQL Moderate dionet/magiclko

Code: Re-factoring database calls into models (Printable Survey Controller): CodeIgniter branch

This year LimeSurvey got ported to the CodeIgniter framework. As CodeIgniter is based on MVC architecture, all database calls should be in served via models and "Active Records" should be used everywhere. This task aim for searching through the

Printable Survey Controller and moving all database calls to models. (i.e. making new functions in models to serve the purpose and call it in controller instead of using db_execute_assoc()!).

Task Steps:

  • Download LimeSurvey's CodeIgniter branch
  • Read the Documentation
  • Find outdated database calls in Printable Survey Controller (db_execute_assoc()).
  • Identify which calls have equivalent methods in models.
  • Port these calls using the existing models.
  • Create or extend the models for the remaining calls.
  • Port the remaining calls using the new models.
  • Discuss the patch with your mentor and ask for feedback.
  • Check-in your changes into the LimeSurvey svn trunk.
  • Done!
Time frame Skills Difficulty Mentor
2-4 days PHP, CodeIgniter, MySQL Moderate dionet/magiclko

Code: Re-factoring database calls into models (Question Controller): CodeIgniter branch

This year LimeSurvey got ported to the CodeIgniter framework. As CodeIgniter is based on MVC architecture, all database calls should be in served via models and "Active Records" should be used everywhere. This task aim for searching through the

Question Controller and moving all database calls to models. (i.e. making new functions in models to serve the purpose and call it in controller instead of using db_execute_assoc()!).

Task Steps:

  • Download LimeSurvey's CodeIgniter branch
  • Read the Documentation
  • Find outdated database calls in Question Controller (db_execute_assoc()).
  • Identify which calls have equivalent methods in models.
  • Port these calls using the existing models.
  • Create or extend the models for the remaining calls.
  • Port the remaining calls using the new models.
  • Discuss the patch with your mentor and ask for feedback.
  • Check-in your changes into the LimeSurvey svn trunk.
  • Done!
Time frame Skills Difficulty Mentor
2-4 days PHP, CodeIgniter, MySQL Moderate dionet/magiclko

Code: Re-factoring database calls into models (Question Group Controller): CodeIgniter branch

This year LimeSurvey got ported to the CodeIgniter framework. As CodeIgniter is based on MVC architecture, all database calls should be in served via models and "Active Records" should be used everywhere. This task aim for searching through the

Question Group Controller and moving all database calls to models. (i.e. making new functions in models to serve the purpose and call it in controller instead of using db_execute_assoc()!).

Task Steps:

  • Download LimeSurvey's CodeIgniter branch
  • Read the Documentation
  • Find outdated database calls in Question Group Controller (db_execute_assoc()).
  • Identify which calls have equivalent methods in models.
  • Port these calls using the existing models.
  • Create or extend the models for the remaining calls.
  • Port the remaining calls using the new models.
  • Discuss the patch with your mentor and ask for feedback.
  • Check-in your changes into the LimeSurvey svn trunk.
  • Done!
Time frame Skills Difficulty Mentor
2-4 days PHP, CodeIgniter, MySQL Moderate dionet/magiclko

Code: Re-factoring database calls into models (Quotas Controller): CodeIgniter branch

This year LimeSurvey got ported to the CodeIgniter framework. As CodeIgniter is based on MVC architecture, all database calls should be in served via models and "Active Records" should be used everywhere. This task aim for searching through the

Quotas Controller and moving all database calls to models. (i.e. making new functions in models to serve the purpose and call it in controller instead of using db_execute_assoc()!).

Task Steps:

  • Download LimeSurvey's CodeIgniter branch
  • Read the Documentation
  • Find outdated database calls in Quotas Controller (db_execute_assoc()).
  • Identify which calls have equivalent methods in models.
  • Port these calls using the existing models.
  • Create or extend the models for the remaining calls.
  • Port the remaining calls using the new models.
  • Discuss the patch with your mentor and ask for feedback.
  • Check-in your changes into the LimeSurvey svn trunk.
  • Done!
Time frame Skills Difficulty Mentor
2-4 days PHP, CodeIgniter, MySQL Moderate dionet/magiclko

Code: Re-factoring database calls into models (Saved Controller): CodeIgniter branch

This year LimeSurvey got ported to the CodeIgniter framework. As CodeIgniter is based on MVC architecture, all database calls should be in served via models and "Active Records" should be used everywhere. This task aim for searching through the

Saved Controller and moving all database calls to models. (i.e. making new functions in models to serve the purpose and call it in controller instead of using db_execute_assoc()!).

Task Steps:

  • Download LimeSurvey's CodeIgniter branch
  • Read the Documentation
  • Find outdated database calls in Saved Controller (db_execute_assoc()).
  • Identify which calls have equivalent methods in models.
  • Port these calls using the existing models.
  • Create or extend the models for the remaining calls.
  • Port the remaining calls using the new models.
  • Discuss the patch with your mentor and ask for feedback.
  • Check-in your changes into the LimeSurvey svn trunk.
  • Done!
Time frame Skills Difficulty Mentor
2-4 days PHP, CodeIgniter, MySQL Moderate dionet/magiclko

Code: Re-factoring database calls into models (Statistics Controller): CodeIgniter branch

This year LimeSurvey got ported to the CodeIgniter framework. As CodeIgniter is based on MVC architecture, all database calls should be in served via models and "Active Records" should be used everywhere. This task aim for searching through the

Statistics Controller and moving all database calls to models. (i.e. making new functions in models to serve the purpose and call it in controller instead of using db_execute_assoc()!).

Task Steps:

  • Download LimeSurvey's CodeIgniter branch
  • Read the Documentation
  • Find outdated database calls in Statistics Controller (db_execute_assoc()).
  • Identify which calls have equivalent methods in models.
  • Port these calls using the existing models.
  • Create or extend the models for the remaining calls.
  • Port the remaining calls using the new models.
  • Discuss the patch with your mentor and ask for feedback.
  • Check-in your changes into the LimeSurvey svn trunk.
  • Done!
Time frame Skills Difficulty Mentor
2-4 days PHP, CodeIgniter, MySQL Moderate dionet/magiclko

Code: Re-factoring database calls into models (Survey Controller): CodeIgniter branch

This year LimeSurvey got ported to the CodeIgniter framework. As CodeIgniter is based on MVC architecture, all database calls should be in served via models and "Active Records" should be used everywhere. This task aim for searching through the

Survey Controller and moving all database calls to models. (i.e. making new functions in models to serve the purpose and call it in controller instead of using db_execute_assoc()!).

Task Steps:

  • Download LimeSurvey's CodeIgniter branch
  • Read the Documentation
  • Find outdated database calls in Survey Controller (db_execute_assoc()).
  • Identify which calls have equivalent methods in models.
  • Port these calls using the existing models.
  • Create or extend the models for the remaining calls.
  • Port the remaining calls using the new models.
  • Discuss the patch with your mentor and ask for feedback.
  • Check-in your changes into the LimeSurvey svn trunk.
  • Done!
Time frame Skills Difficulty Mentor
2-4 days PHP, CodeIgniter, MySQL Moderate dionet/magiclko

Code: Re-factoring database calls into models (Survey Permission Controller): CodeIgniter branch

This year LimeSurvey got ported to the CodeIgniter framework. As CodeIgniter is based on MVC architecture, all database calls should be in served via models and "Active Records" should be used everywhere. This task aim for searching through the

Survey Permission Controller and moving all database calls to models. (i.e. making new functions in models to serve the purpose and call it in controller instead of using db_execute_assoc()!).

Task Steps:

  • Download LimeSurvey's CodeIgniter branch
  • Read the Documentation
  • Find outdated database calls in Survey Permission Controller (db_execute_assoc()).
  • Identify which calls have equivalent methods in models.
  • Port these calls using the existing models.
  • Create or extend the models for the remaining calls.
  • Port the remaining calls using the new models.
  • Discuss the patch with your mentor and ask for feedback.
  • Check-in your changes into the LimeSurvey svn trunk.
  • Done!
Time frame Skills Difficulty Mentor
2-4 days PHP, CodeIgniter, MySQL Moderate dionet/magiclko

Code: Re-factoring database calls into models (Templates Controller): CodeIgniter branch

This year LimeSurvey got ported to the CodeIgniter framework. As CodeIgniter is based on MVC architecture, all database calls should be in served via models and "Active Records" should be used everywhere. This task aim for searching through the

Templates Controller and moving all database calls to models. (i.e. making new functions in models to serve the purpose and call it in controller instead of using db_execute_assoc()!).

Task Steps:

  • Download LimeSurvey's CodeIgniter branch
  • Read the Documentation
  • Find outdated database calls in Templates Controller (db_execute_assoc()).
  • Identify which calls have equivalent methods in models.
  • Port these calls using the existing models.
  • Create or extend the models for the remaining calls.
  • Port the remaining calls using the new models.
  • Discuss the patch with your mentor and ask for feedback.
  • Check-in your changes into the LimeSurvey svn trunk.
  • Done!
Time frame Skills Difficulty Mentor
2-4 days PHP, CodeIgniter, MySQL Moderate dionet/magiclko

Code: Re-factoring database calls into models (Tokens Controller): CodeIgniter branch

This year LimeSurvey got ported to the CodeIgniter framework. As CodeIgniter is based on MVC architecture, all database calls should be in served via models and "Active Records" should be used everywhere. This task aim for searching through the

Tokens Controller and moving all database calls to models. (i.e. making new functions in models to serve the purpose and call it in controller instead of using db_execute_assoc()!).

Task Steps:

  • Download LimeSurvey's CodeIgniter branch
  • Read the Documentation
  • Find outdated database calls in Tokens Controller (db_execute_assoc()).
  • Identify which calls have equivalent methods in models.
  • Port these calls using the existing models.
  • Create or extend the models for the remaining calls.
  • Port the remaining calls using the new models.
  • Discuss the patch with your mentor and ask for feedback.
  • Check-in your changes into the LimeSurvey svn trunk.
  • Done!
Time frame Skills Difficulty Mentor
2-4 days PHP, CodeIgniter, MySQL Moderate dionet/magiclko

Code: Re-factoring database calls into models (Translate Controller): CodeIgniter branch

This year LimeSurvey got ported to the CodeIgniter framework. As CodeIgniter is based on MVC architecture, all database calls should be in served via models and "Active Records" should be used everywhere. This task aim for searching through the

Translate Controller and moving all database calls to models. (i.e. making new functions in models to serve the purpose and call it in controller instead of using db_execute_assoc()!).

Task Steps:

  • Download LimeSurvey's CodeIgniter branch
  • Read the Documentation
  • Find outdated database calls in Translate Controller (db_execute_assoc()).
  • Identify which calls have equivalent methods in models.
  • Port these calls using the existing models.
  • Create or extend the models for the remaining calls.
  • Port the remaining calls using the new models.
  • Discuss the patch with your mentor and ask for feedback.
  • Check-in your changes into the LimeSurvey svn trunk.
  • Done!
Time frame Skills Difficulty Mentor
2-4 days PHP, CodeIgniter, MySQL Moderate dionet/magiclko

Code: Re-factoring database calls into models (User Controller): CodeIgniter branch

This year LimeSurvey got ported to the CodeIgniter framework. As CodeIgniter is based on MVC architecture, all database calls should be in served via models and "Active Records" should be used everywhere. This task aim for searching through the

User Controller and moving all database calls to models. (i.e. making new functions in models to serve the purpose and call it in controller instead of using db_execute_assoc()!).

Task Steps:

  • Download LimeSurvey's CodeIgniter branch
  • Read the Documentation
  • Find outdated database calls in User Controller (db_execute_assoc()).
  • Identify which calls have equivalent methods in models.
  • Port these calls using the existing models.
  • Create or extend the models for the remaining calls.
  • Port the remaining calls using the new models.
  • Discuss the patch with your mentor and ask for feedback.
  • Check-in your changes into the LimeSurvey svn trunk.
  • Done!
Time frame Skills Difficulty Mentor
2-4 days PHP, CodeIgniter, MySQL Moderate dionet/magiclko

Code: Re-factoring database calls into models (User Groups Controller): CodeIgniter branch

This year LimeSurvey got ported to the CodeIgniter framework. As CodeIgniter is based on MVC architecture, all database calls should be in served via models and "Active Records" should be used everywhere. This task aim for searching through the

User Groups Controller and moving all database calls to models. (i.e. making new functions in models to serve the purpose and call it in controller instead of using db_execute_assoc()!).

Task Steps:

  • Download LimeSurvey's CodeIgniter branch
  • Read the Documentation
  • Find outdated database calls in User Groups Controller (db_execute_assoc()).
  • Identify which calls have equivalent methods in models.
  • Port these calls using the existing models.
  • Create or extend the models for the remaining calls.
  • Port the remaining calls using the new models.
  • Discuss the patch with your mentor and ask for feedback.
  • Check-in your changes into the LimeSurvey svn trunk.
  • Done!
Time frame Skills Difficulty Mentor
2-4 days PHP, CodeIgniter, MySQL Moderate dionet/magiclko

Documentation

Documentation: Rewrite template editor wiki page

Limesurvey has a template editor which allows users to create and modify templates used when displaying surveys. These templates allow survey administrators to adjust the look and feel of their surveys and brand them as well. Currently the documentation for the template editor is out of date needs to be brought up to date with the latest version of limesurvey. Cropped screenshots should also be inserted to visually reference the documentation and the software.

Task Steps:

  • Read the existing outdated documentation.
  • Explore limesurvey's template editor and compare it to the existing documentation.
  • Design a new structure for the documentation which is easy to follow and well structured.
  • Discuss your planned documentation structure with your mentor.
  • Rewrite the template editor documentation.
  • Insert cropped screenshots where needed.
  • Submit your documentation for review by your mentor.
Time frame Skills Difficulty Mentor
3 Days Wiki editing,LimeSurvey Moderate Mazi
}

Documentation: Rewrite the survey settings page

Task Steps:

  • Read the existing outdated documentation.
  • Explore limesurvey's template editor and compare it to the existing documentation.
  • Design a new structure for the documentation which is easy to follow and well structured.
  • Discuss your planned documentation structure with your mentor.
  • Rewrite the documentation.
  • Insert cropped screenshots where needed.
  • Submit your documentation for review by your mentor.
Time frame Skills Difficulty Mentor
3 Days Wiki editing,LimeSurvey Moderate Mazi
}

Documentation: Create a tutorial about how to replace the logo at a shipped template

Idea posted by: Mazi

Limesurvey has a template editor which allows users to create and modify templates used when displaying surveys. These templates allow survey administrators to adjust the look and feel of their surveys and brand them as well. Problem is that some HTML and CSS knowledge is needed to fully style a template and this might be a problem to the common user. Usually replacing the logo at one of the shipped templates is all they need so the goal is to write a step by step tutorial with some screen shots about how to replace the logo.

Task Steps:

  • Read the existing documentation about templates and create a new entry at the Tipps & Tricks sub-section.
  • Explore limesurvey's template editor and compare it to the existing documentation.
  • Check the template editor at our demo system and note how the logos are embedded at different templates
  • Write a step by step tutorial including screen shots on how to replace the images and/or change the logo file name at the templates
  • Submit your documentation for review by your mentor.
  • Discuss your tutorial with your mentor and if necessary overwork some parts
  • Add everything at our wiki.
Time frame Skills Difficulty Mentor
2 Days Wiki editing, LimeSurvey, HTML Easy Mazi
}

Documentation: Rewrite statistics wiki page

Limesurvey offers public statistics, which are shown to the user at the end of the survey, as well as more detailed statistics at the admin backend. The current statistics documentation is outdated and not very well structured. Lots of users don't know that they can filter data and limit statistics to certain questions only.

To make the statistics more clear to the user, the documentation should be updated, extended and better structured. A video showing how to set filters and demonstrating other statistic features should be added, too.

Task Steps:

  • Import the sample survey at /docs/demosurveys which contains all question types.
  • Enable public statistics for this survey and all questions that are supported by this feature.
  • Fill out the survey ~20-30 times (ask your friends for some help) to create some data to be used by the statistics.
  • Explore the public and admin backend statistics and write down which features are available.
  • Ask your mentor if all features are on your list.
  • Think about a new structure for the wiki page
  • Document each section and describe each feature in detail. Add some nice screenshots where appropriate.
  • Create a short video showing how to set filters and use other important features.
Time frame Skills Difficulty Mentor
4 Days Wiki editing, LimeSurvey, video capture Moderate Mazi
}

Documentation: Rewrite installation procedure.

LimeSurvey 2.0 has a new automatic installer which makes installation process a cake-walk. Hence, installation procedure needs to be updated explaining each and every step of the installation procedure and possible errors/warnings that a user might see during installation of LimeSurvey and there solutions.

Task Steps:

  • Checkout LimeSurvey_CI branch.
  • Read existing installation procedure.
  • Run the automatic installer and play with it.
  • Compare the missing things and update the wiki.
  • Write down any error/warning you see during installation or while playing around with it.
  • Make a troubleshooting section on installation wikipage which should contain possible warnings a user might see and there solution(s).
  • Create a short video tutorial on how to install LimeSurvey.
Time frame Skills Difficulty Mentor
4 days Wiki editing, creating screen shots, writing documentation, creating videos difficult magiclko

Outreach & Marketing

Outreach: Blog about LimeSurvey

Write an independant article about LimeSurvey on your blog. Explain what are advantages, what are disadavantages of the software - show how to create a first survey and also write about problems are on the way getting there. Motivate people to participate to help use make LimeSurvey better. The article should be in-depth and correct. It should help other to get hooked up without false promises.

Task Steps:

  • Use LimeSurvey to setup your own survey (you can use our demo version for that)
  • Blog about your experience after discussing your article with us.
Time frame Skills Difficulty Mentor
2 Days Writing skills Easy c_schmitz

Marketing: Create an article on how to use LimeSurvey and OrangeHRM to conduct an employee engagement survey

OrangeHRM is a powerful and fully featured Human Resource Management Tool. Help empower open source by showing how two separate open source products can be used together to bring added value to their users.

The article should include:

  1. An introduction.
  2. Setting up an employee engagement survey with LimeSurvey.
  3. Patching OrangeHRM (CustomExport.php and CustomizableCSVExport.php models) to allow the work_email field to be exported.
  4. Creating a custom export in OrangeHRM with the fields: firstName, lastName, workEmail.
  5. Using the OrangeHRM custom export to get a CSV list for LimeSurvey tokens import.
  6. Importing the tokens into the employee engagement survey.
  7. Sending out invitations and reminders.
  8. Viewing statistics and exporting results.
  9. Provide links to patched OrangeHRM files and example survey.
  10. Article conclusion.

Task Steps:

  • Install OrangeHRM.
  • Create the employee engagement survey.
  • Discuss the employee engagement metrics measured with your mentor.
  • Modify OrangeHRM custom export and generate patches (mentor can provide changes).
  • Test the OrangeHRM custom export and LimeSurvey tokens import.
  • Write the article.
  • Submit the article to your mentor for review.
Time frame Skills Difficulty Mentor
4 Days Survey Creation, Technical Writing, Source Code Patching Moderate Machaven

Marketing: Create an article on how to use LimeSurvey and OrangeHRM to conduct an employee satisfaction survey

OrangeHRM is a powerful and fully featured Human Resource Management Tool. Help empower open source by showing how two separate open source products can be used together to bring added value to their users.

The article should include:

  1. An Introduction.
  2. Setting up an employee satisfaction survey with LimeSurvey.
  3. Patching OrangeHRM (CustomExport.php and CustomizableCSVExport.php models) to allow the work_email field to be exported.
  4. Creating a custom export in OrangeHRM with the fields: firstName, lastName, workEmail.
  5. Using the OrangeHRM custom export to get a CSV list for LimeSurvey tokens import.
  6. Importing the tokens into the employee satisfaction survey.
  7. Sending out invitations and reminders.
  8. Viewing statistics and exporting results.
  9. Provide links to patched OrangeHRM files and example survey.
  10. Article conclusion.

Task Steps:

  • Install OrangeHRM.
  • Create the employee satisfaction survey.
  • iscuss the employee satisfaction metrics measured with your mentor.
  • Modify OrangeHRM custom export and generate patches (mentor can provide changes).
  • Test the OrangeHRM custom export and LimeSurvey tokens import.
  • Write the article.
  • Submit the article to your mentor for review.
Time frame Skills Difficulty Mentor
4 Days Survey Creation, Technical Writing, Source Code Patching Moderate Machaven

Marketing: Blog about LimeSurvey (2)

The article should include:

- Research how a general basic customer satisfaction survey should look like

- Create it in LimeSurvey

- Write about your experience in setting this up.

Task Steps:

  • Create the customer satisfaction survey.
  • Write the article.
  • Submit the article to your mentor for review.
Time frame Skills Difficulty Mentor
2 Days Survey Creation, Technical Writing Moderate Machaven

Marketing: Create an article on how to use LimeSurvey to create and distribute a customer satisfaction survey

Show current and potential LimeSurvey users how they can use LimeSurvey to do customer satisfaction surveys.

The article should include:

  1. An Introduction.
  2. Setting up an customer satisfaction survey with LimeSurvey.
  3. Importing the tokens into the customer satisfaction survey.
  4. Sending out invitations and reminders.
  5. Viewing statistics and exporting results.
  6. Provide a link to the example customer satisfaction survey.
  7. Article conclusion.

Task Steps:

  • Create the customer satisfaction survey and test it.
  • Discuss the customer satisfaction metrics measured with your mentor.
  • Write the article.
  • Submit the article to your mentor for review.
Time frame Skills Difficulty Mentor
4 Days Survey Creation, Technical Writing, Source Code Patching Moderate Machaven

Quality Assurance

Quality Assurance: Analyse user feedback and port suggestions to our idea tracker

From time to time Limesurvey conducts user feedback surveys to find out how our users use the software and which features they are missing. We received quite a lot feedback during the last months and a lot of valuable information can be found at the textual feedback. It's a mixture of praise, suggestions for new features and other useful comments. This needs to be summed up. Also useful suggestions for new features should be ported to our idea tracker so we have this on our list for future development.

Task Steps:

  • We will give you access to our survey system so you can export the survey data into MS Word, Excel or what else you like.
  • Go through all the textual user feedback and create a list of common complaints, suggested features and the like.
  • Once you are done, order the lists by frequency and present it to your mentor.
  • Your mentor will go through your list and mark those ideas worth porting to the idea tracker.
  • Add ideas to the idea tracker
Time frame Skills Difficulty Mentor
3 Days Data analysis, Report Writing, Using idea tracker Moderate Mazi
}

Quality Assurance: Find and report 3 bugs or GUI design issues at the new Central Participant Database feature of the upcoming Limesurvey 2.0alpha version (1/2)

Idea posted by: Mazi

During this years Google Summer of Code a cool new feature called "Central Participant Database" was coded. It will be available at the upcoming Limesurvey 2.0 alpha release. Though this feature was carefully tested there might still be some bugs in there and we want you to have a detailed look at this feature to check if you can find any weird behavior, misleading user interface or bugs.

Task Steps:

  • Have a look at our testing instructions and the CPDB documentation.
  • Test this feature by checking each single function and note any weird behavior, error messages or anything else you think is worth being improved.
  • Your mentor will go through your list and will discuss the details with you.
  • Add all issues to the bugtracker.
Time frame Skills Difficulty Mentor
2 Days Using bugtracker, Limesurvey Easy Aniessh

Quality Assurance: Find and report 3 bugs at the new Expression Manager feature of the upcoming Limesurvey 2.0alpha version (1/2)

Idea posted by: Mazi

At the upcoming Limesurvey 2.0 alpha release conditions will be replaced by a powerful Expression Manager (EM). This feature is capable to evaluate all kinds of expressions and it will be used for other feature besides conditions as well.

Since this is a new feature with a very complex logic we have to test it carefully. Therefore it's your task to create tests and see if everything works as expected.

Task Steps:

  • Have a look at our testing system details and the EM documentation.
  • Test this feature by checking each single function and note any weird behavior, error messages or anything else you think is worth being improved.
  • Your mentor will go through your list and will discuss the details with you.
  • Add all issues to the bugtracker.
Time frame Skills Difficulty Mentor
3 Days Using bugtracker, Limesurvey Moderate TMS White

Quality Assurance: Find and report 3 bugs at the overworked Admin Backend of the upcoming Limesurvey 2.0alpha version (1/2)

Idea posted by: Mazi

During this years Google Summer of Code we ported the whole Limesurvey code to an MVC framework called codeigniter. This implied a whole bunch of code changes and re-design. Though this feature was carefully tested, there might still be some bugs in there and we want you to have a detailed look at this feature to check if you can find any weird behavior, misleading user interface or bugs.

Task Steps:

  • Have a look at the Limesurvey admin feature. Play around with the available features and check if all works as described at the manual. If not, note all details about the problem.
  • Find out which new features were added at Limesurvey 2.0 and check the according sections at the admin panel carefully. Note any weird behavior.
  • Your mentor will go through your list and will discuss the details with you.
  • Add all issues to the bugtracker.
Time frame Skills Difficulty Mentor
2 Days Limesurvey, Using bugracker Moderate dionet

Quality Assurance: Find and report 3 bugs at the overworked Survey Engine of the upcoming Limesurvey 2.0alpha version (1/2)

Idea posted by: Mazi

During this years Google Summer of Code we ported the whole Limesurvey code to an MVC framework called codeigniter. This implied a whole bunch of code changes and re-design. Though this feature was carefully tested there might still be some bugs in there and we want you to have a detailed look at this feature to check if you can find any weird behavior, misleading user interface or bugs.

Task Steps:

  • Import a test survey with all question types and most of the additional question attributes (we can provide some test surevys).
  • Check if data for each question type is stored correctly, if conditions work as expected and all other available features listed at our documentation.
  • Note any weird behavior, error messages and the like.
  • Your mentor will go through your list and will discuss the details with you.
  • Add all issues to the bugtracker.
Time frame Skills Difficulty Mentor
3 Days Limesurvey, Using bugracker Moderate dionet

Quality Assurance: Find and report 3 bugs or GUI design issues at the new Central Participant Database feature of the upcoming Limesurvey 2.0alpha version (2/2)

Idea posted by: Mazi

During this years Google Summer of Code a cool new feature called "Central Participant Database" was coded. It will be available at the upcoming Limesurvey 2.0 alpha release. Though this feature was carefully tested there might still be some bugs in there and we want you to have a detailed look at this feature to check if you can find any weird behavior, misleading user interface or bugs.

Task Steps:

  • Have a look at our testing instructions and the CPDB documentation.
  • Test this feature by checking each single function and note any weird behavior, error messages or anything else you think is worth being improved.
  • Your mentor will go through your list and will discuss the details with you.
  • Add all issues to the bugtracker.
Time frame Skills Difficulty Mentor
2 Days Using bugtracker, Limesurvey Easy Aniessh

Quality Assurance: Find and report 3 bugs at the new Expression Manager feature of the upcoming Limesurvey 2.0alpha version (2/2)

Idea posted by: Mazi

At the upcoming Limesurvey 2.0 alpha release conditions will be replaced by a powerful Expression Manager (EM). This feature is capable to evaluate all kinds of expressions and it will be used for other feature besides conditions as well.

Since this is a new feature with a very complex logic we have to test it carefully. Therefore it's your task to create tests and see if everything works as expected.

Task Steps:

  • Have a look at our testing system details and the EM documentation.
  • Test this feature by checking each single function and note any weird behavior, error messages or anything else you think is worth being improved.
  • Your mentor will go through your list and will discuss the details with you.
  • Add all issues to the bugtracker.
Time frame Skills Difficulty Mentor
3 Days Using bugtracker, Limesurvey Moderate TMS White

Quality Assurance: Find and report 3 bugs at the overworked Admin Backend of the upcoming Limesurvey 2.0alpha version (2/2)

Idea posted by: Mazi

During this years Google Summer of Code we ported the whole Limesurvey code to an MVC framework called codeigniter. This implied a whole bunch of code changes and re-design. Though this feature was carefully tested, there might still be some bugs in there and we want you to have a detailed look at this feature to check if you can find any weird behavior, misleading user interface or bugs.

Task Steps:

  • Have a look at the Limesurvey admin feature. Play around with the available features and check if all works as described at the manual. If not, note all details about the problem.
  • Find out which new features were added at Limesurvey 2.0 and check the according sections at the admin panel carefully. Note any weird behavior.
  • Your mentor will go through your list and will discuss the details with you.
  • Add all issues to the bugtracker.
Time frame Skills Difficulty Mentor
2 Days Limesurvey, Using bugracker Moderate magiclko

Quality Assurance: Find and report 3 bugs at the overworked Survey Engine of the upcoming Limesurvey 2.0alpha version (2/2)

Idea posted by: Mazi

During this years Google Summer of Code we ported the whole Limesurvey code to an MVC framework called codeigniter. This implied a whole bunch of code changes and re-design. Though this feature was carefully tested there might still be some bugs in there and we want you to have a detailed look at this feature to check if you can find any weird behavior, misleading user interface or bugs.

Task Steps:

  • Import a test survey with all question types and most of the additional question attributes (we can provide some test surevys).
  • Check if data for each question type is stored correctly, if conditions work as expected and all other available features listed at our documentation.
  • Note any weird behavior, error messages and the like.
  • Your mentor will go through your list and will discuss the details with you.
  • Add all issues to the bugtracker.
Time frame Skills Difficulty Mentor
3 Days Limesurvey, Using bugracker Moderate magiclko

Training

Training: Create a video tutorial for creating a custom survey template

Limesurvey has a template editor which allows users to create and modify templates used when displaying surveys. These templates allow survey administrators to adjust the look and feel of their surveys and brand them as well. Create a video tutorial showing users how to create a copy of the default template and modify it.

The Video should include:

  1. An overview of the template editor and a description of what each area of the template editor is used for.
  2. An explanation of the different screens.
  3. Inserting a company logo in to the template.
  4. Basic adjustments in the css to modify the appearance of questions.
  5. Customizing the survey description page.
  6. Customizing the end page.

It will be best to record each video section separately and then join the video at the end. Your will need to create a script for your video which includes all the steps you will be showing in your video and the dialog associated with each step.

Task Steps:

  • Create a script with dialog to explain what will be done in the video from start to end.
  • Submit your video script to your mentor for review.
  • Record/Produce each section for your video tutorial.
  • Submit each video to your mentor for review.
  • Merge your video sections into an xvid avi with mp3 audio.
  • Submit your video to your mentor.
Time frame Skills Difficulty Mentor
4 Days Screen Recording, Video and Sound Editing Moderate Machaven

Training: Create a video tutorial for creating a new survey from scratch

There are several videos around explaining how to create a survey with LimeSurvey. Unfortunately most of the are pretty outdated and old. We would like to have a kick-all video tutorial explaining how to create a survey that immediately will hook up people.

The Video should include:

  1. Creation of a survey, with an easy explanation of the concept behind it (Survey->Question groups->Questions)
  2. Creating the survey, explaining the most important settings
  3. Creating question groups and questions plus answers
  4. Showing off a number of question types
  5. Showing off how a simple condition is created.
  6. Activating the survey

It will be best to record each video section separately and then join the video at the end. Your will need to create a script for your video which includes all the steps you will be showing in your video and the dialog associated with each step.

Task Steps:

  • Create a script with dialog to explain what will be done in the video from start to end.
  • Submit your video script to your mentor for review.
  • Record/Produce each section for your video tutorial.
  • Submit each video to your mentor for review.
  • Merge your video sections into an xvid avi with mp3 audio.
  • Submit your video to your mentor.
Time frame Skills Difficulty Mentor
4 Days Screen Recording, Video and Sound Editing Moderate Machaven

Training: Create demo surveys for the most important features

Limesurvey offers a wide range of features. Some of them are a little complex to set up in a survey. To help new users getting familiar with these feature, we intend to create several sample surveys which users can easily download from our manual and import for testing.

Each survey should contain 8-10 questions, depending on the feature that is demonstrated.

List of sample surveys:

  1. Use of array filter and array exclusive option
  2. How to set different types of conditions
  3. Create a quiz using assessments and SGQA identifier to show the users answers at the end of the survey.
  4. Screen users by making use of quotas
  5. Demonstrate the use of ~10 different question attributes.

Task Steps:

  • Get familiar with Limesurvey by using our demo or installing Limesurvey yourself.
  • Read the documentation linked above.
  • Create a first survey and ask your mentor for feedback.
  • Create the rest of the surveys.
  • Create a topic in our forum and ask for some user feedback.
  • Add feedback where useful.
  • Merge all surveys in a big demo survey using group/question import/export while keeping the smaller survey versions.
Time frame Skills Difficulty Mentor
4 Days Creating surveys using Limesurvey, communicate with coomunity easy Mazi
}

Training: Create a "How to design a good survey" tutorial

Idea posted by: Mazi

Our manual describes all available features in detail but we don't have instructions on how to create a good survey yet, e.g. users might have huge matrix question which are all mandatory at their survey, that's a no go. Your task is to find out about some basics of survey design by asking google and asking our experienced users at the forum and then collect that data and structure it so we can have a list of issues one should take care of when designing a survey.

Task Steps:

  • Create a new forum topic explaining your task and asking for user feedback. Ask your mentor to also link this post at www.limesurvey.org and to twitter about it.
  • Ask Google about the important issues when creating an online survey
  • Sum up all information and create a structured document which deals with different parts to take care of.
  • Discuss the work with your mentor
  • Port all the details to a new wiki page
  • Add the wiki page at a new tipps & tricks section of our wiki
Time frame Skills Difficulty Mentor
3 days Using search engines, writing documentation easy holch

Training: Create a video tutorial on how to use the new expression engine

Idea posted by: Mazi

Task Steps:

  • Create a new forum topic explaining your task and asking for user feedback. Ask your mentor to also link this post at www.limesurvey.org and to twitter about it.
  • Ask Google about the important issues when creating an online survey
  • Sum up all information and create a structured document which deals with different parts to take care of.
  • Discuss the work with your mentor
  • Port all the details to a new wiki page
  • Add the wiki page at a new tipps & tricks section of our wiki
Time frame Skills Difficulty Mentor
3 days Using search engines, writing documentation hard twmswhite

Research

Research: Usability testing

Usability testing and user input is a great source of ideas for improving your application. The goal of this assignment is to identify usability problems in LimeSurvey and discussing possible solutions for them.

The general steps for this assignment would be:

  1. Work with LimeSurvey like a regular user would
    1. Set up a new survey
    2. Answer the survey at least once
    3. Make changes to the survey
    4. Use and export the results
    5. … (be creative!)
  2. Identify usability problems in LimeSurvey
    1. What was good/lacking in LimeSurvey?
    2. What was easy/hard to do?
  3. Discuss possible solutions to these usability problems with your mentor
  4. Write a social media post (blog, facebook, twitter) about your work at LimeSurvey, discuss the problems you have found and the ideas your propose to solve them.
    1. Tell others about what you have done during this assignment and how awesome LimeSurvey and their dev team is.

For this assignment it is possible to make use of LimeService . LimeService provides free LimeSurvey installs for small users and requires no installation (even though installation could be a usability test in itself! How easy is it to install LimeSurvey). We advice to google for common usability problems before starting this assignment as a source of inspiration.

Time frame Skills Difficulty Mentor
3 Days None, skills in web development are a plus Easy ttielu

Research: Use Google Analytics to create a report about the common Limesurvey user

Idea posted by: Mazi

Limesurvey uses Google Analytics to gather some basic background information about our users like where they come from, which browser they are using, which pages are visited most and the like. Because Google Analyitcs offers a lot of information we need a summary of the most important details. That's where you can give a helping hand.

Task Steps:

  • We will grant you access to our Google Analytics account so you can play around with the data a little
  • Have a look at the available information and create a list of available data. Mark which data you consider important.
  • Discuss the list and your proposed priorities with your mentor
  • After we have agreed on the information the final report should include, gather the required information and create a report containing a 1 page summary plus 3-4 pages of additional information and charts.
  • Discuss the work with your mentor
  • Create a news article for the www.limesurvey.org website summing up your findings.
Time frame Skills Difficulty Mentor
4 days writing reports (MS WOrd/Excel) moderate Mazi

User interface

User interface: Icon creation

As easy as it is sounds icon creation is a demanding task. Icons have to fit to the existing theme and their meaning must be untuitive without being hard on the eye. We want you to create three icons for for LimeSurvey that represent the following entities:

  • Survey
  • Question group
  • Question

The icons must fit to the existing theme and shoudl be create using Inkscape as SVG file.

  1. Have a look at our existing icons in the LimeSurvey interface
  2. Have a look at our existing icons in SVG format in our Subversion repository at https://limesurvey.svn.sourceforge.net/svnroot/limesurvey/source/original art
  3. Create a couple drafts with a tool of your choice
  4. Discuss the drafts with your mentor
  5. Create the final icons
Time frame Skills Difficulty Mentor
3 Days Design, Inkscape Moderate c_schmitz

User interface: Token section workflow improvements

Idea added by: Mazi

There are some sections at the Limesurvey admin backend like the token part at which workflow improvements can be added. Often a summary page is shown even if you just made a minor change. Instead we should speed up the workflow and show just a pop-up, just to name a few issues.

This is a list of issues referring to the token screen:

  • Problem: When switching to the token admin screen you don't see a list of available tokens. You have to click on the "Display Tokens" icon first.
  • Solution: List all tokens below the "Token Summary" and above the "Token database options".
  • Problem: After having added a token entry you only see a short "New token was added" message with options to display tokens or add another token.
  • Solution: It would be better to show the confirmation as a pop-up, like it is done after having added answer options or having changed global settings, and directly move on to the "add token entry" page because usually users want to add several token entries one by one.
  • Alternative solution: When adding a token have two radio options above the save button: a) add another token after save (should be default) OR b) display tokens after save.

TO BE CONTINUED

  • Problem: ...
  • Solution: ...

Steps:

  1. Check the described issues using the online system we provide
  2. Search for the according code piece, for this task /admin/tokens.php is a good start
  3. Overwork the code to improve the workflow
  4. Create a patch file and send it to your mentor for review.
  5. Once the mentor accepts your patch he will add it to the current development branch
Time frame Skills Difficulty Mentor
X Days PHP, maybe a little HTML and Javascript Easy c_schmitz

User interface: Survey designer workflow improvements

Idea added by: Mazi

There are some sections at the Limesurvey admin backend like the survey designer at which workflow improvements can be added. Often a summary page is shown even if you just made a minor change. Instead we should speed up the workflow and show just a pop-up, just to name a few issues.

This is a list of issues referring to the survey designer:

  • Problem: When adding new answer option and clicking into the answer text field, you have to manually delete the "Some example subquestion" text. For following answer options the text is deleted automatically when clicking into the input field.
  • Solution: Add some Javascript to automatically delete the text once a user clicks into the input field.
  • Problem: When creating a new survey there are options to import or copy a survey. BUT there is a "save" button after the "import/copy survey" button as well. This is irritating because users might click the save button instead and then an error message will show up because no survey title etc. was entered at the previous tabs
  • Solution: Hide "save" button at import and copy tab.

TO BE CONTINUED

  • Problem: ...
  • Solution: ...

Steps:

  1. Check the described issues using the online system we provide
  2. Search for the according code piece
  3. Overwork the code to improve the workflow
  4. Create a patch file and send it to your mentor for review.
  5. Once the mentor accepts your patch he will add it to the current development branch
Time frame Skills Difficulty Mentor
X Days PHP, maybe a little HTML and Javascript Easy c_schmitz

User interface: User and rights management workflow improvements

Idea added by: Mazi

There are some sections at the Limesurvey admin backend like when adding users and settings rights at which workflow improvements can be added. Often a summary page is shown even if you just made a minor change. Instead we should speed up the workflow and show just a pop-up, just to name a few issues.

This is a list of issues referring to the user management and rights setting screens.

  • Problem: After having added a new user there is a summary screen showing the username and email address. You can either click "continue" to get to the user list summary or click the "set user permissions" button which leads you to the next logical step of setting the permissions for this user (a user without any permissions set doesn't make much sense).
  • Solution: We should show the summary as a pop uf and automatically redirect the admin to the screen where permissions for the newly added user can be set.
  • Problem: After having set permissions as the next workflow step described below, the user receives a short status update and can only click "continue" which leads him to the user overview.
  • Solution: We should automatically redirect the admin to the user overview and show the status update as a pop-up. We could also think about redirecting him to the screen where template permissions can be set which would be the next logical step.

TO BE CONTINUED

  • Problem: ...
  • Solution: ...

Steps:

  1. Check the described issues using the online system we provide
  2. Search for the according code piece
  3. Overwork the code to improve the workflow
  4. Create a patch file and send it to your mentor for review.
  5. Once the mentor accepts your patch he will add it to the current development branch
Time frame Skills Difficulty Mentor
X Days PHP, maybe a little HTML and Javascript Easy c_schmitz

We want your ideas!

What floats your boat? Do you have another idea that gets you excited? Discuss your ideas in our forums, mailing lists or at #limesurvey on irc.freenode.net.

Getting Started

How to Get Started With LimeSurvey:

- setting up the development environment, coding standards, and all the other important stuff that you need to know before the real fun begins!