Jump to: navigation, search
Assim Deodia
@ assim.deodia at
This user is a Under Graduate student– Information Technology at Netaji Subhas Institute of Technology


Listen and Spell

I am working on Listen_and_Spell activity as a part of my GSoC project under the mentor ship of Dafydd Harris. This section maintain the updates and the discussion regarding the project.

git Repository: git Repository
Project Page: GSoC page

Weekly Updates

May 24th - May 31st

The Start

Initial discussion with daf on the project design which finalized

  • Using ElementTree module of python as the parser for XML dictionary files.
  • Using SQLite as a temporary storage space for the parsed dictionary so that it is easy to access data without parsing the XML again.

Work Details

  • Started with reading about python especially ElementTree class
  • Made a small sized dictionary file from gcide and making a basic class which initially only parsed the file and display its content in more readable form.
  • Modified the XMl file to remove all the characters starting with "#&" as they were unreadable by parsers and were giving errors of "Unidentified entity"
  • Applied for git repository.

June 10th - June 14th

Work Details

  • Extended the class structure to include some more functions
  • Read about SQLite
  • Added the SQLite interface to the dictionary class which parses the dictionary and stores all the data in a database. This class is available at the git repository.
  • Fixed the error of "Unidentified entity" by adding the "DOCTYPE", which defines entities for xml files, to all the XML files.
  • Again applied for git repository as it's not been created yet.
  • Repository created :). First git commit
  • Bug fixing
  • Second git commit

Issues to be tackled

  • The "DOCTYPE" has to be included in each xml file separately and since the size of DOCTYPE section is large, it is adding to file size. It can in placed in one file and that file can be included in each xml dictionary.
  • GCIDE dictionary's are categorized by starting letters which have to re-categorized with respect to difficulty level.
  • The XML schema of the GCIDE dictionary are different from what required. It has to redesigned according to required schema.
  • Merging of above class can be done only after the above task are completed.

June 15th - June 21st

Work Details

  • Downloaded the Wordnet Dictionary (Size after dumping in sql server: 379 MB)
  • Modified the schema to words + definition + sample only and removed all the extra tables
  • removed all the words containing special characters (like '.', '-' etc) from the dictionary and their corresponding definition and sample. (using script index.php from git)
  • Size after reduction(sql dump): 24 MB.
  • Converted (Using script [1] MySQL to SQLite3 (shell script) ) to SQLite database: dict.db (Size 12 MB)
  • Added a new column `length` which stores length of each word
  • Created a word class in which interfaces with SQLite DB.
  • Modified dictionary class to remove the interface from XML and interface with SQLite DB
  • Bug Fixing
  • Third git commit
  • Forth and Fifth commit: removing unused files
June 21st
  • 6th commit: V1.0 of listen and spell(command line version)

Immediate task at hand

  • Merging above class with talkntype and create V1.0 of listen-spell
  • Improving voice quality
  • Testing the application
  • Include new features( writing the response in the dictionary)
  • Implement a keyboard listener with callback in command line version Not needed

June 22nd - June 29th

Work Details

  • GUI skeleton is ready. Game can be roughly played on with it.
  • Discussed with espeak developer about using IPA notation with espeak(which uses Kirshenbaum notation ).
    • A routine need to be written which can convert IPA notation from wiktionary into espeak readable format. This would be used only for those words for which user thinks, are not pronounced correctly by espeak.
  • Build dotconf for F8, F9 and OLPC-3 branch. Some problem is occurring with respect to key permission. Once it is solved speech-dispatcher would be into OLPC repository.

Immediate task at hand

  • debugging the application
  • Sugarize the activity
  • All previous tasks

June 30th - July 6th

Work Details

  • Tried installing Sugar Desktop Enviromnent under FEdora 7 but it failed. Yum installl gave no error and installed it successfully but while running sugar it gave the error <error to be pasted>
  • Installd fresh Fedora 8 and installed sugar jh-build on it. Running successfully.
  • Fix some error which came while starting the GUI
  • Imported dotconf in F-8, F-9, F-10(devel), OLPC-3
  • Applied for an XO

Immediate task at hand

  • Sugarize the activity and modifying the looks of it
  • Installing speech-dispatcher and using it for further speech synthesis
  • categorizing words w.r.t their context
  • Debugging the application

July 7th - July 14th

Work Details

  • Installed sugar-jhbuild successfully on fedora 8.
  • Packaged activity as a .xo package. It can be run on Xo now and also as an independent activity.
  • Modified the database structure to:
    • Include phoneme data for those words which are not pronounced correctly
    • Score(number of times played, number of times correctly answered etc) of each word are automatically updated.
    • Words has been categorized according to their context.
  • GUI modified.
    • Replaced welcome label with text view for more descriptive output.
    • Fixed the large size of button thus getting more area for console output
  • Other bug fixes

Immediate task at hand

  • Installing speech-dispatcher and using it for further speech synthesis
  • Adding activity tool-bar to the activity.
  • Merging the activity with other services like journal
  • Add a auto scrolling bar for console output
  • Generate the phoneme data for all words and update them in phoneme table
  • Debugging the application

July 15th - July 21st

Work Details

  • Not much work done this week expect for installing Speech-dispatcher on Fedora 8. I am still not able to run it on my fedora due to some ALSA bug
  • Waiting for XO application status.

Immediate task at hand

  • Get speech-dispatcher installed and running in Fedora 8

July 22nd - July 29th

Work Details

  • Got speechd working on my system
  • Added support for speech-d
  • Database further modified
  • Activity is now sugar ready (can be installed on XO). checkout sugar-branch to use it| sugar branch
  • Added activity toolbar
  • Tried using phoneme data for synthesis but speechd does not provide and API's to interact with espeak directly. Have to figure out some other way to do it

Immediate task at hand

  • Extend Activity toolbar
  • Testing of XO package
  • Provision for accessing and modifying the voice parameters.

July 30th - August 12th

Work Details

  • GUI Improved
  • Configuration panel added
  • Storing and Retrieving of speech parameter enabled
  • All words are ranked based on number of search result (using yahoo api's)
  • Many small bug fixed
  • ToolBar improved
  • Fixed closing of activity

Immediate task at hand

  • Word Sorting Algorithm
  • GUI improvement
  • Testing of whole activity
Personal tools
  • Log in
  • Login with OpenID
About OLPC
About the laptop
About the tablet
OLPC wiki