Skip to end of metadata
Go to start of metadata

About GSoC

Google's summer of code is now in its 6th year, funding student positions over the summer, working with various open source development projects producing code that benefits everyone. GSoC will put up $5000 US to cover the wage of a student during the period between the end of May and the end of August. Students who are interested in participating should scan through the GSoC FAQ for information about the program and how to apply, and scan through the "Project Ideas" listed below for potential projects they might participate in. Or, propose a project of your own and attach it to your application.

Google Summer of Code
Google Summer of Code FAQs
Advice for Students Applying for GSoC

Students applying to work with the ATRC/IDI should submit a resume, along with a 1 or 2 page proposal mentioning the project they wish to participate in, with a plan describing how they would go about developing or coding the software. We'll offer suggestions you can use to enhance the proposal you submit when you register with GSoC.

Summer of Code registration period has ended. If you missed the deadline, get involved with the ATutor community, and try again in 2011.

Important Dates

Mentoring Organization Applications March 8 to March 12
Student Application Period March 29 to April 9
Accepted Students Announced April 26

About the Inclusive Design Institute

The Inclusive Design Institute (the Adaptive Technology Resource Centre until mid 2010) is a not-for-profit organization that develops open source software for use by the main stream, but with a focus on accessibility and usability by people with disabilities. Many people with disabilities are unable to participate fully in Internet activities when developers don't attend to accessibility. In addition to its development activities, the IDI educates developers about accessibility issues, and why it is necessary, not only from a legal perspective but also from a social perspective, that people with disabilities be included in all everyday human activity, including access to information and the Internet.

The institute is located at the Ontario College of Art and Design (OCAD) (as of August 2010). The IDI activities are supported by a core team of 30 (+/-) multi-disciplinary professionals from varied backgrounds including cognitive science, computer science and engineering, education, psychology, sociology, and occupational therapy, among others. The IDI is a collaboration of 8 Canadian post secondary institutions. In addition to researching and developing leading edge software, the IDI introduces accessibility into emerging international standards. Such standards include those of the W3C, playing a large role in the organization's Web Accessibility Initiative, the IMS Global Learning Consortium, the IDI being largely responsible for the introduction of the IMS AccessForAll standard, and ISO, playing a lead role in the introduction and development of the ISO 24751 collection of accessibility standards.

Project Ideas for GSoC 2010

ATutor Project Ideas

The following is a list of potential GSoC projects for students. These are only suggested projects, outlining the types of things the ATutor community has been asking for. Students are welcome to suggest their own projects if they have other ideas.

To communicate directly with the ATutor development team, open an IRC session at irc:// and join the #atutor channel. The core developers are generally around 9:00 to 5:00 Monday to Friday Eastern Standard Time (GMT-5)

1.Google Open Social Gadget for AChecker

(1 position available)
Difficulty: medium
Mentor Harris Wong (Lead Developer ATutor Social)

In 2009 the ATRC/IDI introduced the Google OpenSocial Standard into its ATutor Learning Management System (LMS). OpenSocial is made up of two parallel standards used to develop standardized social networking applications, the Container Standard, for developing social networking host systems, and the Gadget Standard, for developing applications that plug into an OpenSocial social networking environment. ATutor itself has implemented the Container standard, which, in addition to providing various social networking functionality, allows users of ATutor Social to link so called "Gadgets" applications into their social networking environment. There are more than 140,000 open social gadgets currently available for just about any type of feature, from dictionaries, to weather forecasts, to video games, to programming environments. There are few limits to the types of features gadgets can provide.

This project will involve developing an Open Social gadget for AChecker, an open source Web content accessibility checker. AChecker evaluates Web content for conformance with various international accessibility standards, to ensure that content will be accessible to everyone, including people with disabilities. With an AChecker Gadget available, users of social networks like iGoogle, MySpace, LinkedIn, Hi5 etc, will be able to evaluate their Web content, and ensure it is not creating barriers for potential visitors to their sites.

The candidate students will have a strong understanding of Javascript, at least a passing understanding of PHP, and an understanding of the RESTful Web service protocol, the protocol that will be used to allow the gadget to communicate with the AChecker Web services.

Building OpenSocial Apps
AChecker Web Services

The project will involve designing and developing three gadget views: a default view with basic AChecker functionality used to review Web content accessibility, a larger canvas view with added features including administrator features, and a smaller profile view, with limited features used in a smaller space such as a side menu or a profile box within a larger page. In each case Javascript will be used to generate XML with which to wrap the Gadget input and send it to AChecker, which in turn will evaluate the content and return XML with the data for an accessibility report, with which the gadget will render the output in an HTML report format.

Gadget Application Views

2.ATutor Mobile Theme

(1 position available)
Mentor Greg Gay (ATutor Lead)

With mobile computing so prevalent these days, students and instructors using ATutor want to be able to do their coursework on their mobile devices. In this project the candidate will design and develop a series of mobile themes for ATutor, each adapting to a mobile platform (Android, iPhone, Blackberry).

These themes will be based on the Savant open source PHP templating system, also used to develop desktop themes for ATutor. Savant allows theme designers to separate the presentation from the data that gets rendered when a Web page is generated.

