XS Moodle plan: Difference between revisions

From OLPC
Jump to navigation Jump to search
(New page: =Stage 1= * RPM package of a custom git-tracked 1.9 * Unattended RPM installation/upgrade using the cli installer * Localisation groundwork ** PO to Moodle-langfile translator ** Understa...)
 
(move to subcategory Moodle)
 
(11 intermediate revisions by 2 users not shown)
Line 1: Line 1:
This is the general workplan for the Moodle implementation. See entries in the tracker for actual schedules and such.
=Stage 1=


==Stage 1==
* RPM package of a custom git-tracked 1.9

* Unattended RPM installation/upgrade using the cli installer
In this stage, we get a basic Moodle installation that has the basics to be usable as a homepage for the XS and basic (but clunky) publishing and course mgmt system. A few key points to note
* Localisation groundwork

* We must support tiered control of content - local school, regional, OLPC
* We must provide an upgrade path that preserves local school content and data - for every bit we host for users.
* It must not cause trouble (DoS the XS with load, disk usage, etc)

To do:

* '''RPM package''' of a custom git-tracked 1.9
* Unattended RPM installation/upgrade using the '''cli installer'''
* Limit '''data footprint'''
** datastore quota
** database log pruning
** database storage quota
* '''Localisation''' groundwork
** PO to Moodle-langfile translator
** PO to Moodle-langfile translator
** Understand (reconciliate) models for string interpolation and plurals
** Understand (reconciliate) models for string interpolation and plurals
* '''Test''' Moodle with current Browse
* Basic authentication scheme (auth plugin)
** Note popup window behaviour
* Sitewide role management scheme to answer "Who's a teacher/admin?"
** Will probably have to disable HTMLArea editor
* Admin preset
* Trivial authentication scheme ('''auth plugin''') - this will be proof-of-concept
* Admin page lockdown / scary warning
* Define a content management strategy covering
* Sitewide '''role management scheme''' to answer ''Who's a teacher/admin?''
* '''Presets''' for admin settings
* '''Admin page lockdown''' / scary warning
* Define '''a content management strategy''' covering
** School content
** School content
** Regional content
** Regional content
** OLPC content
** OLPC content
* Simplify
* '''Simplify'''
** Remove/disable blocks, modules
** Remove/disable blocks, modules
** Simplify default blocks -- (also brings performance benefits ;-) )
** Simplify default blocks -- (also brings performance benefits ;-) )
* Moodle/XS homepage - basic
* '''Moodle/XS homepage''' - very basic
* Initial theme
* Initial '''theme'''
* No SMTP email (except for teachers)
* '''No SMTP email'''
** But do enable moodle messaging
** But do enable moodle messaging
** Nepal team will want to enable emails for teachers



== System stuff ==
=== System stuff ===


* Many DNS names - using punycode
* Many DNS names - using punycode
Line 37: Line 56:
** Use shmem for Moodle's $MCACHE
** Use shmem for Moodle's $MCACHE


=Stage 2=
==Stage 2==


Show a bit more sophistication. Stage 2 will hopefully be paired with xo-9.1 so we can take a stab at the automagic authentication scheme.
* Automagic user authentication (auth plugin) - interops with Browse.xo

* DS-resture UI attached to user page
* '''Automagic user authentication''' (auth plugin) - interops with Browse.xo
* Moodle/XS homepage
* '''DS-restore UI''' attached to user page. We can probably add hooks to moodle for this.
* '''Moodle/XS homepage''' enhancements
** Main XS navigation (installable activities, new OS images available...)
** Main XS navigation (installable activities, new OS images available...)
** "What's new" relnotes for admins/teachers
** "What's new" relnotes for admins/teachers
** Local content of this school
** Local content of this school
** Regional content (as per content mgmt strategy)
** Regional content (as per content mgmt strategy)
* Simplify
* '''Simplify'''
** Course creation screen and workflow...
** Course creation screen and workflow...
* Provide some sample courses
* Provide some '''sample courses'''


=Stage 3=
==Stage Later==


Stage ''Later'' is faraway horizon. We'll know more when we get closer...
* Course enrolment communicates groups info with presence svc and laptops

