GSoC/2009: Difference between revisions

From SMC Wiki
Line 22: Line 22:
If you are not a developer but have a good idea for a proposal, get in contact with relevant developers first.
If you are not a developer but have a good idea for a proposal, get in contact with relevant developers first.
== Ideas==
== Ideas==
=== Dictionary ===
===Jabber buddy bot with Dict support and KDE Plasmoid with configurable dict server===
We need two things here :
#A Jabber bot that supports the DICT protocol ( so we can run a bot that will serve word meanings ) . If this bot can learn/modify words, it will be better.
#A KDE 4 Plasmoid that does the same. There is already a KDE Plasmoid that supports dict.org. But it cannot be configured to support other dictionary servers right now, as of KDE 4.2. We need to find out the current status of this plasmoid.
Knowledge Prerequisite: Knowledge of Python OR C++ for writing the bot & Plasmoid. A basic understanding of how DICT works is essential.


=== Changes to Dhvani TTS Engine ===
'''Brief Description:'''
[http://dhvani.sourceforge.net/ 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 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.


==== Porting Dhvani to Windows/Mac and Sound system change ====
'''Expectation'''
Right now, Dhvani uses ALSA as sound system. An additional SDL based sound system is required to make it work on other operating systems
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 Prerequisite:''' Knowledge of Python  for writing the bot & Plasmoid. A basic understanding of how DICT works is recommended
Knowledge of C. Familiarity with SDL would be nice, but not required.


'Material Prerequisite:
===Port Dhvani to Other Operating systems and  writeSpeech dispatcher Driver ===
A computer with Windows/Mac OS development setup in addition to GNU/Linux
'''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


==== Speech dispatcher driver and Orca integration  ====
'''Expectation'''
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
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 : Knowledge of C.
'''Knowledge Prerequisite''': Good knowledge of C. Familiarity with SDL would be nice, but not required.


=== Calender===
'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
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++ and Python.
'''Knowledge prerequisite''' : Knowledge of C/C++, Python. and Maths!

Revision as of 14:44, 18 February 2009

Ideas for Google Summer of Code 2009

Guidelines

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.

Ideas

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!