Difference between revisions of "Development Team/Project Ideas"

From Sugar Labs
Jump to navigation Jump to search
Line 1: Line 1:
 
== About ==
 
== About ==
  
This is a dumping ground for crazy ideas.  Suitable for farming out to interns, Google SoC folks, or eager community members.
+
This is a list of project ideas. For now the focus is on giving [[GSoC]] students an idea of the kind of thing we're looking for. It also includes dumping ground for less-explicitly-explained crazy ideas at the end.
  
* Adding hooks between Browse / Write / Google Docs to provide a killer offline mode for Google Docs.  Google Gears allegedly makes this easy.
 
 
* A better, more fun, Paint option for small children - One way - Use eToys - http://lists.laptop.org/pipermail/etoys/2008-November/002770.html
 
* A better, more fun, Paint option for small children - One way - Use eToys - http://lists.laptop.org/pipermail/etoys/2008-November/002770.html
  
 
* See http://wiki.laptop.org/go/Category:GSoC_proposals
 
* See http://wiki.laptop.org/go/Category:GSoC_proposals
  
== Core Software ==
+
== Well-explained ideas ==
  
=== Accessibility Support ===
+
==== Template ====
Sugar currently doesn't have anything available for the visually impaired.
 
  
=== Speech Synthesis integration into Sugar ===
+
A quick explanation of the idea
 +
 
 +
*Priority for Sugar: Low/Medium/High
 +
 
 +
*Difficulty (as a GSoC project): Easy/Medium/Advanced
 +
 
 +
*Skills needed: Experience with WikiCode and copy-paste.
 +
 
 +
=== Core Software ===
 +
 
 +
=== Toolkits / Frameworks (for activity developers) ===
 +
 
 +
=== Stand-alone activities ===
 +
 
 +
== Brainstorm / unexplained ideas ==
 +
=== Core Software ===
 +
 
 +
* Accessibility Support: Sugar currently doesn't have anything available for the visually impaired.
 +
 
 +
==== Speech Synthesis integration into Sugar ====
 
Integrate speech synthesis with all activities, not just [[Speak]], and provide for karaoke coloring. See [[User:Mokurai|Mokurai]]'s [http://www.olpcnews.com/content/ebooks/effective_adult_literacy_program.html article] on adapting [[Same Language Subtitling]] for literacy to the XO.
 
Integrate speech synthesis with all activities, not just [[Speak]], and provide for karaoke coloring. See [[User:Mokurai|Mokurai]]'s [http://www.olpcnews.com/content/ebooks/effective_adult_literacy_program.html article] on adapting [[Same Language Subtitling]] for literacy to the XO.
  
Line 23: Line 40:
 
* Accent gets set on the basis of locale
 
* Accent gets set on the basis of locale
  
=== Java ===
+
==== Java ====
 
Package and integrate the IcedTea open source bootstrap of OpenJDK Java with browser plugin for the XO. Deliverables would include:
 
Package and integrate the IcedTea open source bootstrap of OpenJDK Java with browser plugin for the XO. Deliverables would include:
 
* Binary, source and rpm dependencies for icedtea and icedtea browser plugin
 
* Binary, source and rpm dependencies for icedtea and icedtea browser plugin
Line 29: Line 46:
 
* Integration of packages into autobuild branch
 
* Integration of packages into autobuild branch
  
=== Print Support ===
+
==== Print Support ====
 
Print support in Sugar would be useful in many scenarios. The ideal project deliverables would include
 
Print support in Sugar would be useful in many scenarios. The ideal project deliverables would include
 
* Integration of a printing infrastructure (CUPS ??) into the XO-1 software images  
 
* Integration of a printing infrastructure (CUPS ??) into the XO-1 software images  
Line 38: Line 55:
 
:I am highly interested in working on this project. Would the project leader mind contacting me at bmw.stx@gmail.com?
 
:I am highly interested in working on this project. Would the project leader mind contacting me at bmw.stx@gmail.com?
  
=== JavaScript-Python Communication ===
+
==== JavaScript-Python Communication ====
 
JavaScript Python Communication through the following strategies: PyXPCom, hulahop, and xulrunner. Ideally, develop a demo activity which could be used as a template for sugarizing javascript activities.
 
JavaScript Python Communication through the following strategies: PyXPCom, hulahop, and xulrunner. Ideally, develop a demo activity which could be used as a template for sugarizing javascript activities.
  
=== Graphical toolkit ===
+
==== Graphical toolkit ====
 
Important work left to do:
 
Important work left to do:
 
* Give focus feedback by showing a rounded rectangle in gtk buttons and HippoCanvas icons.
 
* Give focus feedback by showing a rounded rectangle in gtk buttons and HippoCanvas icons.
Line 48: Line 65:
 
