Note:

If you want to create a new page for developers, you should create it on the Moodle Developer Resource site.

Projects for new developers: Difference between revisions

From MoodleDocs
(remove plagiarism api - (implemented in GSOC2012))
Line 19: Line 19:
For further details see:
For further details see:
* Tracker issue MDL-7068
* Tracker issue MDL-7068
== Plagiarism API improvements ==
The [[Plagiarism_API]] currently only hooks into the Moodle Assignment upload types - the student will extend this to work with other Moodle modules such as:
* Offline Assignment
* Workshop Module
* Quiz module (essay questions)
There are 2 parts to this project, first implementing the relevant hooks for the plagiarism api and second improving the current Plagiairism plugins to support the new hooks. These hooks will initially be added to the to the open-source Plagiarism plugin [http://moodle.org/plugins/view.php?plugin=plagiarism_crot Crot] but the student may be required to implement them in the [http://moodle.org/plugins/view.php?plugin=plagiarism_turnitin turnitin] and [http://moodle.org/plugins/view.php?plugin=plagiarism_urkund urkund] plugins.
:'''Skills required''': PHP
:'''Difficulty level''': Medium
:'''Mentors''': [http://moodle.org/user/view.php?id=21591&course=5 Dan Marsden]
For further details see:
*[[How_to_add_support_for_a_Plagiarism_Plugin_to_my_activity_module]]
* Tracker Issue MDL-32225


==Self-assessment activity using the question bank==
==Self-assessment activity using the question bank==

Revision as of 07:57, 15 October 2012

GSoC2012 logo.png

Latest news: Moodle will be taking part in the Google Summer of Code for our sixth year in 2012!


If you're thinking of applying to work with Moodle for GSOC 2012, please check the information on Applying to work with Moodle for GSOC and join our gsoc2012@conference.moodle.org jabber chat!


This evolving page lists possible Moodle projects for new developers derived from community suggestions.

If you have any ideas for new features in Moodle which might be suitable as projects for new developers, please see New feature ideas.

SCORM 2004

The student/s will use the SCORM Test harness (developed in 2011 GSOC) to improve the SCORM 2004 support in Moodle - If multiple suitable applicants apply to this project and enough slots are available more than 1 student may be accepted to work on different parts of SCORM 2004 at the same time.

Skills required: Javascript, PHP
Difficulty level: Medium
Mentors: Dan Marsden

For further details see:

Self-assessment activity using the question bank

The basic idea is that the teacher sets up a bank of questions organised into categories. Then the student can then choose what questions they want to practice when. This is about student-centred learning based on the capabilities of the Moodle question bank.

The idea is explained in more detail in [http://tjhunt.blogspot.com/2011/09/what-i-want-to-build-next.html this blog post. (Note that I am not going to get time to do this myself!)

If you are interested in working on this, there is still a lot of work to do to decide a scope for the project. I think it is important to find a minimal 'version 1.0' set of functionality that can be build as a short project that leads to a completely working activity. Then we can add more features to that already-working core.

Skills required: PHP
Difficulty level: Medium
Possible mentor: Tim Hunt

New question types

This is not really a specific project idea, but I would like to point one an important general area:

With HTML5 the range of what can be done in a web browser keeps expanding. Can we use these possibilities to make new, much more interactive, question types for Moodle?

As I say, I do not currently have any specific suggestion for new HTML5 question types, but if you have an interesting idea, please feel free to propose it, or at least discuss it with us.

Skills required: PHP & JavaScript
Difficulty level: Medium - Hard
Possible mentors: Tim Hunt - but only if you have an interesting enough idea!

Before proposing anything, please make sure you are familiar with the standard question types already available in Moodle, and the contributed question types that other people have already created.


Email reminders for calendar events

It would be nice to have some automated and configurable functionality that enables email reminders for events to be sent automatically.

This would be integrated in the current messaging system as a message provider.

Skills required: PHP
Difficulty level: Medium
Mentors: Michael de Raadt

For further details see:

Video/audio capture repository plugin

A new repository plugin can be developed to allow the user to speak directly into the Moodle 2.0 filepicker via their microphone, and have the audio file saved securely as an MP3 into the correct current filearea.

Flash would be ideal but Java might be required because of Flash's server requirements (but this should all be examined again to be sure). One possibility might be to develop a single public server at xxx.moodle.org to act as a service for Moodle sites around the world.

Poodll would be a good thing to look at, as well as nanogong and this previous project which used riffly.com: MDL-18341. (update 6/2011: riffly.com is dead) Note that sam marshall has written a simple, GPL, record audio Java Applet, which you can get from https://github.com/sammarshallou/ouaudioapplets. also, see video and audio recording plugin for Moodle 1.9 (http://tracker.moodle.org/browse/CONTRIB-2730) that can (and probably will) be ported to Moodle 2 (as soon as i have some spare time,Nadav Kavalerchik)

Skills required: PHP, Javascript, Flash?, Java?
Difficulty level: Medium
Mentors: Rajesh Taneja

Role assigning tool

Develop a tool for easily assigning a role to a user in many places, for example, enrol a student in several courses.

Skills required: PHP
Difficulty level: Medium
Mentors: Rossiani Wijaya

For further details see:

Form text autosave

Moodle is a web based application which makes heavy use of text input from the web browser, a common annoyance from our users is loosing that text input into the browser. A common request is for input to be automatically saved or manually saved as a draft in order that input is not lost or can be worked on between sessions. Similar functions to this exist in web applications like wordpress or Gmail.

Your task would be to implement this feature in Moodle. It is important that you make consideration of the fact that unlike other applications like blogging engines - Moodle has a wide variety of places where text would need to be stored as draft (examples: a forum post, a quiz essay question, an online text assignment) and this solution should be universal across all long text entry fields.

If you are interested in this project it is important that you research the various attempts which have been made to implement this feature in Moodle, posts on the Moodle forums and demonstrate awareness in your application.

Skills required: PHP & JavaScript [YUI]
Difficulty level: Medium
Possible mentors: Dan Poltawski

For further details see:

See also