Difference between revisions of "Summer of Code"

From Sugar Labs
Jump to navigation Jump to search
(117 intermediate revisions by 18 users not shown)
Line 1: Line 1:
<noinclude>{{GoogleTrans-en}}{{TeamHeader|Summer of Code|home=Summer of Code Project Home|xbgColor=ffe792}}</noinclude>{{TOCright}}
* [[GSoC/2019/Accepted_Proposals|Accepted 2019 Google Summer of Code projects]]
From the 2009 FAQ: "Google Summer of Code (GSoC) is a global program that offers student developers stipends to write code for various open source projects."
Moved to https://github.com/sugarlabs/GSoC
Sugar Labs Google SoC page: http://socghop.appspot.com/org/show/google/gsoc2009/sugarlabs
This is a project under [[Development Team]]. Jameson Chema Quinn coordinated the 2009 projects and can be contacted with any questions at jameson.quinn -AT- gmail.com.
== 2009 results ==
We had a great year. All 5 of our students were successful, and several of them made really important improvements to Sugar. Here's the results:
=== Karma ===
The [[Karma]] GSoC project has been a success. Participant Felipe Lopez Toledo set out to create a high-level library for creating interactive digital learning lessons using only openweb technologies. The result is the [http://git.sugarlabs.org/projects/karma/repos/mainline/blobs/master/js/jquery.karma-0.3.js karma jQuery plugin] that provides high-level functions for manipulating image, audio, and internationalization.
The Karma Project is an initiative to create a platform that enables web developers to create compelling interactive learning materials for the Sugar Learning Environment without having to learn a new set of programming tools.
You can view the first example of lesson [http://karma.sugarlabs.org/karma/examples/adding_up_to_10/index.html "Adding up to 10"].
The student, Felipe Lopez Toledo, wrote:
# Simplified functions for:
#* Drawing using the new canvas API for html5
#* Adding images dynamically to the canvas API and manipulating them
#* Playing audio
# Methods for loading in localized images and audio
# Mechanism for loading in translated text from a .po file
# Documentation of the [http://karma.sugarlabs.org/docs/jsdoc/ Karma API]
Thanks to the support of Google and Sugar Labs, Karma can now be used to create interactive activities for the Sugar environment.
[[Image:Adding up small.png|The Adding Up to 10 Karma lesson]]
=== Groupthink ===
The [[Summer_of_Code/2009/Groupthink|Groupthink GSoC Project]] successfully achieved its specified goals.  The student, Benjamin Schwartz, wrote
# a [http://bemasc.net/~bens/groupthink/groupthink.gtk_tools.SharedTextView-class.html gtk SharedTextView widget] that provides live shared editing in a self-contained object
# a [http://bemasc.net/~bens/groupthink/groupthink.groupthink_base.UnorderedString-class.html network interface] to allow sharing this widget over the network
# a SharedTextDemo activity (versions [http://lists.sugarlabs.org/archive/sugar-devel/2009-June/014795.html 1], [http://lists.sugarlabs.org/archive/sugar-devel/2009-June/015346.html 2], [http://lists.sugarlabs.org/archive/sugar-devel/2009-June/015713.html 3], [http://lists.sugarlabs.org/archive/sugar-devel/2009-July/016739.html 4], and [http://lists.sugarlabs.org/archive/sugar-devel/2009-July/017004.html 5]) to demonstrate the use of this widget
# an automated [http://bemasc.net/~bens/groupthink/groupthink.groupthink_base.Group-class.html#dumps serialization system] for saving and loading state [http://bemasc.net/~bens/groupthink/groupthink.sugar_tools.GroupActivity-class.html#read_file with the Journal]
# [http://bemasc.net/~bens/groupthink/groupthink.sugar_tools.GroupActivity-class.html other] code necessary so that Sugar activities could seamlessly rejoin a shared instance and merge in changes made offline
# [http://git.sugarlabs.org/projects/pippy/repos/pippy-groupthink/commits/0f30ab2a17670d3f7e7723fe4f4756333030c3e0 patches] to enable live shared editing of Python code, with syntax highlighting and Undo/Redo, in [http://activities.sugarlabs.org/en-US/sugar/addons/versions/4041#version-35 Pippy-35]
# extensive [http://bemasc.net/~bens/groupthink/ API documentation] for Groupthink.
Thanks to the support from Sugar Labs and Google, Groupthink has grown from a toy project into a library that developers can really use.
=== Printing ===
[http://wiki.sugarlabs.org/go/Print_Support Printing]  had been one of the key complementing features of any Desktop that Sugar lacked.
# The following [http://wiki.sugarlabs.org/go/Print_Support_Manual Manual] provides a gist of the project.
# The Code Repository of [http://git.sugarlabs.org/projects/read/repos/print Print] where you can find the odf-to-ps CUPS filter, as well as Moodle Print.
== Previous Introduction ==
The purpose of this page (was) to coordinate a Sugar Labs Summer of Code effort.
=== What (made) a good project ===
Our focus is on '''collaboration''' and '''community''' for the summer 2009 round of projects, though we'll also consider thoughtful proposals that lie outside these two areas and can make a strong case for how they would support the Sugar Labs [[Sugar_Labs|mission]].
==== Collaboration ====
This refers to API or activity work that makes [[olpc:Activity_sharing | collaboration]] "work better." A good metric for "works better" is to ask the following: "6 months after the summer ends, which projects are likely to have caused the highest increase in children-hours spent collaborating over Sugar Activities?"
==== Community ====
This refers to meta-work that makes it easy for Sugar to reach a broader [[Sugar Labs]]; this includes development tools (and accompanying implementation of processes and training), internationalization/localization, accessibility, infrastructure-building, and porting Sugar to other platforms.
A good metric for "reaches a broader community" is to ask the following: "6 months after the summer ends, which projects are likely to cause the highest increase in SL community members that have participated consistently on a team for a minimum of 3 months?"
{{:Summer of Code/Getting Involved}}

Latest revision as of 20:26, 13 May 2019