Note:

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

Google Gears integration: Difference between revisions

From MoodleDocs
(New page: Project specification, Google Summer of Code 2009 - [http://moodle.org/user/view.php?id=833056&course=1 Alberto Jurado-Varela] '''Summary:''' This project is based on the idea of [http:/...)
 
No edit summary
Line 14: Line 14:
=== Timeline ===
=== Timeline ===


* '''May 23rd''': Finish specifications and have a sound understanding of the Gears API.
* '''Late May''': Define the architecture for the web application: isolate de data layers (local and server), and the incorporation of a data switch and synchronization engine.
* '''Late May''': Define the architecture for the web application: isolate de data layers (local and server), and the incorporation of a data switch and synchronization engine.
* '''Late May/early June''': Start building a working flexible base/architecture for Google Gears in Moodle:
* '''Late May/early June''': Start a working flexible base/architecture for Google Gears in Moodle:
** Store the HTML, CSS and Javascript in the SQLite DB provided by Gears. Use the Database class to store the data.
** Store the HTML, CSS and Javascript in the SQLite DB provided by Gears. Use the Database class to store the data.
** Code and edit a dynamic manifest to include the resource available offline
** Code and edit a dynamic manifest to include the resource available offline
Line 29: Line 28:
* '''July 25''': Add a versatile functionality of other basic kinds of Moodle resources.
* '''July 25''': Add a versatile functionality of other basic kinds of Moodle resources.
* '''August 1st''': Test the functionality above with a limited sample of activities: lesson, uploading files, and glossaries. Debug where necessary.
* '''August 1st''': Test the functionality above with a limited sample of activities: lesson, uploading files, and glossaries. Debug where necessary.
* '''August 9th''': revise security holes and permissions.
* '''August 9th''': Revise security holes and permissions.
* '''Time permitting''': try the functionality to work with all kinds of activities and a full offline Moodle.
* '''Time permitting''': Try the functionality to work with all kinds of activities and a full offline Moodle.
* '''August 17''': Clean code, perform final tests, and finish documentation.
* '''August 17''': Clean code, perform final tests, and finish documentation.



Revision as of 15:44, 4 May 2009

Project specification, Google Summer of Code 2009 - Alberto Jurado-Varela


Summary: This project is based on the idea of integrating Google Gears to Moodle. An offline mode will allow people with limited Internet connection to browse activities and other resources, take notes and store them locally, save assignments even if the user is not connected and then upload/synchronize when the user is online. Moreover, the plan is to create a working base/architecture and then make it easier to add any kind of activity to the Gears module.


Motivation

I find this project particularly useful for communities where students can get online a few times a week, download a lesson, and upload what they have worked on while offline. Other potential users would be people who fly and do not want to pay for wifi at the airport, but still continue following a course. To me the greatest benefit of this project is to be able to keep learning even if we are not connected to the Internet.

Implementation details

Timeline

  • Late May: Define the architecture for the web application: isolate de data layers (local and server), and the incorporation of a data switch and synchronization engine.
  • Late May/early June: Start a working flexible base/architecture for Google Gears in Moodle:
    • Store the HTML, CSS and Javascript in the SQLite DB provided by Gears. Use the Database class to store the data.
    • Code and edit a dynamic manifest to include the resource available offline
    • Make use of the LocalServer class to store an initial sample of the Moodle application on the local server. Make sure the application starts offline.
    • Add the WorkerPool class to run the Javascript code in Moodle
  • July 6-13: Submit initial code for evaluation. A course admin should be able to edit notes offline at this point. For example:
    • Download all the interface for offline visualization
    • Make changes offline in a course’s notepad
    • Save changes
    • Synchronize when back online and upload notes
  • July 17: Based on feedback: debug, clean code, perform more extensive tests on this base architecture.
  • July 25: Add a versatile functionality of other basic kinds of Moodle resources.
  • August 1st: Test the functionality above with a limited sample of activities: lesson, uploading files, and glossaries. Debug where necessary.
  • August 9th: Revise security holes and permissions.
  • Time permitting: Try the functionality to work with all kinds of activities and a full offline Moodle.
  • August 17: Clean code, perform final tests, and finish documentation.

See also

For more information, please visit the following links: