Karma: Difference between revisions

BryanWB (talk | contribs)
BryanWB (talk | contribs)
No edit summary
Line 7: Line 7:
Felipe Lopez Toledo "SubZero" is creating a prototype for Karma as a Google Summer of Code project. [[USER:BryanWB| Bryan Berry]] is serving as his mentor.  
Felipe Lopez Toledo "SubZero" is creating a prototype for Karma as a Google Summer of Code project. [[USER:BryanWB| Bryan Berry]] is serving as his mentor.  


== Project Requirements ==
* Create a single prototype activity which could be used as a template for sugarizing AJAX activities. The GSoC participant should not create her own activity but  recreate an existing activity such as one of [http://www.pustakalaya.org/external-content/static/epaath/E-Paath-2.activity/activity/Activity/MenuStage.html OLE Nepal's flash activities].
* This prototype should have the following features:
** Simple interactive animation and audio using html5 tags like <canvas> and <audio>
** An assessment section that stores results of student's progress and gives them suggestions on improvement. Assessment info should be persistent.
** Has embedded pdf or pdf like document reader for activity lesson plan and teacher notes.
** Integrates with the Journal
** Navigation and Help elements, ideally reusing widgets from [http://www.jquery.com jQuery]
** Some element of collaboration using Telepathy (This could be really hard, depending on the state of javascript bindings to dbus)


== Technical Architecture ==
== Technical Architecture ==
Line 46: Line 34:
* File naming conventions: lowercase letters, underscore instead of spaces  (need to write more about it)
* File naming conventions: lowercase letters, underscore instead of spaces  (need to write more about it)


== Meetings ==
== GSoC Project ==
 
=== Project Requirements ===
 
* Create a single prototype activity which could be used as a template for sugarizing AJAX activities. The GSoC participant should not create her own activity but  recreate an existing activity such as one of [http://www.pustakalaya.org/external-content/static/epaath/E-Paath-2.activity/activity/Activity/MenuStage.html OLE Nepal's flash activities].
* This prototype should have the following features:
** Simple interactive animation and audio using html5 tags like <canvas> and <audio>
** An assessment section that stores results of student's progress and gives them suggestions on improvement. Assessment info should be persistent.
** Has embedded pdf or pdf like document reader for activity lesson plan and teacher notes.
** Integrates with the Journal
** Navigation and Help elements, ideally reusing widgets from [http://www.jquery.com jQuery]
** Some element of collaboration using Telepathy (This could be really hard, depending on the state of javascript bindings to dbus)
 
 
=== Meetings ===


# Regular meeting between Felpe and Bryan every Tuesday 0200 UTC  at #sugar on irc.freenode.net
# Regular meeting between Felpe and Bryan every Tuesday 0200 UTC  at #sugar on irc.freenode.net
Line 58: Line 60:
* [[Karma:Meeting 30 Jun 2009]]
* [[Karma:Meeting 30 Jun 2009]]


== Project Plan ==
=== Project Plan ===


There are roughly 4 parts to this project plan: first get titanium running on the XO, second create a very simple learning activity with javascript and html5, third get that activity running on the XO in a roughly sugarized version of titanium, fourth extend the activity to take advantage of Sugar-specific features such as the Journal and Collaboration.
There are roughly 4 parts to this project plan: first get titanium running on the XO, second create a very simple learning activity with javascript and html5, third get that activity running on the XO in a roughly sugarized version of titanium, fourth extend the activity to take advantage of Sugar-specific features such as the Journal and Collaboration.
Line 96: Line 98:
August 1 - August 9: time for any eventual emergencies
August 1 - August 9: time for any eventual emergencies


== Project Risks ==
=== Project Risks ===


# Creating interactive animations with html5 and javascript is very new technology as html5 is a new standard. It could be much harder to create animations than we expect. Risk Level: High
# Creating interactive animations with html5 and javascript is very new technology as html5 is a new standard. It could be much harder to create animations than we expect. Risk Level: High  
# Javascript animations could be very slow on the XO. Risk Level: Low, we don't need very complex animations
# Javascript animations could be very slow on the XO. Risk Level: Low, we don't need very complex animations
# It could be very difficult to interface titanium with telepathy. Risk Level: High
# It could be very difficult to interface titanium with telepathy. Risk Level: High
# The Browse Sugar activity uses the spidermonkey javascript interpreter, which is not optimized for hmtl5. Karma's animations may be prohibitively slow in Browse and require a version of Browse that includes the newer tracemonkey javascript interpreter.
# The Browse Sugar activity uses the spidermonkey javascript interpreter, which is not optimized for hmtl5. Karma's animations may be prohibitively slow in Browse and require a version of Browse that includes the newer tracemonkey javascript interpreter.