* Improve keyboard shortcuts - make them easier to create and implement a UI to make them more discoverable, such as transparent letters which appear when you hold <ctrl>
 
* Improve keyboard shortcuts - make them easier to create and implement a UI to make them more discoverable, such as transparent letters which appear when you hold <ctrl>
  
=== Mono/.NET ===
+
==== Mono/.NET ====
 
The use of Mono could really enhance the number of Sugar developers due to the huge existing .NET community.
 
The use of Mono could really enhance the number of Sugar developers due to the huge existing .NET community.
 
Thanks to Torello Querci, developing a Sugar activity in Mono is already possible using the Mono/Sugar bindings Sugar.dll (more  [[Mono here]]).
 
Thanks to Torello Querci, developing a Sugar activity in Mono is already possible using the Mono/Sugar bindings Sugar.dll (more  [[Mono here]]).
Line 58: Line 75:
 
* MonoDevelop integration.
 
* MonoDevelop integration.
  
=== Titanium Sugar ===
+
==== Titanium Sugar ====
  
 
* Integrate Titanium-made apps to Sugar.
 
* Integrate Titanium-made apps to Sugar.
 
* Do a titanium activity to develop html/javascript/css appilcations inside Sugar.
 
* Do a titanium activity to develop html/javascript/css appilcations inside Sugar.
  
== Activities ==
+
=== Activities ===
=== VideoChat activity ===
+
==== VideoChat activity ====
 
telepathy-python has support for audio and video streaming and has recently gained support for using gstreamer, which means that we could easily do efficient videoconferencing using fully open source codecs.
 
telepathy-python has support for audio and video streaming and has recently gained support for using gstreamer, which means that we could easily do efficient videoconferencing using fully open source codecs.
  
 
So a really nice project would be to do a proper Sugar activity for video conferencing.
 
So a really nice project would be to do a proper Sugar activity for video conferencing.
  
=== Language Trainer ===
+
==== Language Trainer ====
 
A language trainer with text to speech support would be very nice. Something that could start with letters and then teach words.
 
A language trainer with text to speech support would be very nice. Something that could start with letters and then teach words.
  
=== Thesaurus ===
+
==== Thesaurus ====
 
Working together with openthesaurus -- someone could create a thesaurus for kids to learn different words (synonyms and antonyms)
 
Working together with openthesaurus -- someone could create a thesaurus for kids to learn different words (synonyms and antonyms)
  
=== Improved Read activity ===
+
==== Improved Read activity ====
 
