Note:

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

Talk:Projects for new developers: Difference between revisions

From MoodleDocs
(potential projects for which the mentor is not yet confirmed)
 
(removing projects from Feb 2017, adding project without experienced core developer as mentor)
 
Line 1: Line 1:
<p class="note">Note: The following list of projects have mentors who have not yet confirmed whether they currently wish to mentor a project. If you are listed as a possible mentor, please either move your project to [[Projects for new developers]] (to confirm that you wish to mentor the project) or delete it from this page (if you no longer wish to offer it as a possible project).</p>
<p class="note">Note: The following list of projects have mentors who have not yet confirmed whether they currently wish to mentor a project. If you are an experienced core developer and are listed as a possible mentor, please either move your project to [[Projects for new developers]] (to confirm that you wish to mentor the project) or delete it from this page (if you no longer wish to offer it as a possible project).</p>


===Clef | Two-Factor Authentication===
=== Add monitoring metrics to Moodle via a plugin ===
Create [https://getclef.com Clef two factor authentication] plugin, so  a user can log in using their mobile to reduce login time. This will improve security and reduce  the login time for users.
Expose metrics for monitoring for systems like [http://prometheus.io Prometheus] to allow for long term monitoring of things like student count or active users.
Work would need to be done speccing out this project as well as the actual implementation.


:'''Skills required:''' PHP, Javascript
Requirements for prospective students:
:'''Skills required''': PHP
:'''Difficulty level''': Medium
:'''Difficulty level''': Medium
:'''Possible mentor''': [https://moodle.org/user/profile.php?id=1328988 Rajesh Taneja]
:'''Possible mentor''': [https://moodle.org/user/profile.php?id=2101503 Paul Greidanus]
 
=== Multi-step login screen ===
Update the login screen to first ask for a username, and then the password as a two-step process.
See the login process for Google
 
:'''Skills required:''' PHP, JavaScript, Mustache
:'''Difficulty level''': Medium
:'''Possible mentor''': [https://moodle.org/user/profile.php?id=1779959 John Okely]
 
=== 2FA - Two Factor Authentication ===
Add support for Two-Factor Authentication. This would work well when combined with the Multi-step login screen.
Factors requiring consideration include the Mobile app integrations.
 
:'''Skills required:''' PHP, JavaScript, Mustache
:'''Difficulty level''': Medium
:'''Possible mentor''': [https://moodle.org/user/profile.php?id=268794 Andrew Nicols]
 
=== CLI Helper for Moodle Developers ===
Possibly an addendum to MDK, a set of scripts to help facilitate various common tasks. In particular:
* creation of Persistent Objects including their Class files, the XMLDB code to create their tables, and the XMLDB upgrade scripts required to upgrade (including version bumps)
 
:'''Skills required:''' PHP, Python?
:'''Difficulty level''': Hard
:'''Possible mentor''': [https://moodle.org/user/profile.php?id=268794 Andrew Nicols]
 
=== Trait for Mock DB in unit tests ===
In moodle we run every unit test using a real database. This is extremely slow with little benefit. Granted it does catch some cross-database compatibility issues, but we don't need it for every test. We should add a trait that test classes can use that will automatically set up mock $DB to save processing power and unnecessary waiting for DB.
 
:'''Skills required:''' PHP, PHPUnit
:'''Difficulty level''': Easy
:'''Possible mentor''': [https://moodle.org/user/profile.php?id=268794 Andrew Nicols] or [https://moodle.org/user/profile.php?id=1779959 John Okely]
 
=== Mock implementation of DML ===
In moodle we run every unit test using a real database. This is extremely slow with little benefit. Granted it does catch some cross-database compatibility issues, but we don't need it for every test. It is possible to extend moodle_database and mock all the calls to use an in memory/mocked database. The easiest way to do this may be to use first make a Data Access Object implementation, and then use a mock DAO
 
:'''Skills required:''' PHP, PHPUnit
:'''Difficulty level''': Very Hard
:'''Possible mentor''': [https://moodle.org/user/profile.php?id=1779959 John Okely]

Latest revision as of 18:47, 12 February 2018

Note: The following list of projects have mentors who have not yet confirmed whether they currently wish to mentor a project. If you are an experienced core developer and are listed as a possible mentor, please either move your project to Projects for new developers (to confirm that you wish to mentor the project) or delete it from this page (if you no longer wish to offer it as a possible project).

Add monitoring metrics to Moodle via a plugin

Expose metrics for monitoring for systems like Prometheus to allow for long term monitoring of things like student count or active users. Work would need to be done speccing out this project as well as the actual implementation.

Requirements for prospective students:

Skills required: PHP
Difficulty level: Medium
Possible mentor: Paul Greidanus