The candidate students must have a strong grasp of HTML and CSS, have familiarity with PHP, and have a good eye for aesthetics, able to create an eye catching design, and able to implement that design as a set of HTML/CSS templates. The theme set will adapt to various mobile devices through a device detector built into ATutor in the last release in preparation for mobile development activities.

Work will involve adapting the primary ATutor screens, minimizing features displayed when a mobile device is detected, adjusting various shared data output screens to display only critical data, and developing header, footer, and menu templates for the three mobile platforms being supported. Savant being a cascading templating system, the candidate will create a single set of data screen templates that will adapt to each platform, and develop three sets of primary templates (header, footer, menus) specific to each platform.


ATutor Theme Designer Documentation

3.ATutor Social Mobile App

(3 positions available)
Difficulty: difficult
Mentor Harris Wong (Lead Developer ATutor Social)
Mentor Greg Gay (ATutor Lead)
Mentor Cindy Li (Lead Programmer ATutor)

In this project the student will develop a mobile version of ATutor Social for one of the three supported mobile platforms (iPhone, Android, Blackberry). Each App will be based upon Web services to be added to ATutor Social as part of this project, extending current Web services in ATutor, so network activity, contacts, individual and group communications, and social gadgets can be accessed through a mobile device.

This project can potentially provide work for several students, each developing for a different mobile platform, potentially working with the candidate for project 2

The candidate must have either strong Java programming skills, for developing Andriod or Blackberry Apps, or have experience with the UIKit Framework, Cocoa, and Objective-C for developing iPhone Apps. All candidates should have good Javascript and/or AJAX skills and be familiar with RESTful Web services.

The candidate will design an App that will communicate with the Web services of a user's home ATutor Social network, much along the lines of the Facebook mobile app. The app will potentially be made up of five panels:

  1. Login to ATutor Social: Here users can type a URL to an ATutor Social network, and via OAuth authentication (available in ATutor currently, but other Auth methods are possible), login to their network. After logging in once, future logins will occur automatically on that device.
  2. My Network Activity: This panel will return a live list of the activities in the person's ATutor Social Network. This will be the default screen that opens when a users accesses ATutor Social through the App.
  3. My Contacts: Here users will be able to browse through their contact list and be able to communicate with contacts through the ATutor Social inbox.
  4. My Gadgets: Here users will be able to access the OpenSocial gadgets they have installed in the ATutor Social networking environment,
  5. My Groups: Here users will be able to access their ATutor Social groups, keep up on communication happening in the group, and be able to post to the group's message board.

Android Developers
iPhone Developer Program
BlackBerry Developer Zone

Facebook iPhone App (potential model for ATutor Social)

4.ATutor Social Open Social Gadget

(1 position available)
Difficulty: medium
Mentor Harris Wong (Lead Developer ATutor Social)

With the rise of Facebook, MySpace, and iGoogle, to name a few popular social networks, it is becoming increasingly more desirable to be able to integrate networks so users can monitor activities across them from a single location. Users of ATutor Social are able to link their other social networks into their ATutor network, and potentially manage them all from within ATutor, but it is not currently possible to access ATutor Social from these other networks. For instance, linking ATutor Social into Facebook or iGoogle.

This project will have students design and develop the Open Social equivalent to the mobile Apps described in Project 3, allowing ATutor social users to access other ATutor Social network, much like a person could link Facebook into ATutor Social. The five panels will include:

  1. Login
  2. My Network Activity
  3. My Contacts
  4. My Gadgets
  5. My Groups

ATutor Social users can link into the central Shindig Open Social server, and link to the larger ATutor Social network, able to search out friends and communicate with them on other ATutor Social networks.

The candidate students will have a strong understanding of Javascript, at least a passing understanding of PHP, and an understanding of the RESTful Web service protocol, the protocol that will be used to allow the gadget to communicate with the ATutor Social Web services.

Building OpenSocial Apps

5.OpenCaps Video Captioning Module for ATutor

(1 position available)
Difficulty: medium
Mentor Heidi Hazleton (Former ATutor developer, current OpenCap Lead Developer)

In terms of accessibility, and supporting learners with accessibility needs, ATutor is second to none. ATutor was developed specifically to fill the need for an online learning environment that would be accessible to everyone. It is currently to only LMS to conform with the WCAG 2 AA accessibility guidelines.

In keeping with its focus on accessibility, in 2008 ATutor produced the first implementation of the ISO FDIS 24751 standards, also known as AccessForAll (AFA) . These accessibility standards define ways for users to describe personal preferences for learning content, and on the other hand they define ways to describe adaptable content that matches users' personal preferences. So for instance, a person who is deaf can define in his or her preferences that text alternatives for audio content are preferred. Thus when a text alternative is available, it can either replace the audio version or append to it when that person views the content.

OpenCaps is a Web-based open source video captioning tool. It provides a natural extension of AFA in ATutor, allowing elearning content authors to create text alternatives for video content.

The candidate must have a strong working knowledge of PHP. Javascript and AJAX knowledge would also be helpful.