Use Gecko to implement a reader for [http://www.openebook.org/ epub] format ebooks. This is superior to PDF because such books can be reflowed to better fit the screen and user preferences. Also, (although it would break the standard) it would make it very simple to include AJAX-style active features to books.
 
Use Gecko to implement a reader for [http://www.openebook.org/ epub] format ebooks. This is superior to PDF because such books can be reflowed to better fit the screen and user preferences. Also, (although it would break the standard) it would make it very simple to include AJAX-style active features to books.
  
 
Extra credit if you support textual and graphical annotation. Deployments have also asked for a page-turn animation.
 
Extra credit if you support textual and graphical annotation. Deployments have also asked for a page-turn animation.
  
=== KDEEdu ===
+
==== KDEEdu ====
  
 
Sugarize any [http://edu.kde.org/ KDEEdu] activity, especially the ones which have no corresponding Sugar activity.
 
Sugarize any [http://edu.kde.org/ KDEEdu] activity, especially the ones which have no corresponding Sugar activity.
  
=== Gnash ===
+
==== Gnash ====
  
 
Put some code around Gnash that allows to easily do activities based on Flash content. Also develop Gnash extensions that allow flash activities to interact with the journal, presence service, telepathy, etc
 
Put some code around Gnash that allows to easily do activities based on Flash content. Also develop Gnash extensions that allow flash activities to interact with the journal, presence service, telepathy, etc
  
=== UCB Logo ===
+
==== UCB Logo ====
  
 
We need to add journal support (and a standard Sugar toolbar).
 
We need to add journal support (and a standard Sugar toolbar).
  
=== FoodForce2 Activity ===
+
==== FoodForce2 Activity ====
  
 
* Integrate story board into the game.  
 
* Integrate story board into the game.  
Line 101: Line 118:
 
Link : http://code.google.com/p/foodforce/
 
Link : http://code.google.com/p/foodforce/
  
=== Educational Toolkit ===
+
==== Educational Toolkit ===
  
 
* Enable collaboration scenarios
 
* Enable collaboration scenarios

Revision as of 19:11, 8 March 2009

About

This is a list of project ideas. For now the focus is on giving GSoC students an idea of the kind of thing we're looking for. It also includes dumping ground for less-explicitly-explained crazy ideas at the end.

Well-explained ideas

Template

A quick explanation of the idea

  • Priority for Sugar: Low/Medium/High
  • Difficulty (as a GSoC project): Easy/Medium/Advanced
  • Skills needed: Experience with WikiCode and copy-paste.

Core Software

Toolkits / Frameworks (for activity developers)

Stand-alone activities

Brainstorm / unexplained ideas

Core Software

  • Accessibility Support: Sugar currently doesn't have anything available for the visually impaired.

Speech Synthesis integration into Sugar

Integrate speech synthesis with all activities, not just Speak, and provide for karaoke coloring. See Mokurai's article on adapting Same Language Subtitling for literacy to the XO.

Desirable Features for Sugar Speech Synthesis Plugin:

  • Provide Sugar Speech Synthesis Configuration Management Tool
  • Karaoke Style Coloring in Sugar Environment
  • UI for configuration Control
  • Accent gets set on the basis of locale

Java

Package and integrate the IcedTea open source bootstrap of OpenJDK Java with browser plugin for the XO. Deliverables would include:

  • Binary, source and rpm dependencies for icedtea and icedtea browser plugin
  • Java enabled os image
  • Integration of packages into autobuild branch

Print Support

Print support in Sugar would be useful in many scenarios. The ideal project deliverables would include

  • Integration of a printing infrastructure (CUPS ??) into the XO-1 software images
  • Modification of Sugar Control Panel to set up the printer (add/select default printer?)
  • Modification of at least one activity (Write ?) to support printing
  • Making a printing activity, that follows sugar GUI guidelines?
I am highly interested in working on this project. Would the project leader mind contacting me at bmw.stx@gmail.com?

JavaScript-Python Communication

JavaScript Python Communication through the following strategies: PyXPCom, hulahop, and xulrunner. Ideally, develop a demo activity which could be used as a template for sugarizing javascript activities.

Graphical toolkit

Important work left to do:

  • Give focus feedback by showing a rounded rectangle in gtk buttons and HippoCanvas icons.
  • Implement keyboard navigation in HippoCanvas.
  • Implement accessibility hooks in HippoCanvas.
  • Improve keyboard shortcuts - make them easier to create and implement a UI to make them more discoverable, such as transparent letters which appear when you hold <ctrl>

Mono/.NET

The use of Mono could really enhance the number of Sugar developers due to the huge existing .NET community. Thanks to Torello Querci, developing a Sugar activity in Mono is already possible using the Mono/Sugar bindings Sugar.dll (more Mono here).

The idea for this GSOC project is to greatly enhance this binding:

  • Better integration with the Sugar look & feel and HippoCanvas,
  • Binding to telepathy API,
  • WinForm compatibility,
  • MonoDevelop integration.

Titanium Sugar

  • Integrate Titanium-made apps to Sugar.
  • Do a titanium activity to develop html/javascript/css appilcations inside Sugar.

Activities

VideoChat activity

telepathy-python has support for audio and video streaming and has recently gained support for using gstreamer, which means that we could easily do efficient videoconferencing using fully open source codecs.

So a really nice project would be to do a proper Sugar activity for video conferencing.

Language Trainer

A language trainer with text to speech support would be very nice. Something that could start with letters and then teach words.

Thesaurus

Working together with openthesaurus -- someone could create a thesaurus for kids to learn different words (synonyms and antonyms)

Improved Read activity

Use Gecko to implement a reader for epub format ebooks. This is superior to PDF because such books can be reflowed to better fit the screen and user preferences. Also, (although it would break the standard) it would make it very simple to include AJAX-style active features to books.

Extra credit if you support textual and graphical annotation. Deployments have also asked for a page-turn animation.

KDEEdu

Sugarize any KDEEdu activity, especially the ones which have no corresponding Sugar activity.

Gnash

Put some code around Gnash that allows to easily do activities based on Flash content. Also develop Gnash extensions that allow flash activities to interact with the journal, presence service, telepathy, etc

We need to add journal support (and a standard Sugar toolbar).

FoodForce2 Activity

  • Integrate story board into the game.
  • Make an extensible API to enable educators to add their own storyboards.
  • Add Speech Support into the project.
  • Optimise the speed and efficiency of the game.

Link : http://code.google.com/p/foodforce/

= Educational Toolkit

  • Enable collaboration scenarios
  • Work on the GUI to provide support for multiple types of questions.
  • Add API to make it easy to add new question types.

Link : http://wiki.laptop.org/go/Educational_toolkit

Some ideas for improving Sugar Activities

More of your ideas

Preeti's list

Hi, I am Preeti, from New Delhi. I would like to get myself involved in this very interesting aspect of the OLPC software development. I have jotted some of my views on the same at:

http://wiki.laptop.org/go/User_talk:59.178.99.172

Regards Preeti