Summer of Code/2015

Students: See our guide on how to participate in Google Summer of Code for more information.

Project candidates

In the table below is a list of projects potential participants might contribute to in the GSoC program.

Note 1
We are focusing on the Javascript components within Sugar this summer.
Note 2
Potential mentors, please feel free to add ideas to this list. Also, feel free to add your name to a project you'd be willing to co-mentor.
Note 3
Potential students, more project ideas can be found on our Features page.
Note 4
Accepted projects are in Green

Sugar Core

Title Mentor Project
Git backend Martin Abente and Walter Bender
Brief explanation
The Sugar Journal doesn't do a great job of supporting versioning or forking. This project is to build a backend for the Journal that is based on git, which does support versioning and forking. By building on top of a git hosting site we get the added benefit of network access as well.
Expected results
Knowledge prerequisite
Strong background in Python
Cordova/PhoneGap container for Sugar Lionel Laské and Puneet Kaur
Brief explanation
Expected results
Knowledge prerequisite
Strong background in JavaScript, don't be put off by Python.

Sugar Activities

Title Mentor Project
Turtle Blocks 3D Javascript Tony Forster and Walter Bender
Brief explanation
The Python version of Turtle Blocks 3D is based on GTK since Sugar uses GTK and GTK is largely incompatible with OpenGL. In a Javascript version, we could use OpenGL and take advantage of many more graphics libraries, such as 3D lighting models and texture mapping.
Expected results
Knowledge prerequisite
Strong background in Javascript
Turtle Blocks export as Javascript Walter Bender
Brief explanation
The Python version of Turtle Blocks allows the user to export their project as Python code. We need an equivalent Javascript export for the Javascript version.
Expected results
Knowledge prerequisite
Strong background in Javascript
Turtle Blocks inline Javascript Walter Bender
Brief explanation
There are several block-based programming environments that allow the user to extend the language in line, such as Blocky and Pencil Code. (Turtle Blocks uses plugins for this, but they are imported). The goal of this project is to write an in-line block editor for Turtle Blocks (Javascript version).
Expected results
Knowledge prerequisite
Strong background in Javascript
Turtle Blocks debugging tools Cynthia Solomon and Walter Bender
Brief explanation
There are several debugging tools in Turtle Blocks: the ability to set break points, step through code, and inspect variables. But we could use a more comprehensive approach, including a mechanism for tracking progress over time.
Expected results
Knowledge prerequisite
Strong background in Javascript
Music Blocks Devin Ulibarri and Walter Bender
Brief explanation
Using a framework similar to Turtle Blocks Javascript, build a suite of music tools for introducing the basic concepts of scale, beat, chord, phrasing, sequencing, transformations, etc.
Expected results
Knowledge prerequisite
Strong background in Javascript
Abacus JS Walter Bender
Brief explanation
Expected results
Knowledge prerequisite
Strong background in Javascript
Fototoons JS Gonzalo Odiard
Brief explanation
Expected results
Knowledge prerequisite
Strong background in Javascript

Subpages