The project will involve modifying the template module code for ATutor to wrap around the OpenCaps application and integrate it into ATutor, adding to its collection of elearning content authoring tools. The project will also involve integrating the OpenCaps module with the ATutor File Manager making it easy to move files seamlessly between the caption editor and the ATutor content editor for developing AFA compatible content.


ATutor Module Developer Documentation

6.SignLink Studio Module for ATutor

(1 position available)
Difficulty: medium
Mentor: Heidi Hazelton (Former ATutor developer, SLS CMS lead developer)

Much like the OpenCaps ATutor Module project described in Project 5, this project will also extend the ATutor content authoring environment to make it possible to integrate sign content as elearning course content. It will also extend the AccessForAll capabilities in ATutor, making it possible to use sign content as alternatives when authoring AFA adapted course materials.

The candidate must have strong PHP programming skills. Javascript and AJAX knowledge would also be helpful.

Signlink studio is a free sign language authoring tool and content management system (CMS). There are two parts to Signlink Studio: the authoring tool client application, that installs on a Windows or Mac computer, and the CMS system that resides on a Web server, used to manage sign content and present it on the Web. The CMS also provides a sign-based forum, allowing users to submit their forum posts as sign video. This allows ASL signers (among others), who may not understand written language, to communicate without the need to read in another language. As shown in the screenshot to the right, the primary window above presents the signer, the panel below displays the table of contents, or SignLinks, which make it possible to navigate to specific locations within the sign video. To the right is a transcript of the signing in English.

This project will involve integrating the Signlink CMS into ATutor as an addon module that extends the ATutor content editor and file manager, and extends the forums adding sign-based communication to ATutor. Similar to the OpenCaps module, the Signlink Studio CMS will be wrapped in ATutor module code, creating an addon that installs the CMS software, and integrates it into ATutor. This will involve modifying the ATutor module installer so it installs the Signlink CMS as part of the module installation process, as well as developing utilities that will export parts of Signlink content as individual files (swf, flv, txt...) that can be used by the AFA content editor to created adapted version of content for learners who are deaf or hard of hearing. Finally, components of the Signlink forums will be linked into ATutor as an addon forum that can be enabled to enhance the standard forum, or to replace it.

SignLink Studio

SignLink Studio CMS

ATutor Module Developer Documentation

ÆGIS Project Ideas

ÆGIS is a network of international partners which includes the IDI, working to ensure that emerging information and communication technologies (ICT) are designed inclusively, thereby supporting our commitment to equal access and helping to prepare ICT businesses to meet the growing global demand for products and services that provide accessibility to people of all abilities.

ÆGIS stems from a close partnership with a major European open source accessibility initiative of the same name: ÆGIS (Europe). The Inclusive Design Institute is the point of contact between the two groups.

7. tagin! / WIPS integration

(1 position available)
Mentor: Jorge Silva (Mobile Accessibility Developer)

The WiFi-based Positioning System (WIPS) uses public wireless network information to determine the position of WiFi-capable devices.

WIPS can be used to provide floorplan-based estimates of position indoors. These estimates include human-readable location information such as building name and floor number, as well as a floorplan image and x,y coordinate for each estimate.

tagin!, is a text-only location and context-awareness service that enables users to save and retrieve location-specific tags and other location information.

Both tagin! and WIPS present overlapping and complementary functionality that, if combined, may serve as the basis for the development of an indoor navigation service for people with visual impairments.

The candidate will explore the best way to combine these two projects and conduct the merge as appropriate. Knowledge of SQL, XML and Python are essential.

WIPS site:

WIPS Video demo:

WIPS Code:

tagin! site:

tagin! code:

tagin! demos:

8. Floorplan management module for WiFi-based Indoor Positioning System

(1 position available)
Mentor: Jorge Silva (Mobile Accessibility Developer)

The WiFi-based Positioning System (WIPS) uses public wireless network information to determine the position of WiFi-capable devices.

WIPS relies on a database of floor plans and WiFi calibration scans to handle position estimate requests (x,y coordinates) inside a building. WIPS has been successfully deployed at the University of Toronto, however, in order to enable its application in other locations, a utility for adding, retrieving and deleting floor plans is required.

Depending on the abilities and expertise of the candidate, this utility may be created as a web- or python-based interface. Knowledge of SQL, XML and Python is required.

WIPS site:

WIPS Video demo:

WIPS Code:

9. mEADL: Alternative Wheelchair Access to Android

(1 position available)
Mentor: Jorge Silva (Mobile Accessibility Developer)

mEADL is a collection of open source and open hardware applications that may be used to extend the functionality of powered-wheelchairs and Electronic Aids for Daily Living (EADL).

The goal of mEADL is to enable access to mobile devices through the same interfaces that powered-wheelchair users employ to move around, thus allowing them to easily select between controlling their wheelchair or controlling their mobile device.

The candidate will be familiar with Android programing. Additional experience with embedded hardware and microcontrollers (e.g., Atmel, Arduino, etc...) is an asset.

mEADL site:

mEADL video demo:

  • No labels