GSoC/2009

Ideas for Google Summer of Code 2009

Information for Students
These ideas were contributed by our developers and users. They are sometimes vague or incomplete. If you wish to submit a proposal based on these ideas, you may wish to contact the developers and find out more about the particular suggestion you're looking at.

Being accepted as a Google Summer of Code student is quite competitive. Accepted students typically have thoroughly researched the technologies of their proposed project and have been in frequent contact with potential mentors. Simply copying and pasting an idea here will not work. On the other hand, creating a completely new idea without first consulting potential mentors is unlikely to work out.

If there is no specific contact given you can ask questions on SMC discussion mailing-list ( smc-discuss@googlegroups.com ) or in the IRC channel ( #smc-project channel in Freenode.net server )

Adding a Proposal
When adding an idea to this section, please try to include the following data:
 * if the application is not widely known, a description of what it does and where its code lives
 * a brief explanation
 * the expected results
 * pre-requisites for working on your project
 * if applicable, links to more information or discussions
 * mailing list or IRC channel for your application/library/module
 * your name and email address for contact (if you're willing to be a mentor)

If you are not a developer but have a good idea for a proposal, get in contact with relevant developers first.

Jabber buddy bot with Dict support and KDE Plasmoid with configurable dict server
Brief Description: Project requirement is to develop a Jabber protocol based bot which can connect to a dict server(configurable) and people can add that bot to their Gmail/Jabber contacts to check the meaning of words. Second part of the project is to make the existing KDE dict plasmoid configurable so that users can connect to any dict server(including the one running on localhost). Current KDE dictionaly plasmoid is not configurable.

Expectation
 * 1) The jabber bot should be written using python-dict APIs and python-jabber APIs. The backend server details should be configurable. Auto  authentication of buddy requests should be handled.
 * 2) Bot should log the words for which entry is not found in dict server
 * 3) KDE desktop dictionary plasmoid should be able to connect any server/port configured. The patches should be submitted to upstream

Knowledge Prerequisite: Knowledge of Python for writing the bot & Plasmoid. A basic understanding of how DICT works is recommended

Port Dhvani to Other Operating systems and writeSpeech dispatcher Driver
Brief Description: Dhvani is a text to speech system designed for Indian Languages. The aim of this project is to ensure that literacy and knowledge of English are not essential for using a Computer. Project requirement is to port Dhvani to Windows/Mac. Second part is to write a driver for speech dispathcer. Dhvani has generic driver for speech dispatcher and that is not efficient and cannot use many features of dhvani. Write a driver for speech-dispatcher and integrate it with Orca so that it works as Screenreader

Expectation 1. Dhvani should be able to run as standalone binary in other Operating systems. APIs also need to tested 2. Dhvani should be able to work as screenreader with speech-dispatcher

Knowledge Prerequisite: Good knowledge of C. Familiarity with SDL would be nice, but not required.

'Material Prerequisite: A computer with Windows/Mac OS development setup in addition to GNU/Linux Knowledge prerequisite : Knowledge of C.

Indic Calendrical Calculation Library
Brief Description: Create a calendrical calculation library that will be usable from Python/C++ programs. Writing a C++/C library and writing a Python wrapper for it is enough. This can be used to display Indian calendars on Free Desktops Expectation 1. Design a Calendar Library for Indian Languages. 2. Atleast one calendar should be functional at the end of Project. Student can choose the calendar.(for eg: Kollavarsha or Bengali Calendar or Tamil Calendar) 3. Integrate the Calendar to KDE Calendar system

Knowledge prerequisite : Knowledge of C/C++, Python. and Maths!