* Simplified admin options
* '''[[XS_Offline_Moodle|Offline Moodle]]'''
* Teaching materials repository
* '''Course enrolment''' communicates groups info with presence svc and laptops
* '''Simplified admin''' options
* '''Teaching materials repository'''
** Publish ''push'' upstream
** Publish ''push'' upstream
** Consume
** Consume
* Replace mod/chat with an xochat callback/trigger
* Replace mod/chat with an '''xochat callback/trigger'''
* Study delivering email to users
* Study delivering '''email''' to users
** With a 'walled garden' email setup?
** With a 'walled garden' email setup?
** Via XMPP?
** Via XMPP?
* Now go for a really good theme! :-)
* Now go for a '''really good theme'''! :-)
* DS-Backup
* '''DS-Backup''' enhancements
** WebJournal / XO Journal "time extension" implementation?
** '''WebJournal''' / XO Journal "time extension" implementation?
** File picker - can also read from DS-backup?
** ''' Moodle file picker''' - can also read from DS-backup?
* Blogging tools (see Tarun's project)
* '''Blogging''' tools (see Tarun's project)
** Ability to publish upstream?
** Ability to publish upstream?
* Portfolio - to Mahara?
* '''Portfolio''' - to Mahara?

== See also ==
[[XS Moodle design]]

[[Category:Moodle]]

Latest revision as of 02:10, 10 August 2009

This is the general workplan for the Moodle implementation. See entries in the tracker for actual schedules and such.

Stage 1

In this stage, we get a basic Moodle installation that has the basics to be usable as a homepage for the XS and basic (but clunky) publishing and course mgmt system. A few key points to note

  • We must support tiered control of content - local school, regional, OLPC
  • We must provide an upgrade path that preserves local school content and data - for every bit we host for users.
  • It must not cause trouble (DoS the XS with load, disk usage, etc)

To do:

  • RPM package of a custom git-tracked 1.9
  • Unattended RPM installation/upgrade using the cli installer
  • Limit data footprint
    • datastore quota
    • database log pruning
    • database storage quota
  • Localisation groundwork
    • PO to Moodle-langfile translator
    • Understand (reconciliate) models for string interpolation and plurals
  • Test Moodle with current Browse
    • Note popup window behaviour
    • Will probably have to disable HTMLArea editor
  • Trivial authentication scheme (auth plugin) - this will be proof-of-concept
  • Sitewide role management scheme to answer Who's a teacher/admin?
  • Presets for admin settings
  • Admin page lockdown / scary warning
  • Define a content management strategy covering
    • School content
    • Regional content
    • OLPC content
  • Simplify
    • Remove/disable blocks, modules
    • Simplify default blocks -- (also brings performance benefits ;-) )
  • Moodle/XS homepage - very basic
  • Initial theme
  • No SMTP email
    • But do enable moodle messaging
    • Nepal team will want to enable emails for teachers


System stuff

  • Many DNS names - using punycode
  • Apache-PHP
    • Define a sane maxclients related to the memory we have. Measure current 1.9 memory usage with modern smap tools. PeterB may have material here...
    • keepalive
  • PostgreSQL - define a small memory configuration that can handle expected DB sizes and moderate-to-high loads.
  • PHP-APC
    • Package
    • Set to precompile
    • Hook up apache init script to nuke the precompiled files to workaround potential issues with corrupt precompiled files
    • Prevent precompiled files from using the shmem segment - Linux fs caching is better
    • Use shmem for Moodle's $MCACHE

Stage 2

Show a bit more sophistication. Stage 2 will hopefully be paired with xo-9.1 so we can take a stab at the automagic authentication scheme.

  • Automagic user authentication (auth plugin) - interops with Browse.xo
  • DS-restore UI attached to user page. We can probably add hooks to moodle for this.
  • Moodle/XS homepage enhancements
    • Main XS navigation (installable activities, new OS images available...)
    • "What's new" relnotes for admins/teachers
    • Local content of this school
    • Regional content (as per content mgmt strategy)
  • Simplify
    • Course creation screen and workflow...
  • Provide some sample courses

Stage Later

Stage Later is faraway horizon. We'll know more when we get closer...

  • Offline Moodle
  • Course enrolment communicates groups info with presence svc and laptops
  • Simplified admin options
  • Teaching materials repository
    • Publish push upstream
    • Consume
  • Replace mod/chat with an xochat callback/trigger
  • Study delivering email to users
    • With a 'walled garden' email setup?
    • Via XMPP?
  • Now go for a really good theme! :-)
  • DS-Backup enhancements
    • WebJournal / XO Journal "time extension" implementation?
    • Moodle file picker - can also read from DS-backup?
  • Blogging tools (see Tarun's project)
    • Ability to publish upstream?
  • Portfolio - to Mahara?

See also

XS Moodle design