<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://wiki.smc.org.in/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Nandaja</id>
	<title>SMC Wiki - User contributions [en]</title>
	<link rel="self" type="application/atom+xml" href="https://wiki.smc.org.in/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Nandaja"/>
	<link rel="alternate" type="text/html" href="https://wiki.smc.org.in/Special:Contributions/Nandaja"/>
	<updated>2026-05-09T18:18:25Z</updated>
	<subtitle>User contributions</subtitle>
	<generator>MediaWiki 1.40.1</generator>
	<entry>
		<id>https://wiki.smc.org.in/index.php?title=GSoC/2015/Project_ideas&amp;diff=10715</id>
		<title>GSoC/2015/Project ideas</title>
		<link rel="alternate" type="text/html" href="https://wiki.smc.org.in/index.php?title=GSoC/2015/Project_ideas&amp;diff=10715"/>
		<updated>2015-02-16T08:57:19Z</updated>

		<summary type="html">&lt;p&gt;Nandaja: /* Create an Android IME */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;center&amp;gt; &lt;br /&gt;
&amp;lt;font color=&amp;quot;green&amp;quot;&amp;gt; &amp;lt;big&amp;gt;&#039;&#039;&#039;Apart from the following ideas , you can propose your own ideas&#039;&#039;&#039;&amp;lt;/big&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Potential Mentors=&lt;br /&gt;
# Santhosh Thottingal (&#039;&#039;&#039;santhosh&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Baiju M (&#039;&#039;&#039;baijum&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Praveen A (&#039;&#039;&#039;j4v4m4n&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Rajeesh K Nambiar (&#039;&#039;&#039;rajeesh&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Anivar Aravind (&#039;&#039;&#039;anivar&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Vasudev Kammath (&#039;&#039;&#039;copyninja&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Jishnu Mohan (&#039;&#039;&#039;jishnu7&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Hrishikesh K.B (&#039;&#039;&#039;stultus&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Nandaja Varma (&#039;&#039;&#039;gem&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Navaneeth (&#039;&#039;&#039;nkn__&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Ershad K (&#039;&#039;&#039;ershad&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Nishan Naseer (&#039;&#039;&#039;nishan&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
&lt;br /&gt;
=Ideas for Google Summer of Code 2015=&lt;br /&gt;
* Please Read the [http://wiki.smc.org.in/GSoC/2015#FAQ FAQ]&lt;br /&gt;
* If you want to propose an idea, please do it in [http://lists.smc.org.in/listinfo.cgi/student-projects-smc.org.in student projects mailing list]  of [http://smc.org.in Swathanthra Malayalam computing]&lt;br /&gt;
&lt;br /&gt;
=Projects with confirmed mentors=&lt;br /&gt;
&lt;br /&gt;
== ibus-braille module modifications ==&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Project&#039;&#039;&#039;ː&lt;br /&gt;
&lt;br /&gt;
This project will be to make improvements on the [[GSoC/2014/Project_ideas#Adding_Braille_Keyboard_layouts_for_Indian_Languages_to_m17n_Library | project]] that was successfully completed by a student under SMC. The remaining tasks areː&lt;br /&gt;
#Integrate Ibus-Braille with Liblouis&lt;br /&gt;
#Create Table editor for Liblouis&lt;br /&gt;
#Create a web version and host it.&lt;br /&gt;
#Add more indian languages to Liblouis&lt;br /&gt;
#Add facility to write direct braille Unicode characters&lt;br /&gt;
#Remove espeak dependency and make accessible via orca itself.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Confirmed Mentor&#039;&#039;&#039;: Samuel Thibault&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;How to contact the mentor&#039;&#039;&#039;: IRC - youpi on #smc-project on Freenode &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;: &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;What the student will learn&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
== Varnam based ==&lt;br /&gt;
&lt;br /&gt;
=== Varnam Android Keyboard ===&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Project&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
Add support for varnamproject into android and have a native keyboard like indic keyboard. It can be integrated into Indic keyboard or have it as a separate keyboard.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039;: Advanced&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Confirmed Mentor&#039;&#039;&#039;: Navaneeth K. N.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;How to contact the mentor&#039;&#039;&#039;: IRC - nkn__ on #smc-project on Freenode &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;: &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;What the student will learn&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
=Projects with unconfirmed mentors=&lt;br /&gt;
== A spell checker for Indic language that understands inflections ==&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Project&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
libindic project has a spellchecker written using python with a not so simple algorithm. But still it is not capable of handling inflection and agglutination occurring in Indian languages especially south Indian languages. The dictionary we have for Malayalam spellchecker have about 150000 words. Of course we can expand the dictionary, but that doesn&#039;t have much value since words can be formed in Malayalam or Tamil etc by joining multiple words. In addition to that, words get inflected based on grammar forms(sandhi), plural, gender etc. Hunspell has a system to handle this, but so far nobody succeeded in getting it working for multi level suffix stripping as required for Malayalam. Some times a Malayalam word can be formed by more than 5 words joining together. We will need a word splitting logic or a table taking care of all patterns. The project is to attempt solving this with hunspell. If that is not feasible(hunspell upstream is not active), develop an algorithm and implement it.&lt;br /&gt;
&lt;br /&gt;
Recently Tamil attempted developing a spellchecker using Hunspell with multi level suffix stripping. You can see the result here https://github.com/thamizha/solthiruthi. &lt;br /&gt;
Our attempt should be first to use Hunspell to achieve spellchecking with agglutination and inflection. Probably it will require lot of scripting to generate suffix patterns, we can ask help from existing language communities too. If Hunspell has limitation with multi level suffxes- sometimes Indian languages require more than 5 levels of suffix stripping, we need to document it(bug and documentation) and try to attempt python based solution on top of libindic framework.&lt;br /&gt;
&lt;br /&gt;
The project is not about coding an existing algorithm, but to develop and implement an algorithm.&lt;br /&gt;
&lt;br /&gt;
Hunspell&#039;s limitations can be understood from [[User:%E0%B4%B8%E0%B4%A8%E0%B5%8D%E0%B4%A4%E0%B5%8B%E0%B4%B7%E0%B5%8D/HunspellConversation| this conversation]] we had with the author of Hunspell in 2008&lt;br /&gt;
&lt;br /&gt;
Homework to do before submitting applications:&lt;br /&gt;
# Use Hunspell in any Indian language like Malayalam for spell correction in editors or word processors and understand the limitations&lt;br /&gt;
# Study the nature of inflection and agglutination in Indian languages, read existing documents on this(ask for documents too) and note down your observations&lt;br /&gt;
# Study Hunspell and other spellcheckers to see how this problem is addressed&lt;br /&gt;
# Understand how a spell checker works. How to write a spellchecker from scratch?&lt;br /&gt;
# Come up with a plan about addressing the issue.&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;[https://savannah.nongnu.org/task/index.php?12558 Savannah Task]&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039;: Advanced&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Confirmed Mentor&#039;&#039;&#039;: &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;How to contact the mentor&#039;&#039;&#039;: &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;: Average level understanding of grammar system of at least one Indian language and complete the homework as listed above.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;What the student will learn&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
==Indic rendering support in ConTeXt==&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Project&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
ConTeXt is another TeX macro system similar to LaTeX but much more suitable for design. To find more information about ConTeXt, see the wiki http://wiki.contextgarden.net/Main_Page. ConTeXt MKII  have Indic language rendering support using XeTeX. but MKII is deprecated, and the new MKIV backend doesn&#039;t support Indic rendering yet. The aim of this project is to add support to Inidic rendering to ConTeXt MKIV. XeTeX is using Harfbuzz to do correct Indic rendering.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;More Details&#039;&#039;&#039;: A partially working patch by Rajeesh for MKIV lua code is available. ConTeXt mkii (deprecated) can work with XeTeX backend for Indic rendering. Here is a sample file:&lt;br /&gt;
 \usemodule[simplefonts]&lt;br /&gt;
 \definefontfeature[malayalam][script=mlym]&lt;br /&gt;
 \setmainfont[Rachana][features=malayalam]&lt;br /&gt;
 \starttext&lt;br /&gt;
 മലയാളം \TeX ഉപയോഗിച്ച് ടൈപ്പ്സെറ്റ് ചെയ്തത്&lt;br /&gt;
 \stoptext&lt;br /&gt;
Generate the output using command&lt;br /&gt;
 texexec --xetex &amp;lt;file.tex&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;[https://savannah.nongnu.org/task/index.php?12559 Savannah Task]&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039; : Advanced&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Confirmed Mentor&#039;&#039;&#039; : &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;How to contact the mentor&#039;&#039;&#039;: &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;: Understanding of the TeX system, experience in either LaTeX or ConTeXt and basic understanding of Indic language rendering. MKIV uses Lua, familiarity with Lua, opentype specifications or Harfbuzz will be added advantage.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;What the students will learn&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
==Language model and Acoustic model for Malayalam language for speech recognition system in CMU Sphinx==&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Project&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
CMU Sphinx is a large vocabulary, speaker independent speech recognition codebase and suite of tools, which can be used to develop speech recognition system in any language. To develop an automatic speech recognition system in a language, acoustic model and language model has to framed for that particular language.  Acoustic models characterize how sound changes over time. It captures the characteristics of basic recognition units. The language model describes the likelihood, probability, or penalty taken when a sequence or collection of words is seen. It attempts to convey behavior of the language and tries to predict the occurrence of specific word sequences possible in the language. Once these two models are developed, it will be useful to every one doing research in speech processing. For Indian languages Hindi, Tamil, Telugu and Marati, ASR systems have been developed using sphinx engine. In this project work is aimed at developing acoustic model and language model for Malayalam.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Background Reading&#039;&#039;&#039;&lt;br /&gt;
* [http://www.cs.cmu.edu/~gopalakr/publications/spdatabases_specom05.pdf &#039;Development of Indian Language Speech Databases for Large Vocabulary Speech Recognition Systems&#039;], Gopalakrishna  Anumanchipalli, Rahul Chitturi, Sachin Joshi, Rohit Kumar, Satinder Pal Singh, R.N.V. Sitaram, S P Kishore&lt;br /&gt;
* [http://www.aclweb.org/anthology/W/W12/W12-5808.pdf &amp;quot;Automatic Pronunciation Evaluation And Mispronunciation Detection Using CMUSphinx&amp;quot;], Ronanki Srikanth, James Salsman&lt;br /&gt;
* http://www.speech.cs.cmu.edu/&lt;br /&gt;
* http://cmusphinx.sourceforge.net/wiki/tutorial&lt;br /&gt;
* [http://www.ijarcsse.com &amp;quot;HTK Based Telugu Speech Recognition&amp;quot;], P. Vijai Bhaskar, AVNIET ,Hyderabad, Prof. Dr. S. Rama Mohan Rao, A.Gopi &lt;br /&gt;
* [http://www.cs.cmu.edu/~araza/Automatic_Speech_Recognition_System_for_Urdu.PDF &amp;quot;Design and  Development of an Automatic Speech Recognition System for Urdu&amp;quot;], Agha Ali Raza,  M.Sc. Thesis, FAST‐National University of Computer and Emerging Sciences &lt;br /&gt;
* [http://www.ccis2k.org/iajit/PDF/vol.6,no.2/11IASRUCSS186.pdf &amp;quot;Investigation Arabic Speech Recognition Using CMU Sphinx System&amp;quot;], Hassan Satori1, 2, Hussein Hiyassat3, Mostafa Harti1, 2, and Noureddine Chenfour&lt;br /&gt;
* [http://www.try.idv.tw/static-resources/homework/pr/PR_Final_Report.pdf &amp;quot;Understanding the CMU Sphinx Speech Recognition System&amp;quot;], Chun-Feng Liao&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039; : &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Confirmed Mentor&#039;&#039;&#039; : &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;How to contact the mentor&#039;&#039;&#039;: &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;: &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;What the students will learn&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==libindic Project Based==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===libindic Project Improvements===&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Project&#039;&#039;&#039;: &lt;br /&gt;
&lt;br /&gt;
This is set of ideas needed to improve the existing libindic infrastructure. We have decided following tasks as part of this project&lt;br /&gt;
&lt;br /&gt;
# Provide REST API to libindic without disturbing existing JSONRPC API&lt;br /&gt;
# Improve the Transliteration module&lt;br /&gt;
# Integrate [https://github.com/Project-SILPA/flask-webfonts Flask Webfonts] extension with libindic to provide Webfonts support.&lt;br /&gt;
&lt;br /&gt;
==== Provide REST like API for libindic ====&lt;br /&gt;
&lt;br /&gt;
libindic provides JSONRPC API currently which is also utilized by the templates of framework. JSONRPC is not well supported in all languages and results in [https://en.wikipedia.org/wiki/Not_invented_here NIH code]. So we would like to provide REST like HTTP based API&#039;s for libindic and at the same time leave the current JSONRPC code untouched for backward compatibility reasons.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Objectives&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
* Develop module or use existing module to provide REST like API&#039;s&lt;br /&gt;
* API should support GET and POST. [http://www.w3.org/2001/tag/doc/whenToUseGet.html When to use GET?].&lt;br /&gt;
&lt;br /&gt;
Many people have doubt on how the API should look like. We can give twitter API (https://dev.twitter.com/docs/api) as example &lt;br /&gt;
Sample API calls :&lt;br /&gt;
-------------------------------------------------------------&lt;br /&gt;
    POST api.silpa.org.in/payyans/ASCII2Unicode&lt;br /&gt;
    Paramets: text, font&lt;br /&gt;
    Response: JSON data&lt;br /&gt;
-------------------------------------------------------------&lt;br /&gt;
    POST api.silpa.org.in/payyans/Unicode2ASCII&lt;br /&gt;
    Paramets: text, font&lt;br /&gt;
    Response: JSON data&lt;br /&gt;
-------------------------------------------------------------&lt;br /&gt;
Generic: &lt;br /&gt;
    GET/POST (http://api.silpa.org.in/module/function_name or http://silpa.org.in/api/module/function_name)&lt;br /&gt;
    Parameters: function parameters&lt;br /&gt;
    Response: JSON encoded return value from function&lt;br /&gt;
&lt;br /&gt;
====  Improve Transliteration module ====&lt;br /&gt;
&lt;br /&gt;
We have a Transliteration module which supports transliteration from any Indic language to other Indic language and also support to English to Indic and Indic to English transliteration. Also we support IPA and ISO15919 transliteration system. But the module isn&#039;t in perfect shape and has lot of bugs. With this idea we would like to improve the following parts&lt;br /&gt;
&lt;br /&gt;
# Improve cross indic language transliteration system. Currently only Malayalam and Kannada are working without any external language support, all other Indian languages are first transliterated to Malayalam and then transliterated to target Indic language. We want to remove this cycle from source -&amp;gt; Malayalam -&amp;gt; target.&lt;br /&gt;
# English to IPA transliteration is currently broken and this needs to be fixed. See [https://github.com/Project-SILPA/Transliteration/issues/3 IPA transliteration bug].&lt;br /&gt;
# Once the IPA transliteration issue above is fixed, imporve English to Indic transliteration system using IPA. Currently English to Indic transliteration system is done using CMU Sphinx dictionary which is having limited set of words which inturn limits the output of English to Indic transliteration system.&lt;br /&gt;
# Improve IS015919 to Indic transliteration system see [https://github.com/Project-SILPA/Transliteration/issues/4 IS015919 to Indic transliteration].&lt;br /&gt;
&lt;br /&gt;
CLDR has transliteration data for Indic languages. We can explore it and see the feasibility. For an intermediate representation of the scripts either IPA can be used or ISO 15919 standard can be used. All these must be supplemented with exception rules and special case handling to achieve more perfect result.&lt;br /&gt;
&lt;br /&gt;
==== Integrating flask-webfonts extension with libindic ====&lt;br /&gt;
&lt;br /&gt;
libindic used to have a Webfonts module for serving Indian language fonts as Webfonts for browsers. During GSOC 2013 it was separated as an extension to Flask framework which can be generally used with any Flask powered app. The current code can be found at [https://github.com/Project-SILPA/flask-webfonts]. The module is not fine tuned yet so below are the objectives.&lt;br /&gt;
&lt;br /&gt;
# The module is not yet fine tuned and using it will make other modules break. This needs to be fixed (Can be checked with &#039;webfonts&#039; branch of libindic code on github.&lt;br /&gt;
# Write tests to check the functionalities.&lt;br /&gt;
# Adhere to Flask extension guidelines and submit the modules to Flask extensions directory.&lt;br /&gt;
# Write a tool which can take a directory containing fonts file or single font file and generate configuration file needed by the extension. (A possible such tool which is outdated can be found at [https://github.com/copyninja/fontinfo])&lt;br /&gt;
# Provide HTTP api&#039;s through flask extension which can expose the CSS for applications.&lt;br /&gt;
&lt;br /&gt;
For all tasks above we expect documentation, test cases from the students as deliverable. &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039; : Intermediate&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Confirmed Mentors&#039;&#039;&#039; : &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;How to contact the mentors&#039;&#039;&#039;: &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Mailing List&#039;&#039;&#039;: silpa-discuss@nongnu.org &amp;lt;preferred&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;: Python , Flask , Jinja , HTML, Javascript&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;What the students will learn&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
# Writing applications using Flask&lt;br /&gt;
# Various Transliteration system knolwedge&lt;br /&gt;
# Webfonts knowledge and writing extensions for Flask&lt;br /&gt;
# Test drive development.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Converting indic processing modules currently in libindic into javascript modules library===&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Project&#039;&#039;&#039;: &lt;br /&gt;
&lt;br /&gt;
Port some of the libindic algorithms to node modules. Several modules, alogorithms in libindic project is done in python now. But porting them to javascript helps developers. For example, cross language transliteration can be done javascript too if we port the algorithm and transliteration rules. Similarly the approximate search can be ported. A flexibile fuzzy search on the web pages will be possible if we have the algorithm in javascript.&lt;br /&gt;
&lt;br /&gt;
Proposed javascript module pattern is https://github.com/umdjs/umd&lt;br /&gt;
&lt;br /&gt;
Student proposals should have a list of alogorithms planning to port, planned demo applications, planned documentation details, and publishing details(Example: npm registry)&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039; : &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Confirmed Mentor&#039;&#039;&#039; : &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;How to contact the mentor&#039;&#039;&#039;: &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039; Mailing List&#039;&#039;&#039;: silpa-discuss@nongnu.org&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;: javascript, python&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;What the students will learn&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
===Integrate Varnam into libindic===&lt;br /&gt;
&lt;br /&gt;
Create a libindic module which hosts [http://www.varnamproject.com varnam]. This includes making a python port for libvarnam and making a libindic module which uses the python port. &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039; : Medium&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Confirmed Mentor&#039;&#039;&#039; : &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;How to contact the mentor&#039;&#039;&#039;: &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039; Mailing List&#039;&#039;&#039;: silpa-discuss@nongnu.org&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;: C, Python&lt;br /&gt;
&lt;br /&gt;
==Varnam Based==&lt;br /&gt;
&lt;br /&gt;
Varnam is a cross-platform predictive transliterator for Indian languages. It works mostly like Google&#039;s transliterate, but shows key differences in the way word tokenization is done. It has a learning system built in which allows Varnam to make smart predictions. &lt;br /&gt;
&lt;br /&gt;
There are varnam clients available as [https://addons.mozilla.org/en-US/firefox/addon/varnam-transliteration-base/ Firefox]] &amp;amp; [https://chrome.google.com/webstore/detail/varnam-ime/abcfkeabpcanobhdmcmdabejaamephaf Chrome addon] and an [https://gitorious.org/varnamproject/libvarnam-ibus/source/d939adf50024013902c27310c03ef21a9210cdcb IBus engine].&lt;br /&gt;
&lt;br /&gt;
To try out Varnam, navigate to [http://varnamproject.com/editor[http://varnamproject.com/editor]]. Currently it support Hindi and Malayalam.&lt;br /&gt;
&lt;br /&gt;
* [http://www.varnamproject.com/docs/faq FAQ]&lt;br /&gt;
* [http://www.varnamproject.com/docs Documentation]&lt;br /&gt;
* [http://www.varnamproject.com/docs/contributing Contributors guide &amp;amp; ideas to work on]&lt;br /&gt;
&lt;br /&gt;
Apart from the following ideas, you can propose your own idea. &lt;br /&gt;
&lt;br /&gt;
===Programming language bindings &amp;amp; varnam-daemon===&lt;br /&gt;
&lt;br /&gt;
Varnam is written on C which makes interoperability with other languages easy. There are language bindings available for `NodeJs` and `Ruby`. Supporting Varnam in multiple languages allows projects to use varnam easily to enable Indian language input.&lt;br /&gt;
&lt;br /&gt;
To make using varnam from different languages easier, make a cross platform standalone process which uses `libvarnam` shared library and exposes a RPC API over network. This allows any programming language with a socket support can be used with libvarnam. This also makes language bindings fairly easy because they don&#039;t have to work with the native interoperability support. The protocol can be a simple text based protocol for all the commands that `libvarnam` supports. &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039; : Advanced&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Confirmed Mentor&#039;&#039;&#039; : &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;How to contact the mentor&#039;&#039;&#039;: &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;: C&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Improvements to the REST API===&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Project&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
This includes rewrite of the current implementation in `golang` and add support for WebSockets to improve the input experience. This also&lt;br /&gt;
includes making scripts that would ease embedding input on any webpage. All the changes done will go live on[1]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039; : Advanced&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Confirmed Mentor&#039;&#039;&#039; : &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;How to contact the mentor&#039;&#039;&#039;: &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;: Basic understanding of golang and C&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;What the students will learn&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
===Create an Android IME===&lt;br /&gt;
&lt;br /&gt;
Varnam will be ported as a libindic module and it will be available on Android as part of the android SDK project which libindic has proposed. This idea is merged to the [http://wiki.smc.org.in/SoC/2014/Project_ideas#Android_SDK_for_Silpa libindic] project ideas.&lt;br /&gt;
&lt;br /&gt;
===Enable varnam&#039;s suggestions system to be used from Inscript or any other input system===&lt;br /&gt;
&lt;br /&gt;
Varnam has knowledge about lot of words. This idea proposes a method to use these words and provide suggestions for other input systems. Basically, in Varnam, the API call will be something like,&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;&amp;lt;pre&amp;gt;&lt;br /&gt;
varnam_get_suggestions (handle, &amp;quot;भारत&amp;quot;);&lt;br /&gt;
&amp;lt;/pre&amp;gt;&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This will fetch all the suggestions which has the given prefix. &lt;br /&gt;
&lt;br /&gt;
`varnam_get_suggestions` needs to keep track of the previous words and use [http://en.wikipedia.org/wiki/N-gram n-gram] based dataset to filter the results. This should also learn the words back into the word corpus that varnam is using. Filtering suggestions won&#039;t be just a prefix search, but it will have knowledge about how text can be written in the target language and provide smart filtering. Searching in a large corpus and providing real-time suggestions makes this a challenging task. &lt;br /&gt;
&lt;br /&gt;
Once this is implemented in `libvarnam`, it can be used in the ibus-engine.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039; : Advanced&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;:  C, Unicode &amp;amp; encodings&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Confirmed Mentor&#039;&#039;&#039; : &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;How to contact the mentor&#039;&#039;&#039;: &lt;br /&gt;
&lt;br /&gt;
=== Word corpus synchronization ===&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Project&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
Create a cross-platform synchronization tool which can upload/download the word corpus from offline IMEs like varnam-ibus[2]. This helps to build the online words corpus easily.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039; : Medium&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Confirmed Mentor&#039;&#039;&#039; : &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;How to contact the mentor&#039;&#039;&#039;: &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;:  Knowledge in C/golang&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;What the students will learn&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [1]: http://www.varnamproject.com&lt;br /&gt;
* [2]: https://gitorious.org/varnamproject/libvarnam-ibus/&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Grandham ==&lt;br /&gt;
&lt;br /&gt;
=== Adding MARC21 import/export feature in Grandham ===&lt;br /&gt;
&lt;br /&gt;
We need a feature in Grandham to import and parse data from MARC21 documents. We should also be able to export existing data in MARC21.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039; : High&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Confirmed Mentor&#039;&#039;&#039; :&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;How to contact the mentor&#039;&#039;&#039;: &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;: Knowledge in Ruby/Ruby on Rails&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;What the students will learn&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [1]: http://dev.grandham.org&lt;br /&gt;
* [2]: https://github.com/smc/grandham&lt;/div&gt;</summary>
		<author><name>Nandaja</name></author>
	</entry>
	<entry>
		<id>https://wiki.smc.org.in/index.php?title=GSoC/2015/Project_ideas&amp;diff=10714</id>
		<title>GSoC/2015/Project ideas</title>
		<link rel="alternate" type="text/html" href="https://wiki.smc.org.in/index.php?title=GSoC/2015/Project_ideas&amp;diff=10714"/>
		<updated>2015-02-16T08:56:45Z</updated>

		<summary type="html">&lt;p&gt;Nandaja: /* Create an Android IME */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;center&amp;gt; &lt;br /&gt;
&amp;lt;font color=&amp;quot;green&amp;quot;&amp;gt; &amp;lt;big&amp;gt;&#039;&#039;&#039;Apart from the following ideas , you can propose your own ideas&#039;&#039;&#039;&amp;lt;/big&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Potential Mentors=&lt;br /&gt;
# Santhosh Thottingal (&#039;&#039;&#039;santhosh&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Baiju M (&#039;&#039;&#039;baijum&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Praveen A (&#039;&#039;&#039;j4v4m4n&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Rajeesh K Nambiar (&#039;&#039;&#039;rajeesh&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Anivar Aravind (&#039;&#039;&#039;anivar&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Vasudev Kammath (&#039;&#039;&#039;copyninja&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Jishnu Mohan (&#039;&#039;&#039;jishnu7&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Hrishikesh K.B (&#039;&#039;&#039;stultus&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Nandaja Varma (&#039;&#039;&#039;gem&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Navaneeth (&#039;&#039;&#039;nkn__&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Ershad K (&#039;&#039;&#039;ershad&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Nishan Naseer (&#039;&#039;&#039;nishan&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
&lt;br /&gt;
=Ideas for Google Summer of Code 2015=&lt;br /&gt;
* Please Read the [http://wiki.smc.org.in/GSoC/2015#FAQ FAQ]&lt;br /&gt;
* If you want to propose an idea, please do it in [http://lists.smc.org.in/listinfo.cgi/student-projects-smc.org.in student projects mailing list]  of [http://smc.org.in Swathanthra Malayalam computing]&lt;br /&gt;
&lt;br /&gt;
=Projects with confirmed mentors=&lt;br /&gt;
&lt;br /&gt;
== ibus-braille module modifications ==&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Project&#039;&#039;&#039;ː&lt;br /&gt;
&lt;br /&gt;
This project will be to make improvements on the [[GSoC/2014/Project_ideas#Adding_Braille_Keyboard_layouts_for_Indian_Languages_to_m17n_Library | project]] that was successfully completed by a student under SMC. The remaining tasks areː&lt;br /&gt;
#Integrate Ibus-Braille with Liblouis&lt;br /&gt;
#Create Table editor for Liblouis&lt;br /&gt;
#Create a web version and host it.&lt;br /&gt;
#Add more indian languages to Liblouis&lt;br /&gt;
#Add facility to write direct braille Unicode characters&lt;br /&gt;
#Remove espeak dependency and make accessible via orca itself.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Confirmed Mentor&#039;&#039;&#039;: Samuel Thibault&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;How to contact the mentor&#039;&#039;&#039;: IRC - youpi on #smc-project on Freenode &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;: &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;What the student will learn&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
== Varnam based ==&lt;br /&gt;
&lt;br /&gt;
=== Varnam Android Keyboard ===&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Project&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
Add support for varnamproject into android and have a native keyboard like indic keyboard. It can be integrated into Indic keyboard or have it as a separate keyboard.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039;: Advanced&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Confirmed Mentor&#039;&#039;&#039;: Navaneeth K. N.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;How to contact the mentor&#039;&#039;&#039;: IRC - nkn__ on #smc-project on Freenode &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;: &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;What the student will learn&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
=Projects with unconfirmed mentors=&lt;br /&gt;
== A spell checker for Indic language that understands inflections ==&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Project&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
libindic project has a spellchecker written using python with a not so simple algorithm. But still it is not capable of handling inflection and agglutination occurring in Indian languages especially south Indian languages. The dictionary we have for Malayalam spellchecker have about 150000 words. Of course we can expand the dictionary, but that doesn&#039;t have much value since words can be formed in Malayalam or Tamil etc by joining multiple words. In addition to that, words get inflected based on grammar forms(sandhi), plural, gender etc. Hunspell has a system to handle this, but so far nobody succeeded in getting it working for multi level suffix stripping as required for Malayalam. Some times a Malayalam word can be formed by more than 5 words joining together. We will need a word splitting logic or a table taking care of all patterns. The project is to attempt solving this with hunspell. If that is not feasible(hunspell upstream is not active), develop an algorithm and implement it.&lt;br /&gt;
&lt;br /&gt;
Recently Tamil attempted developing a spellchecker using Hunspell with multi level suffix stripping. You can see the result here https://github.com/thamizha/solthiruthi. &lt;br /&gt;
Our attempt should be first to use Hunspell to achieve spellchecking with agglutination and inflection. Probably it will require lot of scripting to generate suffix patterns, we can ask help from existing language communities too. If Hunspell has limitation with multi level suffxes- sometimes Indian languages require more than 5 levels of suffix stripping, we need to document it(bug and documentation) and try to attempt python based solution on top of libindic framework.&lt;br /&gt;
&lt;br /&gt;
The project is not about coding an existing algorithm, but to develop and implement an algorithm.&lt;br /&gt;
&lt;br /&gt;
Hunspell&#039;s limitations can be understood from [[User:%E0%B4%B8%E0%B4%A8%E0%B5%8D%E0%B4%A4%E0%B5%8B%E0%B4%B7%E0%B5%8D/HunspellConversation| this conversation]] we had with the author of Hunspell in 2008&lt;br /&gt;
&lt;br /&gt;
Homework to do before submitting applications:&lt;br /&gt;
# Use Hunspell in any Indian language like Malayalam for spell correction in editors or word processors and understand the limitations&lt;br /&gt;
# Study the nature of inflection and agglutination in Indian languages, read existing documents on this(ask for documents too) and note down your observations&lt;br /&gt;
# Study Hunspell and other spellcheckers to see how this problem is addressed&lt;br /&gt;
# Understand how a spell checker works. How to write a spellchecker from scratch?&lt;br /&gt;
# Come up with a plan about addressing the issue.&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;[https://savannah.nongnu.org/task/index.php?12558 Savannah Task]&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039;: Advanced&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Confirmed Mentor&#039;&#039;&#039;: &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;How to contact the mentor&#039;&#039;&#039;: &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;: Average level understanding of grammar system of at least one Indian language and complete the homework as listed above.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;What the student will learn&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
==Indic rendering support in ConTeXt==&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Project&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
ConTeXt is another TeX macro system similar to LaTeX but much more suitable for design. To find more information about ConTeXt, see the wiki http://wiki.contextgarden.net/Main_Page. ConTeXt MKII  have Indic language rendering support using XeTeX. but MKII is deprecated, and the new MKIV backend doesn&#039;t support Indic rendering yet. The aim of this project is to add support to Inidic rendering to ConTeXt MKIV. XeTeX is using Harfbuzz to do correct Indic rendering.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;More Details&#039;&#039;&#039;: A partially working patch by Rajeesh for MKIV lua code is available. ConTeXt mkii (deprecated) can work with XeTeX backend for Indic rendering. Here is a sample file:&lt;br /&gt;
 \usemodule[simplefonts]&lt;br /&gt;
 \definefontfeature[malayalam][script=mlym]&lt;br /&gt;
 \setmainfont[Rachana][features=malayalam]&lt;br /&gt;
 \starttext&lt;br /&gt;
 മലയാളം \TeX ഉപയോഗിച്ച് ടൈപ്പ്സെറ്റ് ചെയ്തത്&lt;br /&gt;
 \stoptext&lt;br /&gt;
Generate the output using command&lt;br /&gt;
 texexec --xetex &amp;lt;file.tex&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;[https://savannah.nongnu.org/task/index.php?12559 Savannah Task]&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039; : Advanced&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Confirmed Mentor&#039;&#039;&#039; : &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;How to contact the mentor&#039;&#039;&#039;: &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;: Understanding of the TeX system, experience in either LaTeX or ConTeXt and basic understanding of Indic language rendering. MKIV uses Lua, familiarity with Lua, opentype specifications or Harfbuzz will be added advantage.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;What the students will learn&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
==Language model and Acoustic model for Malayalam language for speech recognition system in CMU Sphinx==&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Project&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
CMU Sphinx is a large vocabulary, speaker independent speech recognition codebase and suite of tools, which can be used to develop speech recognition system in any language. To develop an automatic speech recognition system in a language, acoustic model and language model has to framed for that particular language.  Acoustic models characterize how sound changes over time. It captures the characteristics of basic recognition units. The language model describes the likelihood, probability, or penalty taken when a sequence or collection of words is seen. It attempts to convey behavior of the language and tries to predict the occurrence of specific word sequences possible in the language. Once these two models are developed, it will be useful to every one doing research in speech processing. For Indian languages Hindi, Tamil, Telugu and Marati, ASR systems have been developed using sphinx engine. In this project work is aimed at developing acoustic model and language model for Malayalam.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Background Reading&#039;&#039;&#039;&lt;br /&gt;
* [http://www.cs.cmu.edu/~gopalakr/publications/spdatabases_specom05.pdf &#039;Development of Indian Language Speech Databases for Large Vocabulary Speech Recognition Systems&#039;], Gopalakrishna  Anumanchipalli, Rahul Chitturi, Sachin Joshi, Rohit Kumar, Satinder Pal Singh, R.N.V. Sitaram, S P Kishore&lt;br /&gt;
* [http://www.aclweb.org/anthology/W/W12/W12-5808.pdf &amp;quot;Automatic Pronunciation Evaluation And Mispronunciation Detection Using CMUSphinx&amp;quot;], Ronanki Srikanth, James Salsman&lt;br /&gt;
* http://www.speech.cs.cmu.edu/&lt;br /&gt;
* http://cmusphinx.sourceforge.net/wiki/tutorial&lt;br /&gt;
* [http://www.ijarcsse.com &amp;quot;HTK Based Telugu Speech Recognition&amp;quot;], P. Vijai Bhaskar, AVNIET ,Hyderabad, Prof. Dr. S. Rama Mohan Rao, A.Gopi &lt;br /&gt;
* [http://www.cs.cmu.edu/~araza/Automatic_Speech_Recognition_System_for_Urdu.PDF &amp;quot;Design and  Development of an Automatic Speech Recognition System for Urdu&amp;quot;], Agha Ali Raza,  M.Sc. Thesis, FAST‐National University of Computer and Emerging Sciences &lt;br /&gt;
* [http://www.ccis2k.org/iajit/PDF/vol.6,no.2/11IASRUCSS186.pdf &amp;quot;Investigation Arabic Speech Recognition Using CMU Sphinx System&amp;quot;], Hassan Satori1, 2, Hussein Hiyassat3, Mostafa Harti1, 2, and Noureddine Chenfour&lt;br /&gt;
* [http://www.try.idv.tw/static-resources/homework/pr/PR_Final_Report.pdf &amp;quot;Understanding the CMU Sphinx Speech Recognition System&amp;quot;], Chun-Feng Liao&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039; : &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Confirmed Mentor&#039;&#039;&#039; : &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;How to contact the mentor&#039;&#039;&#039;: &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;: &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;What the students will learn&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==libindic Project Based==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===libindic Project Improvements===&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Project&#039;&#039;&#039;: &lt;br /&gt;
&lt;br /&gt;
This is set of ideas needed to improve the existing libindic infrastructure. We have decided following tasks as part of this project&lt;br /&gt;
&lt;br /&gt;
# Provide REST API to libindic without disturbing existing JSONRPC API&lt;br /&gt;
# Improve the Transliteration module&lt;br /&gt;
# Integrate [https://github.com/Project-SILPA/flask-webfonts Flask Webfonts] extension with libindic to provide Webfonts support.&lt;br /&gt;
&lt;br /&gt;
==== Provide REST like API for libindic ====&lt;br /&gt;
&lt;br /&gt;
libindic provides JSONRPC API currently which is also utilized by the templates of framework. JSONRPC is not well supported in all languages and results in [https://en.wikipedia.org/wiki/Not_invented_here NIH code]. So we would like to provide REST like HTTP based API&#039;s for libindic and at the same time leave the current JSONRPC code untouched for backward compatibility reasons.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Objectives&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
* Develop module or use existing module to provide REST like API&#039;s&lt;br /&gt;
* API should support GET and POST. [http://www.w3.org/2001/tag/doc/whenToUseGet.html When to use GET?].&lt;br /&gt;
&lt;br /&gt;
Many people have doubt on how the API should look like. We can give twitter API (https://dev.twitter.com/docs/api) as example &lt;br /&gt;
Sample API calls :&lt;br /&gt;
-------------------------------------------------------------&lt;br /&gt;
    POST api.silpa.org.in/payyans/ASCII2Unicode&lt;br /&gt;
    Paramets: text, font&lt;br /&gt;
    Response: JSON data&lt;br /&gt;
-------------------------------------------------------------&lt;br /&gt;
    POST api.silpa.org.in/payyans/Unicode2ASCII&lt;br /&gt;
    Paramets: text, font&lt;br /&gt;
    Response: JSON data&lt;br /&gt;
-------------------------------------------------------------&lt;br /&gt;
Generic: &lt;br /&gt;
    GET/POST (http://api.silpa.org.in/module/function_name or http://silpa.org.in/api/module/function_name)&lt;br /&gt;
    Parameters: function parameters&lt;br /&gt;
    Response: JSON encoded return value from function&lt;br /&gt;
&lt;br /&gt;
====  Improve Transliteration module ====&lt;br /&gt;
&lt;br /&gt;
We have a Transliteration module which supports transliteration from any Indic language to other Indic language and also support to English to Indic and Indic to English transliteration. Also we support IPA and ISO15919 transliteration system. But the module isn&#039;t in perfect shape and has lot of bugs. With this idea we would like to improve the following parts&lt;br /&gt;
&lt;br /&gt;
# Improve cross indic language transliteration system. Currently only Malayalam and Kannada are working without any external language support, all other Indian languages are first transliterated to Malayalam and then transliterated to target Indic language. We want to remove this cycle from source -&amp;gt; Malayalam -&amp;gt; target.&lt;br /&gt;
# English to IPA transliteration is currently broken and this needs to be fixed. See [https://github.com/Project-SILPA/Transliteration/issues/3 IPA transliteration bug].&lt;br /&gt;
# Once the IPA transliteration issue above is fixed, imporve English to Indic transliteration system using IPA. Currently English to Indic transliteration system is done using CMU Sphinx dictionary which is having limited set of words which inturn limits the output of English to Indic transliteration system.&lt;br /&gt;
# Improve IS015919 to Indic transliteration system see [https://github.com/Project-SILPA/Transliteration/issues/4 IS015919 to Indic transliteration].&lt;br /&gt;
&lt;br /&gt;
CLDR has transliteration data for Indic languages. We can explore it and see the feasibility. For an intermediate representation of the scripts either IPA can be used or ISO 15919 standard can be used. All these must be supplemented with exception rules and special case handling to achieve more perfect result.&lt;br /&gt;
&lt;br /&gt;
==== Integrating flask-webfonts extension with libindic ====&lt;br /&gt;
&lt;br /&gt;
libindic used to have a Webfonts module for serving Indian language fonts as Webfonts for browsers. During GSOC 2013 it was separated as an extension to Flask framework which can be generally used with any Flask powered app. The current code can be found at [https://github.com/Project-SILPA/flask-webfonts]. The module is not fine tuned yet so below are the objectives.&lt;br /&gt;
&lt;br /&gt;
# The module is not yet fine tuned and using it will make other modules break. This needs to be fixed (Can be checked with &#039;webfonts&#039; branch of libindic code on github.&lt;br /&gt;
# Write tests to check the functionalities.&lt;br /&gt;
# Adhere to Flask extension guidelines and submit the modules to Flask extensions directory.&lt;br /&gt;
# Write a tool which can take a directory containing fonts file or single font file and generate configuration file needed by the extension. (A possible such tool which is outdated can be found at [https://github.com/copyninja/fontinfo])&lt;br /&gt;
# Provide HTTP api&#039;s through flask extension which can expose the CSS for applications.&lt;br /&gt;
&lt;br /&gt;
For all tasks above we expect documentation, test cases from the students as deliverable. &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039; : Intermediate&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Confirmed Mentors&#039;&#039;&#039; : &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;How to contact the mentors&#039;&#039;&#039;: &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Mailing List&#039;&#039;&#039;: silpa-discuss@nongnu.org &amp;lt;preferred&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;: Python , Flask , Jinja , HTML, Javascript&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;What the students will learn&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
# Writing applications using Flask&lt;br /&gt;
# Various Transliteration system knolwedge&lt;br /&gt;
# Webfonts knowledge and writing extensions for Flask&lt;br /&gt;
# Test drive development.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Converting indic processing modules currently in libindic into javascript modules library===&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Project&#039;&#039;&#039;: &lt;br /&gt;
&lt;br /&gt;
Port some of the libindic algorithms to node modules. Several modules, alogorithms in libindic project is done in python now. But porting them to javascript helps developers. For example, cross language transliteration can be done javascript too if we port the algorithm and transliteration rules. Similarly the approximate search can be ported. A flexibile fuzzy search on the web pages will be possible if we have the algorithm in javascript.&lt;br /&gt;
&lt;br /&gt;
Proposed javascript module pattern is https://github.com/umdjs/umd&lt;br /&gt;
&lt;br /&gt;
Student proposals should have a list of alogorithms planning to port, planned demo applications, planned documentation details, and publishing details(Example: npm registry)&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039; : &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Confirmed Mentor&#039;&#039;&#039; : &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;How to contact the mentor&#039;&#039;&#039;: &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039; Mailing List&#039;&#039;&#039;: silpa-discuss@nongnu.org&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;: javascript, python&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;What the students will learn&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
===Integrate Varnam into libindic===&lt;br /&gt;
&lt;br /&gt;
Create a libindic module which hosts [http://www.varnamproject.com varnam]. This includes making a python port for libvarnam and making a libindic module which uses the python port. &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039; : Medium&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Confirmed Mentor&#039;&#039;&#039; : &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;How to contact the mentor&#039;&#039;&#039;: &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039; Mailing List&#039;&#039;&#039;: silpa-discuss@nongnu.org&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;: C, Python&lt;br /&gt;
&lt;br /&gt;
==Varnam Based==&lt;br /&gt;
&lt;br /&gt;
Varnam is a cross-platform predictive transliterator for Indian languages. It works mostly like Google&#039;s transliterate, but shows key differences in the way word tokenization is done. It has a learning system built in which allows Varnam to make smart predictions. &lt;br /&gt;
&lt;br /&gt;
There are varnam clients available as [https://addons.mozilla.org/en-US/firefox/addon/varnam-transliteration-base/ Firefox]] &amp;amp; [https://chrome.google.com/webstore/detail/varnam-ime/abcfkeabpcanobhdmcmdabejaamephaf Chrome addon] and an [https://gitorious.org/varnamproject/libvarnam-ibus/source/d939adf50024013902c27310c03ef21a9210cdcb IBus engine].&lt;br /&gt;
&lt;br /&gt;
To try out Varnam, navigate to [http://varnamproject.com/editor[http://varnamproject.com/editor]]. Currently it support Hindi and Malayalam.&lt;br /&gt;
&lt;br /&gt;
* [http://www.varnamproject.com/docs/faq FAQ]&lt;br /&gt;
* [http://www.varnamproject.com/docs Documentation]&lt;br /&gt;
* [http://www.varnamproject.com/docs/contributing Contributors guide &amp;amp; ideas to work on]&lt;br /&gt;
&lt;br /&gt;
Apart from the following ideas, you can propose your own idea. &lt;br /&gt;
&lt;br /&gt;
===Programming language bindings &amp;amp; varnam-daemon===&lt;br /&gt;
&lt;br /&gt;
Varnam is written on C which makes interoperability with other languages easy. There are language bindings available for `NodeJs` and `Ruby`. Supporting Varnam in multiple languages allows projects to use varnam easily to enable Indian language input.&lt;br /&gt;
&lt;br /&gt;
To make using varnam from different languages easier, make a cross platform standalone process which uses `libvarnam` shared library and exposes a RPC API over network. This allows any programming language with a socket support can be used with libvarnam. This also makes language bindings fairly easy because they don&#039;t have to work with the native interoperability support. The protocol can be a simple text based protocol for all the commands that `libvarnam` supports. &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039; : Advanced&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Confirmed Mentor&#039;&#039;&#039; : &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;How to contact the mentor&#039;&#039;&#039;: &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;: C&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Improvements to the REST API===&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Project&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
This includes rewrite of the current implementation in `golang` and add support for WebSockets to improve the input experience. This also&lt;br /&gt;
includes making scripts that would ease embedding input on any webpage. All the changes done will go live on[1]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039; : Advanced&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Confirmed Mentor&#039;&#039;&#039; : &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;How to contact the mentor&#039;&#039;&#039;: &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;: Basic understanding of golang and C&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;What the students will learn&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
===Create an Android IME===&lt;br /&gt;
&lt;br /&gt;
Varnam will be ported as a libindic module and it will be available on Android as part of the android SDK project which Silpa has proposed. This idea is merged to the [http://wiki.smc.org.in/SoC/2014/Project_ideas#Android_SDK_for_Silpa libindic] project ideas.&lt;br /&gt;
&lt;br /&gt;
===Enable varnam&#039;s suggestions system to be used from Inscript or any other input system===&lt;br /&gt;
&lt;br /&gt;
Varnam has knowledge about lot of words. This idea proposes a method to use these words and provide suggestions for other input systems. Basically, in Varnam, the API call will be something like,&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;&amp;lt;pre&amp;gt;&lt;br /&gt;
varnam_get_suggestions (handle, &amp;quot;भारत&amp;quot;);&lt;br /&gt;
&amp;lt;/pre&amp;gt;&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This will fetch all the suggestions which has the given prefix. &lt;br /&gt;
&lt;br /&gt;
`varnam_get_suggestions` needs to keep track of the previous words and use [http://en.wikipedia.org/wiki/N-gram n-gram] based dataset to filter the results. This should also learn the words back into the word corpus that varnam is using. Filtering suggestions won&#039;t be just a prefix search, but it will have knowledge about how text can be written in the target language and provide smart filtering. Searching in a large corpus and providing real-time suggestions makes this a challenging task. &lt;br /&gt;
&lt;br /&gt;
Once this is implemented in `libvarnam`, it can be used in the ibus-engine.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039; : Advanced&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;:  C, Unicode &amp;amp; encodings&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Confirmed Mentor&#039;&#039;&#039; : &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;How to contact the mentor&#039;&#039;&#039;: &lt;br /&gt;
&lt;br /&gt;
=== Word corpus synchronization ===&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Project&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
Create a cross-platform synchronization tool which can upload/download the word corpus from offline IMEs like varnam-ibus[2]. This helps to build the online words corpus easily.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039; : Medium&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Confirmed Mentor&#039;&#039;&#039; : &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;How to contact the mentor&#039;&#039;&#039;: &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;:  Knowledge in C/golang&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;What the students will learn&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [1]: http://www.varnamproject.com&lt;br /&gt;
* [2]: https://gitorious.org/varnamproject/libvarnam-ibus/&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Grandham ==&lt;br /&gt;
&lt;br /&gt;
=== Adding MARC21 import/export feature in Grandham ===&lt;br /&gt;
&lt;br /&gt;
We need a feature in Grandham to import and parse data from MARC21 documents. We should also be able to export existing data in MARC21.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039; : High&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Confirmed Mentor&#039;&#039;&#039; :&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;How to contact the mentor&#039;&#039;&#039;: &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;: Knowledge in Ruby/Ruby on Rails&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;What the students will learn&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [1]: http://dev.grandham.org&lt;br /&gt;
* [2]: https://github.com/smc/grandham&lt;/div&gt;</summary>
		<author><name>Nandaja</name></author>
	</entry>
	<entry>
		<id>https://wiki.smc.org.in/index.php?title=GSoC/2015/Project_ideas&amp;diff=10712</id>
		<title>GSoC/2015/Project ideas</title>
		<link rel="alternate" type="text/html" href="https://wiki.smc.org.in/index.php?title=GSoC/2015/Project_ideas&amp;diff=10712"/>
		<updated>2015-02-16T08:55:22Z</updated>

		<summary type="html">&lt;p&gt;Nandaja: /* Converting indic processing modules currently in libindic into javascript modules library */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;center&amp;gt; &lt;br /&gt;
&amp;lt;font color=&amp;quot;green&amp;quot;&amp;gt; &amp;lt;big&amp;gt;&#039;&#039;&#039;Apart from the following ideas , you can propose your own ideas&#039;&#039;&#039;&amp;lt;/big&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Potential Mentors=&lt;br /&gt;
# Santhosh Thottingal (&#039;&#039;&#039;santhosh&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Baiju M (&#039;&#039;&#039;baijum&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Praveen A (&#039;&#039;&#039;j4v4m4n&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Rajeesh K Nambiar (&#039;&#039;&#039;rajeesh&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Anivar Aravind (&#039;&#039;&#039;anivar&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Vasudev Kammath (&#039;&#039;&#039;copyninja&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Jishnu Mohan (&#039;&#039;&#039;jishnu7&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Hrishikesh K.B (&#039;&#039;&#039;stultus&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Nandaja Varma (&#039;&#039;&#039;gem&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Navaneeth (&#039;&#039;&#039;nkn__&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Ershad K (&#039;&#039;&#039;ershad&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Nishan Naseer (&#039;&#039;&#039;nishan&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
&lt;br /&gt;
=Ideas for Google Summer of Code 2015=&lt;br /&gt;
* Please Read the [http://wiki.smc.org.in/GSoC/2015#FAQ FAQ]&lt;br /&gt;
* If you want to propose an idea, please do it in [http://lists.smc.org.in/listinfo.cgi/student-projects-smc.org.in student projects mailing list]  of [http://smc.org.in Swathanthra Malayalam computing]&lt;br /&gt;
&lt;br /&gt;
=Projects with confirmed mentors=&lt;br /&gt;
&lt;br /&gt;
== ibus-braille module modifications ==&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Project&#039;&#039;&#039;ː&lt;br /&gt;
&lt;br /&gt;
This project will be to make improvements on the [[GSoC/2014/Project_ideas#Adding_Braille_Keyboard_layouts_for_Indian_Languages_to_m17n_Library | project]] that was successfully completed by a student under SMC. The remaining tasks areː&lt;br /&gt;
#Integrate Ibus-Braille with Liblouis&lt;br /&gt;
#Create Table editor for Liblouis&lt;br /&gt;
#Create a web version and host it.&lt;br /&gt;
#Add more indian languages to Liblouis&lt;br /&gt;
#Add facility to write direct braille Unicode characters&lt;br /&gt;
#Remove espeak dependency and make accessible via orca itself.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Confirmed Mentor&#039;&#039;&#039;: Samuel Thibault&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;How to contact the mentor&#039;&#039;&#039;: IRC - youpi on #smc-project on Freenode &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;: &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;What the student will learn&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
== Varnam based ==&lt;br /&gt;
&lt;br /&gt;
=== Varnam Android Keyboard ===&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Project&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
Add support for varnamproject into android and have a native keyboard like indic keyboard. It can be integrated into Indic keyboard or have it as a separate keyboard.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039;: Advanced&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Confirmed Mentor&#039;&#039;&#039;: Navaneeth K. N.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;How to contact the mentor&#039;&#039;&#039;: IRC - nkn__ on #smc-project on Freenode &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;: &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;What the student will learn&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
=Projects with unconfirmed mentors=&lt;br /&gt;
== A spell checker for Indic language that understands inflections ==&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Project&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
libindic project has a spellchecker written using python with a not so simple algorithm. But still it is not capable of handling inflection and agglutination occurring in Indian languages especially south Indian languages. The dictionary we have for Malayalam spellchecker have about 150000 words. Of course we can expand the dictionary, but that doesn&#039;t have much value since words can be formed in Malayalam or Tamil etc by joining multiple words. In addition to that, words get inflected based on grammar forms(sandhi), plural, gender etc. Hunspell has a system to handle this, but so far nobody succeeded in getting it working for multi level suffix stripping as required for Malayalam. Some times a Malayalam word can be formed by more than 5 words joining together. We will need a word splitting logic or a table taking care of all patterns. The project is to attempt solving this with hunspell. If that is not feasible(hunspell upstream is not active), develop an algorithm and implement it.&lt;br /&gt;
&lt;br /&gt;
Recently Tamil attempted developing a spellchecker using Hunspell with multi level suffix stripping. You can see the result here https://github.com/thamizha/solthiruthi. &lt;br /&gt;
Our attempt should be first to use Hunspell to achieve spellchecking with agglutination and inflection. Probably it will require lot of scripting to generate suffix patterns, we can ask help from existing language communities too. If Hunspell has limitation with multi level suffxes- sometimes Indian languages require more than 5 levels of suffix stripping, we need to document it(bug and documentation) and try to attempt python based solution on top of libindic framework.&lt;br /&gt;
&lt;br /&gt;
The project is not about coding an existing algorithm, but to develop and implement an algorithm.&lt;br /&gt;
&lt;br /&gt;
Hunspell&#039;s limitations can be understood from [[User:%E0%B4%B8%E0%B4%A8%E0%B5%8D%E0%B4%A4%E0%B5%8B%E0%B4%B7%E0%B5%8D/HunspellConversation| this conversation]] we had with the author of Hunspell in 2008&lt;br /&gt;
&lt;br /&gt;
Homework to do before submitting applications:&lt;br /&gt;
# Use Hunspell in any Indian language like Malayalam for spell correction in editors or word processors and understand the limitations&lt;br /&gt;
# Study the nature of inflection and agglutination in Indian languages, read existing documents on this(ask for documents too) and note down your observations&lt;br /&gt;
# Study Hunspell and other spellcheckers to see how this problem is addressed&lt;br /&gt;
# Understand how a spell checker works. How to write a spellchecker from scratch?&lt;br /&gt;
# Come up with a plan about addressing the issue.&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;[https://savannah.nongnu.org/task/index.php?12558 Savannah Task]&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039;: Advanced&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Confirmed Mentor&#039;&#039;&#039;: &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;How to contact the mentor&#039;&#039;&#039;: &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;: Average level understanding of grammar system of at least one Indian language and complete the homework as listed above.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;What the student will learn&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
==Indic rendering support in ConTeXt==&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Project&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
ConTeXt is another TeX macro system similar to LaTeX but much more suitable for design. To find more information about ConTeXt, see the wiki http://wiki.contextgarden.net/Main_Page. ConTeXt MKII  have Indic language rendering support using XeTeX. but MKII is deprecated, and the new MKIV backend doesn&#039;t support Indic rendering yet. The aim of this project is to add support to Inidic rendering to ConTeXt MKIV. XeTeX is using Harfbuzz to do correct Indic rendering.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;More Details&#039;&#039;&#039;: A partially working patch by Rajeesh for MKIV lua code is available. ConTeXt mkii (deprecated) can work with XeTeX backend for Indic rendering. Here is a sample file:&lt;br /&gt;
 \usemodule[simplefonts]&lt;br /&gt;
 \definefontfeature[malayalam][script=mlym]&lt;br /&gt;
 \setmainfont[Rachana][features=malayalam]&lt;br /&gt;
 \starttext&lt;br /&gt;
 മലയാളം \TeX ഉപയോഗിച്ച് ടൈപ്പ്സെറ്റ് ചെയ്തത്&lt;br /&gt;
 \stoptext&lt;br /&gt;
Generate the output using command&lt;br /&gt;
 texexec --xetex &amp;lt;file.tex&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;[https://savannah.nongnu.org/task/index.php?12559 Savannah Task]&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039; : Advanced&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Confirmed Mentor&#039;&#039;&#039; : &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;How to contact the mentor&#039;&#039;&#039;: &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;: Understanding of the TeX system, experience in either LaTeX or ConTeXt and basic understanding of Indic language rendering. MKIV uses Lua, familiarity with Lua, opentype specifications or Harfbuzz will be added advantage.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;What the students will learn&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
==Language model and Acoustic model for Malayalam language for speech recognition system in CMU Sphinx==&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Project&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
CMU Sphinx is a large vocabulary, speaker independent speech recognition codebase and suite of tools, which can be used to develop speech recognition system in any language. To develop an automatic speech recognition system in a language, acoustic model and language model has to framed for that particular language.  Acoustic models characterize how sound changes over time. It captures the characteristics of basic recognition units. The language model describes the likelihood, probability, or penalty taken when a sequence or collection of words is seen. It attempts to convey behavior of the language and tries to predict the occurrence of specific word sequences possible in the language. Once these two models are developed, it will be useful to every one doing research in speech processing. For Indian languages Hindi, Tamil, Telugu and Marati, ASR systems have been developed using sphinx engine. In this project work is aimed at developing acoustic model and language model for Malayalam.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Background Reading&#039;&#039;&#039;&lt;br /&gt;
* [http://www.cs.cmu.edu/~gopalakr/publications/spdatabases_specom05.pdf &#039;Development of Indian Language Speech Databases for Large Vocabulary Speech Recognition Systems&#039;], Gopalakrishna  Anumanchipalli, Rahul Chitturi, Sachin Joshi, Rohit Kumar, Satinder Pal Singh, R.N.V. Sitaram, S P Kishore&lt;br /&gt;
* [http://www.aclweb.org/anthology/W/W12/W12-5808.pdf &amp;quot;Automatic Pronunciation Evaluation And Mispronunciation Detection Using CMUSphinx&amp;quot;], Ronanki Srikanth, James Salsman&lt;br /&gt;
* http://www.speech.cs.cmu.edu/&lt;br /&gt;
* http://cmusphinx.sourceforge.net/wiki/tutorial&lt;br /&gt;
* [http://www.ijarcsse.com &amp;quot;HTK Based Telugu Speech Recognition&amp;quot;], P. Vijai Bhaskar, AVNIET ,Hyderabad, Prof. Dr. S. Rama Mohan Rao, A.Gopi &lt;br /&gt;
* [http://www.cs.cmu.edu/~araza/Automatic_Speech_Recognition_System_for_Urdu.PDF &amp;quot;Design and  Development of an Automatic Speech Recognition System for Urdu&amp;quot;], Agha Ali Raza,  M.Sc. Thesis, FAST‐National University of Computer and Emerging Sciences &lt;br /&gt;
* [http://www.ccis2k.org/iajit/PDF/vol.6,no.2/11IASRUCSS186.pdf &amp;quot;Investigation Arabic Speech Recognition Using CMU Sphinx System&amp;quot;], Hassan Satori1, 2, Hussein Hiyassat3, Mostafa Harti1, 2, and Noureddine Chenfour&lt;br /&gt;
* [http://www.try.idv.tw/static-resources/homework/pr/PR_Final_Report.pdf &amp;quot;Understanding the CMU Sphinx Speech Recognition System&amp;quot;], Chun-Feng Liao&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039; : &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Confirmed Mentor&#039;&#039;&#039; : &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;How to contact the mentor&#039;&#039;&#039;: &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;: &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;What the students will learn&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==libindic Project Based==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===libindic Project Improvements===&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Project&#039;&#039;&#039;: &lt;br /&gt;
&lt;br /&gt;
This is set of ideas needed to improve the existing libindic infrastructure. We have decided following tasks as part of this project&lt;br /&gt;
&lt;br /&gt;
# Provide REST API to libindic without disturbing existing JSONRPC API&lt;br /&gt;
# Improve the Transliteration module&lt;br /&gt;
# Integrate [https://github.com/Project-SILPA/flask-webfonts Flask Webfonts] extension with libindic to provide Webfonts support.&lt;br /&gt;
&lt;br /&gt;
==== Provide REST like API for libindic ====&lt;br /&gt;
&lt;br /&gt;
libindic provides JSONRPC API currently which is also utilized by the templates of framework. JSONRPC is not well supported in all languages and results in [https://en.wikipedia.org/wiki/Not_invented_here NIH code]. So we would like to provide REST like HTTP based API&#039;s for libindic and at the same time leave the current JSONRPC code untouched for backward compatibility reasons.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Objectives&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
* Develop module or use existing module to provide REST like API&#039;s&lt;br /&gt;
* API should support GET and POST. [http://www.w3.org/2001/tag/doc/whenToUseGet.html When to use GET?].&lt;br /&gt;
&lt;br /&gt;
Many people have doubt on how the API should look like. We can give twitter API (https://dev.twitter.com/docs/api) as example &lt;br /&gt;
Sample API calls :&lt;br /&gt;
-------------------------------------------------------------&lt;br /&gt;
    POST api.silpa.org.in/payyans/ASCII2Unicode&lt;br /&gt;
    Paramets: text, font&lt;br /&gt;
    Response: JSON data&lt;br /&gt;
-------------------------------------------------------------&lt;br /&gt;
    POST api.silpa.org.in/payyans/Unicode2ASCII&lt;br /&gt;
    Paramets: text, font&lt;br /&gt;
    Response: JSON data&lt;br /&gt;
-------------------------------------------------------------&lt;br /&gt;
Generic: &lt;br /&gt;
    GET/POST (http://api.silpa.org.in/module/function_name or http://silpa.org.in/api/module/function_name)&lt;br /&gt;
    Parameters: function parameters&lt;br /&gt;
    Response: JSON encoded return value from function&lt;br /&gt;
&lt;br /&gt;
====  Improve Transliteration module ====&lt;br /&gt;
&lt;br /&gt;
We have a Transliteration module which supports transliteration from any Indic language to other Indic language and also support to English to Indic and Indic to English transliteration. Also we support IPA and ISO15919 transliteration system. But the module isn&#039;t in perfect shape and has lot of bugs. With this idea we would like to improve the following parts&lt;br /&gt;
&lt;br /&gt;
# Improve cross indic language transliteration system. Currently only Malayalam and Kannada are working without any external language support, all other Indian languages are first transliterated to Malayalam and then transliterated to target Indic language. We want to remove this cycle from source -&amp;gt; Malayalam -&amp;gt; target.&lt;br /&gt;
# English to IPA transliteration is currently broken and this needs to be fixed. See [https://github.com/Project-SILPA/Transliteration/issues/3 IPA transliteration bug].&lt;br /&gt;
# Once the IPA transliteration issue above is fixed, imporve English to Indic transliteration system using IPA. Currently English to Indic transliteration system is done using CMU Sphinx dictionary which is having limited set of words which inturn limits the output of English to Indic transliteration system.&lt;br /&gt;
# Improve IS015919 to Indic transliteration system see [https://github.com/Project-SILPA/Transliteration/issues/4 IS015919 to Indic transliteration].&lt;br /&gt;
&lt;br /&gt;
CLDR has transliteration data for Indic languages. We can explore it and see the feasibility. For an intermediate representation of the scripts either IPA can be used or ISO 15919 standard can be used. All these must be supplemented with exception rules and special case handling to achieve more perfect result.&lt;br /&gt;
&lt;br /&gt;
==== Integrating flask-webfonts extension with libindic ====&lt;br /&gt;
&lt;br /&gt;
libindic used to have a Webfonts module for serving Indian language fonts as Webfonts for browsers. During GSOC 2013 it was separated as an extension to Flask framework which can be generally used with any Flask powered app. The current code can be found at [https://github.com/Project-SILPA/flask-webfonts]. The module is not fine tuned yet so below are the objectives.&lt;br /&gt;
&lt;br /&gt;
# The module is not yet fine tuned and using it will make other modules break. This needs to be fixed (Can be checked with &#039;webfonts&#039; branch of libindic code on github.&lt;br /&gt;
# Write tests to check the functionalities.&lt;br /&gt;
# Adhere to Flask extension guidelines and submit the modules to Flask extensions directory.&lt;br /&gt;
# Write a tool which can take a directory containing fonts file or single font file and generate configuration file needed by the extension. (A possible such tool which is outdated can be found at [https://github.com/copyninja/fontinfo])&lt;br /&gt;
# Provide HTTP api&#039;s through flask extension which can expose the CSS for applications.&lt;br /&gt;
&lt;br /&gt;
For all tasks above we expect documentation, test cases from the students as deliverable. &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039; : Intermediate&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Confirmed Mentors&#039;&#039;&#039; : &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;How to contact the mentors&#039;&#039;&#039;: &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Mailing List&#039;&#039;&#039;: silpa-discuss@nongnu.org &amp;lt;preferred&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;: Python , Flask , Jinja , HTML, Javascript&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;What the students will learn&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
# Writing applications using Flask&lt;br /&gt;
# Various Transliteration system knolwedge&lt;br /&gt;
# Webfonts knowledge and writing extensions for Flask&lt;br /&gt;
# Test drive development.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Converting indic processing modules currently in libindic into javascript modules library===&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Project&#039;&#039;&#039;: &lt;br /&gt;
&lt;br /&gt;
Port some of the libindic algorithms to node modules. Several modules, alogorithms in libindic project is done in python now. But porting them to javascript helps developers. For example, cross language transliteration can be done javascript too if we port the algorithm and transliteration rules. Similarly the approximate search can be ported. A flexibile fuzzy search on the web pages will be possible if we have the algorithm in javascript.&lt;br /&gt;
&lt;br /&gt;
Proposed javascript module pattern is https://github.com/umdjs/umd&lt;br /&gt;
&lt;br /&gt;
Student proposals should have a list of alogorithms planning to port, planned demo applications, planned documentation details, and publishing details(Example: npm registry)&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039; : &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Confirmed Mentor&#039;&#039;&#039; : &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;How to contact the mentor&#039;&#039;&#039;: &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039; Mailing List&#039;&#039;&#039;: silpa-discuss@nongnu.org&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;: javascript, python&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;What the students will learn&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
===Integrate Varnam into libindic===&lt;br /&gt;
&lt;br /&gt;
Create a libindic module which hosts [http://www.varnamproject.com varnam]. This includes making a python port for libvarnam and making a libindic module which uses the python port. &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039; : Medium&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Confirmed Mentor&#039;&#039;&#039; : &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;How to contact the mentor&#039;&#039;&#039;: &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039; Mailing List&#039;&#039;&#039;: silpa-discuss@nongnu.org&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;: C, Python&lt;br /&gt;
&lt;br /&gt;
==Varnam Based==&lt;br /&gt;
&lt;br /&gt;
Varnam is a cross-platform predictive transliterator for Indian languages. It works mostly like Google&#039;s transliterate, but shows key differences in the way word tokenization is done. It has a learning system built in which allows Varnam to make smart predictions. &lt;br /&gt;
&lt;br /&gt;
There are varnam clients available as [https://addons.mozilla.org/en-US/firefox/addon/varnam-transliteration-base/ Firefox]] &amp;amp; [https://chrome.google.com/webstore/detail/varnam-ime/abcfkeabpcanobhdmcmdabejaamephaf Chrome addon] and an [https://gitorious.org/varnamproject/libvarnam-ibus/source/d939adf50024013902c27310c03ef21a9210cdcb IBus engine].&lt;br /&gt;
&lt;br /&gt;
To try out Varnam, navigate to [http://varnamproject.com/editor[http://varnamproject.com/editor]]. Currently it support Hindi and Malayalam.&lt;br /&gt;
&lt;br /&gt;
* [http://www.varnamproject.com/docs/faq FAQ]&lt;br /&gt;
* [http://www.varnamproject.com/docs Documentation]&lt;br /&gt;
* [http://www.varnamproject.com/docs/contributing Contributors guide &amp;amp; ideas to work on]&lt;br /&gt;
&lt;br /&gt;
Apart from the following ideas, you can propose your own idea. &lt;br /&gt;
&lt;br /&gt;
===Programming language bindings &amp;amp; varnam-daemon===&lt;br /&gt;
&lt;br /&gt;
Varnam is written on C which makes interoperability with other languages easy. There are language bindings available for `NodeJs` and `Ruby`. Supporting Varnam in multiple languages allows projects to use varnam easily to enable Indian language input.&lt;br /&gt;
&lt;br /&gt;
To make using varnam from different languages easier, make a cross platform standalone process which uses `libvarnam` shared library and exposes a RPC API over network. This allows any programming language with a socket support can be used with libvarnam. This also makes language bindings fairly easy because they don&#039;t have to work with the native interoperability support. The protocol can be a simple text based protocol for all the commands that `libvarnam` supports. &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039; : Advanced&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Confirmed Mentor&#039;&#039;&#039; : &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;How to contact the mentor&#039;&#039;&#039;: &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;: C&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Improvements to the REST API===&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Project&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
This includes rewrite of the current implementation in `golang` and add support for WebSockets to improve the input experience. This also&lt;br /&gt;
includes making scripts that would ease embedding input on any webpage. All the changes done will go live on[1]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039; : Advanced&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Confirmed Mentor&#039;&#039;&#039; : &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;How to contact the mentor&#039;&#039;&#039;: &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;: Basic understanding of golang and C&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;What the students will learn&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
===Create an Android IME===&lt;br /&gt;
&lt;br /&gt;
Varnam will be ported as a Silpa module and it will be available on Android as part of the android SDK project which Silpa has proposed. This idea is merged to the [http://wiki.smc.org.in/SoC/2014/Project_ideas#Android_SDK_for_Silpa Silpa] project ideas.&lt;br /&gt;
&lt;br /&gt;
===Enable varnam&#039;s suggestions system to be used from Inscript or any other input system===&lt;br /&gt;
&lt;br /&gt;
Varnam has knowledge about lot of words. This idea proposes a method to use these words and provide suggestions for other input systems. Basically, in Varnam, the API call will be something like,&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;&amp;lt;pre&amp;gt;&lt;br /&gt;
varnam_get_suggestions (handle, &amp;quot;भारत&amp;quot;);&lt;br /&gt;
&amp;lt;/pre&amp;gt;&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This will fetch all the suggestions which has the given prefix. &lt;br /&gt;
&lt;br /&gt;
`varnam_get_suggestions` needs to keep track of the previous words and use [http://en.wikipedia.org/wiki/N-gram n-gram] based dataset to filter the results. This should also learn the words back into the word corpus that varnam is using. Filtering suggestions won&#039;t be just a prefix search, but it will have knowledge about how text can be written in the target language and provide smart filtering. Searching in a large corpus and providing real-time suggestions makes this a challenging task. &lt;br /&gt;
&lt;br /&gt;
Once this is implemented in `libvarnam`, it can be used in the ibus-engine.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039; : Advanced&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;:  C, Unicode &amp;amp; encodings&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Confirmed Mentor&#039;&#039;&#039; : &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;How to contact the mentor&#039;&#039;&#039;: &lt;br /&gt;
&lt;br /&gt;
=== Word corpus synchronization ===&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Project&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
Create a cross-platform synchronization tool which can upload/download the word corpus from offline IMEs like varnam-ibus[2]. This helps to build the online words corpus easily.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039; : Medium&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Confirmed Mentor&#039;&#039;&#039; : &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;How to contact the mentor&#039;&#039;&#039;: &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;:  Knowledge in C/golang&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;What the students will learn&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [1]: http://www.varnamproject.com&lt;br /&gt;
* [2]: https://gitorious.org/varnamproject/libvarnam-ibus/&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Grandham ==&lt;br /&gt;
&lt;br /&gt;
=== Adding MARC21 import/export feature in Grandham ===&lt;br /&gt;
&lt;br /&gt;
We need a feature in Grandham to import and parse data from MARC21 documents. We should also be able to export existing data in MARC21.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039; : High&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Confirmed Mentor&#039;&#039;&#039; :&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;How to contact the mentor&#039;&#039;&#039;: &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;: Knowledge in Ruby/Ruby on Rails&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;What the students will learn&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [1]: http://dev.grandham.org&lt;br /&gt;
* [2]: https://github.com/smc/grandham&lt;/div&gt;</summary>
		<author><name>Nandaja</name></author>
	</entry>
	<entry>
		<id>https://wiki.smc.org.in/index.php?title=GSoC/2015/Project_ideas&amp;diff=10711</id>
		<title>GSoC/2015/Project ideas</title>
		<link rel="alternate" type="text/html" href="https://wiki.smc.org.in/index.php?title=GSoC/2015/Project_ideas&amp;diff=10711"/>
		<updated>2015-02-16T08:54:51Z</updated>

		<summary type="html">&lt;p&gt;Nandaja: /* SILPA Project Based */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;center&amp;gt; &lt;br /&gt;
&amp;lt;font color=&amp;quot;green&amp;quot;&amp;gt; &amp;lt;big&amp;gt;&#039;&#039;&#039;Apart from the following ideas , you can propose your own ideas&#039;&#039;&#039;&amp;lt;/big&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Potential Mentors=&lt;br /&gt;
# Santhosh Thottingal (&#039;&#039;&#039;santhosh&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Baiju M (&#039;&#039;&#039;baijum&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Praveen A (&#039;&#039;&#039;j4v4m4n&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Rajeesh K Nambiar (&#039;&#039;&#039;rajeesh&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Anivar Aravind (&#039;&#039;&#039;anivar&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Vasudev Kammath (&#039;&#039;&#039;copyninja&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Jishnu Mohan (&#039;&#039;&#039;jishnu7&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Hrishikesh K.B (&#039;&#039;&#039;stultus&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Nandaja Varma (&#039;&#039;&#039;gem&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Navaneeth (&#039;&#039;&#039;nkn__&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Ershad K (&#039;&#039;&#039;ershad&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Nishan Naseer (&#039;&#039;&#039;nishan&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
&lt;br /&gt;
=Ideas for Google Summer of Code 2015=&lt;br /&gt;
* Please Read the [http://wiki.smc.org.in/GSoC/2015#FAQ FAQ]&lt;br /&gt;
* If you want to propose an idea, please do it in [http://lists.smc.org.in/listinfo.cgi/student-projects-smc.org.in student projects mailing list]  of [http://smc.org.in Swathanthra Malayalam computing]&lt;br /&gt;
&lt;br /&gt;
=Projects with confirmed mentors=&lt;br /&gt;
&lt;br /&gt;
== ibus-braille module modifications ==&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Project&#039;&#039;&#039;ː&lt;br /&gt;
&lt;br /&gt;
This project will be to make improvements on the [[GSoC/2014/Project_ideas#Adding_Braille_Keyboard_layouts_for_Indian_Languages_to_m17n_Library | project]] that was successfully completed by a student under SMC. The remaining tasks areː&lt;br /&gt;
#Integrate Ibus-Braille with Liblouis&lt;br /&gt;
#Create Table editor for Liblouis&lt;br /&gt;
#Create a web version and host it.&lt;br /&gt;
#Add more indian languages to Liblouis&lt;br /&gt;
#Add facility to write direct braille Unicode characters&lt;br /&gt;
#Remove espeak dependency and make accessible via orca itself.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Confirmed Mentor&#039;&#039;&#039;: Samuel Thibault&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;How to contact the mentor&#039;&#039;&#039;: IRC - youpi on #smc-project on Freenode &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;: &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;What the student will learn&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
== Varnam based ==&lt;br /&gt;
&lt;br /&gt;
=== Varnam Android Keyboard ===&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Project&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
Add support for varnamproject into android and have a native keyboard like indic keyboard. It can be integrated into Indic keyboard or have it as a separate keyboard.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039;: Advanced&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Confirmed Mentor&#039;&#039;&#039;: Navaneeth K. N.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;How to contact the mentor&#039;&#039;&#039;: IRC - nkn__ on #smc-project on Freenode &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;: &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;What the student will learn&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
=Projects with unconfirmed mentors=&lt;br /&gt;
== A spell checker for Indic language that understands inflections ==&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Project&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
libindic project has a spellchecker written using python with a not so simple algorithm. But still it is not capable of handling inflection and agglutination occurring in Indian languages especially south Indian languages. The dictionary we have for Malayalam spellchecker have about 150000 words. Of course we can expand the dictionary, but that doesn&#039;t have much value since words can be formed in Malayalam or Tamil etc by joining multiple words. In addition to that, words get inflected based on grammar forms(sandhi), plural, gender etc. Hunspell has a system to handle this, but so far nobody succeeded in getting it working for multi level suffix stripping as required for Malayalam. Some times a Malayalam word can be formed by more than 5 words joining together. We will need a word splitting logic or a table taking care of all patterns. The project is to attempt solving this with hunspell. If that is not feasible(hunspell upstream is not active), develop an algorithm and implement it.&lt;br /&gt;
&lt;br /&gt;
Recently Tamil attempted developing a spellchecker using Hunspell with multi level suffix stripping. You can see the result here https://github.com/thamizha/solthiruthi. &lt;br /&gt;
Our attempt should be first to use Hunspell to achieve spellchecking with agglutination and inflection. Probably it will require lot of scripting to generate suffix patterns, we can ask help from existing language communities too. If Hunspell has limitation with multi level suffxes- sometimes Indian languages require more than 5 levels of suffix stripping, we need to document it(bug and documentation) and try to attempt python based solution on top of libindic framework.&lt;br /&gt;
&lt;br /&gt;
The project is not about coding an existing algorithm, but to develop and implement an algorithm.&lt;br /&gt;
&lt;br /&gt;
Hunspell&#039;s limitations can be understood from [[User:%E0%B4%B8%E0%B4%A8%E0%B5%8D%E0%B4%A4%E0%B5%8B%E0%B4%B7%E0%B5%8D/HunspellConversation| this conversation]] we had with the author of Hunspell in 2008&lt;br /&gt;
&lt;br /&gt;
Homework to do before submitting applications:&lt;br /&gt;
# Use Hunspell in any Indian language like Malayalam for spell correction in editors or word processors and understand the limitations&lt;br /&gt;
# Study the nature of inflection and agglutination in Indian languages, read existing documents on this(ask for documents too) and note down your observations&lt;br /&gt;
# Study Hunspell and other spellcheckers to see how this problem is addressed&lt;br /&gt;
# Understand how a spell checker works. How to write a spellchecker from scratch?&lt;br /&gt;
# Come up with a plan about addressing the issue.&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;[https://savannah.nongnu.org/task/index.php?12558 Savannah Task]&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039;: Advanced&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Confirmed Mentor&#039;&#039;&#039;: &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;How to contact the mentor&#039;&#039;&#039;: &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;: Average level understanding of grammar system of at least one Indian language and complete the homework as listed above.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;What the student will learn&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
==Indic rendering support in ConTeXt==&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Project&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
ConTeXt is another TeX macro system similar to LaTeX but much more suitable for design. To find more information about ConTeXt, see the wiki http://wiki.contextgarden.net/Main_Page. ConTeXt MKII  have Indic language rendering support using XeTeX. but MKII is deprecated, and the new MKIV backend doesn&#039;t support Indic rendering yet. The aim of this project is to add support to Inidic rendering to ConTeXt MKIV. XeTeX is using Harfbuzz to do correct Indic rendering.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;More Details&#039;&#039;&#039;: A partially working patch by Rajeesh for MKIV lua code is available. ConTeXt mkii (deprecated) can work with XeTeX backend for Indic rendering. Here is a sample file:&lt;br /&gt;
 \usemodule[simplefonts]&lt;br /&gt;
 \definefontfeature[malayalam][script=mlym]&lt;br /&gt;
 \setmainfont[Rachana][features=malayalam]&lt;br /&gt;
 \starttext&lt;br /&gt;
 മലയാളം \TeX ഉപയോഗിച്ച് ടൈപ്പ്സെറ്റ് ചെയ്തത്&lt;br /&gt;
 \stoptext&lt;br /&gt;
Generate the output using command&lt;br /&gt;
 texexec --xetex &amp;lt;file.tex&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;[https://savannah.nongnu.org/task/index.php?12559 Savannah Task]&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039; : Advanced&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Confirmed Mentor&#039;&#039;&#039; : &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;How to contact the mentor&#039;&#039;&#039;: &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;: Understanding of the TeX system, experience in either LaTeX or ConTeXt and basic understanding of Indic language rendering. MKIV uses Lua, familiarity with Lua, opentype specifications or Harfbuzz will be added advantage.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;What the students will learn&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
==Language model and Acoustic model for Malayalam language for speech recognition system in CMU Sphinx==&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Project&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
CMU Sphinx is a large vocabulary, speaker independent speech recognition codebase and suite of tools, which can be used to develop speech recognition system in any language. To develop an automatic speech recognition system in a language, acoustic model and language model has to framed for that particular language.  Acoustic models characterize how sound changes over time. It captures the characteristics of basic recognition units. The language model describes the likelihood, probability, or penalty taken when a sequence or collection of words is seen. It attempts to convey behavior of the language and tries to predict the occurrence of specific word sequences possible in the language. Once these two models are developed, it will be useful to every one doing research in speech processing. For Indian languages Hindi, Tamil, Telugu and Marati, ASR systems have been developed using sphinx engine. In this project work is aimed at developing acoustic model and language model for Malayalam.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Background Reading&#039;&#039;&#039;&lt;br /&gt;
* [http://www.cs.cmu.edu/~gopalakr/publications/spdatabases_specom05.pdf &#039;Development of Indian Language Speech Databases for Large Vocabulary Speech Recognition Systems&#039;], Gopalakrishna  Anumanchipalli, Rahul Chitturi, Sachin Joshi, Rohit Kumar, Satinder Pal Singh, R.N.V. Sitaram, S P Kishore&lt;br /&gt;
* [http://www.aclweb.org/anthology/W/W12/W12-5808.pdf &amp;quot;Automatic Pronunciation Evaluation And Mispronunciation Detection Using CMUSphinx&amp;quot;], Ronanki Srikanth, James Salsman&lt;br /&gt;
* http://www.speech.cs.cmu.edu/&lt;br /&gt;
* http://cmusphinx.sourceforge.net/wiki/tutorial&lt;br /&gt;
* [http://www.ijarcsse.com &amp;quot;HTK Based Telugu Speech Recognition&amp;quot;], P. Vijai Bhaskar, AVNIET ,Hyderabad, Prof. Dr. S. Rama Mohan Rao, A.Gopi &lt;br /&gt;
* [http://www.cs.cmu.edu/~araza/Automatic_Speech_Recognition_System_for_Urdu.PDF &amp;quot;Design and  Development of an Automatic Speech Recognition System for Urdu&amp;quot;], Agha Ali Raza,  M.Sc. Thesis, FAST‐National University of Computer and Emerging Sciences &lt;br /&gt;
* [http://www.ccis2k.org/iajit/PDF/vol.6,no.2/11IASRUCSS186.pdf &amp;quot;Investigation Arabic Speech Recognition Using CMU Sphinx System&amp;quot;], Hassan Satori1, 2, Hussein Hiyassat3, Mostafa Harti1, 2, and Noureddine Chenfour&lt;br /&gt;
* [http://www.try.idv.tw/static-resources/homework/pr/PR_Final_Report.pdf &amp;quot;Understanding the CMU Sphinx Speech Recognition System&amp;quot;], Chun-Feng Liao&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039; : &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Confirmed Mentor&#039;&#039;&#039; : &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;How to contact the mentor&#039;&#039;&#039;: &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;: &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;What the students will learn&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==libindic Project Based==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===libindic Project Improvements===&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Project&#039;&#039;&#039;: &lt;br /&gt;
&lt;br /&gt;
This is set of ideas needed to improve the existing libindic infrastructure. We have decided following tasks as part of this project&lt;br /&gt;
&lt;br /&gt;
# Provide REST API to libindic without disturbing existing JSONRPC API&lt;br /&gt;
# Improve the Transliteration module&lt;br /&gt;
# Integrate [https://github.com/Project-SILPA/flask-webfonts Flask Webfonts] extension with libindic to provide Webfonts support.&lt;br /&gt;
&lt;br /&gt;
==== Provide REST like API for libindic ====&lt;br /&gt;
&lt;br /&gt;
libindic provides JSONRPC API currently which is also utilized by the templates of framework. JSONRPC is not well supported in all languages and results in [https://en.wikipedia.org/wiki/Not_invented_here NIH code]. So we would like to provide REST like HTTP based API&#039;s for libindic and at the same time leave the current JSONRPC code untouched for backward compatibility reasons.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Objectives&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
* Develop module or use existing module to provide REST like API&#039;s&lt;br /&gt;
* API should support GET and POST. [http://www.w3.org/2001/tag/doc/whenToUseGet.html When to use GET?].&lt;br /&gt;
&lt;br /&gt;
Many people have doubt on how the API should look like. We can give twitter API (https://dev.twitter.com/docs/api) as example &lt;br /&gt;
Sample API calls :&lt;br /&gt;
-------------------------------------------------------------&lt;br /&gt;
    POST api.silpa.org.in/payyans/ASCII2Unicode&lt;br /&gt;
    Paramets: text, font&lt;br /&gt;
    Response: JSON data&lt;br /&gt;
-------------------------------------------------------------&lt;br /&gt;
    POST api.silpa.org.in/payyans/Unicode2ASCII&lt;br /&gt;
    Paramets: text, font&lt;br /&gt;
    Response: JSON data&lt;br /&gt;
-------------------------------------------------------------&lt;br /&gt;
Generic: &lt;br /&gt;
    GET/POST (http://api.silpa.org.in/module/function_name or http://silpa.org.in/api/module/function_name)&lt;br /&gt;
    Parameters: function parameters&lt;br /&gt;
    Response: JSON encoded return value from function&lt;br /&gt;
&lt;br /&gt;
====  Improve Transliteration module ====&lt;br /&gt;
&lt;br /&gt;
We have a Transliteration module which supports transliteration from any Indic language to other Indic language and also support to English to Indic and Indic to English transliteration. Also we support IPA and ISO15919 transliteration system. But the module isn&#039;t in perfect shape and has lot of bugs. With this idea we would like to improve the following parts&lt;br /&gt;
&lt;br /&gt;
# Improve cross indic language transliteration system. Currently only Malayalam and Kannada are working without any external language support, all other Indian languages are first transliterated to Malayalam and then transliterated to target Indic language. We want to remove this cycle from source -&amp;gt; Malayalam -&amp;gt; target.&lt;br /&gt;
# English to IPA transliteration is currently broken and this needs to be fixed. See [https://github.com/Project-SILPA/Transliteration/issues/3 IPA transliteration bug].&lt;br /&gt;
# Once the IPA transliteration issue above is fixed, imporve English to Indic transliteration system using IPA. Currently English to Indic transliteration system is done using CMU Sphinx dictionary which is having limited set of words which inturn limits the output of English to Indic transliteration system.&lt;br /&gt;
# Improve IS015919 to Indic transliteration system see [https://github.com/Project-SILPA/Transliteration/issues/4 IS015919 to Indic transliteration].&lt;br /&gt;
&lt;br /&gt;
CLDR has transliteration data for Indic languages. We can explore it and see the feasibility. For an intermediate representation of the scripts either IPA can be used or ISO 15919 standard can be used. All these must be supplemented with exception rules and special case handling to achieve more perfect result.&lt;br /&gt;
&lt;br /&gt;
==== Integrating flask-webfonts extension with libindic ====&lt;br /&gt;
&lt;br /&gt;
libindic used to have a Webfonts module for serving Indian language fonts as Webfonts for browsers. During GSOC 2013 it was separated as an extension to Flask framework which can be generally used with any Flask powered app. The current code can be found at [https://github.com/Project-SILPA/flask-webfonts]. The module is not fine tuned yet so below are the objectives.&lt;br /&gt;
&lt;br /&gt;
# The module is not yet fine tuned and using it will make other modules break. This needs to be fixed (Can be checked with &#039;webfonts&#039; branch of libindic code on github.&lt;br /&gt;
# Write tests to check the functionalities.&lt;br /&gt;
# Adhere to Flask extension guidelines and submit the modules to Flask extensions directory.&lt;br /&gt;
# Write a tool which can take a directory containing fonts file or single font file and generate configuration file needed by the extension. (A possible such tool which is outdated can be found at [https://github.com/copyninja/fontinfo])&lt;br /&gt;
# Provide HTTP api&#039;s through flask extension which can expose the CSS for applications.&lt;br /&gt;
&lt;br /&gt;
For all tasks above we expect documentation, test cases from the students as deliverable. &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039; : Intermediate&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Confirmed Mentors&#039;&#039;&#039; : &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;How to contact the mentors&#039;&#039;&#039;: &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Mailing List&#039;&#039;&#039;: silpa-discuss@nongnu.org &amp;lt;preferred&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;: Python , Flask , Jinja , HTML, Javascript&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;What the students will learn&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
# Writing applications using Flask&lt;br /&gt;
# Various Transliteration system knolwedge&lt;br /&gt;
# Webfonts knowledge and writing extensions for Flask&lt;br /&gt;
# Test drive development.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Converting indic processing modules currently in libindic into javascript modules library===&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Project&#039;&#039;&#039;: &lt;br /&gt;
&lt;br /&gt;
Port some of the silpa algorithms to node modules. Several modules, alogorithms in libindic project is done in python now. But porting them to javascript helps developers. For example, cross language transliteration can be done javascript too if we port the algorithm and transliteration rules. Similarly the approximate search can be ported. A flexibile fuzzy search on the web pages will be possible if we have the algorithm in javascript.&lt;br /&gt;
&lt;br /&gt;
Proposed javascript module pattern is https://github.com/umdjs/umd&lt;br /&gt;
&lt;br /&gt;
Student proposals should have a list of alogorithms planning to port, planned demo applications, planned documentation details, and publishing details(Example: npm registry)&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039; : &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Confirmed Mentor&#039;&#039;&#039; : &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;How to contact the mentor&#039;&#039;&#039;: &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039; Mailing List&#039;&#039;&#039;: silpa-discuss@nongnu.org&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;: javascript, python&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;What the students will learn&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
===Integrate Varnam into libindic===&lt;br /&gt;
&lt;br /&gt;
Create a libindic module which hosts [http://www.varnamproject.com varnam]. This includes making a python port for libvarnam and making a libindic module which uses the python port. &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039; : Medium&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Confirmed Mentor&#039;&#039;&#039; : &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;How to contact the mentor&#039;&#039;&#039;: &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039; Mailing List&#039;&#039;&#039;: silpa-discuss@nongnu.org&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;: C, Python&lt;br /&gt;
&lt;br /&gt;
==Varnam Based==&lt;br /&gt;
&lt;br /&gt;
Varnam is a cross-platform predictive transliterator for Indian languages. It works mostly like Google&#039;s transliterate, but shows key differences in the way word tokenization is done. It has a learning system built in which allows Varnam to make smart predictions. &lt;br /&gt;
&lt;br /&gt;
There are varnam clients available as [https://addons.mozilla.org/en-US/firefox/addon/varnam-transliteration-base/ Firefox]] &amp;amp; [https://chrome.google.com/webstore/detail/varnam-ime/abcfkeabpcanobhdmcmdabejaamephaf Chrome addon] and an [https://gitorious.org/varnamproject/libvarnam-ibus/source/d939adf50024013902c27310c03ef21a9210cdcb IBus engine].&lt;br /&gt;
&lt;br /&gt;
To try out Varnam, navigate to [http://varnamproject.com/editor[http://varnamproject.com/editor]]. Currently it support Hindi and Malayalam.&lt;br /&gt;
&lt;br /&gt;
* [http://www.varnamproject.com/docs/faq FAQ]&lt;br /&gt;
* [http://www.varnamproject.com/docs Documentation]&lt;br /&gt;
* [http://www.varnamproject.com/docs/contributing Contributors guide &amp;amp; ideas to work on]&lt;br /&gt;
&lt;br /&gt;
Apart from the following ideas, you can propose your own idea. &lt;br /&gt;
&lt;br /&gt;
===Programming language bindings &amp;amp; varnam-daemon===&lt;br /&gt;
&lt;br /&gt;
Varnam is written on C which makes interoperability with other languages easy. There are language bindings available for `NodeJs` and `Ruby`. Supporting Varnam in multiple languages allows projects to use varnam easily to enable Indian language input.&lt;br /&gt;
&lt;br /&gt;
To make using varnam from different languages easier, make a cross platform standalone process which uses `libvarnam` shared library and exposes a RPC API over network. This allows any programming language with a socket support can be used with libvarnam. This also makes language bindings fairly easy because they don&#039;t have to work with the native interoperability support. The protocol can be a simple text based protocol for all the commands that `libvarnam` supports. &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039; : Advanced&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Confirmed Mentor&#039;&#039;&#039; : &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;How to contact the mentor&#039;&#039;&#039;: &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;: C&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Improvements to the REST API===&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Project&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
This includes rewrite of the current implementation in `golang` and add support for WebSockets to improve the input experience. This also&lt;br /&gt;
includes making scripts that would ease embedding input on any webpage. All the changes done will go live on[1]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039; : Advanced&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Confirmed Mentor&#039;&#039;&#039; : &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;How to contact the mentor&#039;&#039;&#039;: &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;: Basic understanding of golang and C&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;What the students will learn&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
===Create an Android IME===&lt;br /&gt;
&lt;br /&gt;
Varnam will be ported as a Silpa module and it will be available on Android as part of the android SDK project which Silpa has proposed. This idea is merged to the [http://wiki.smc.org.in/SoC/2014/Project_ideas#Android_SDK_for_Silpa Silpa] project ideas.&lt;br /&gt;
&lt;br /&gt;
===Enable varnam&#039;s suggestions system to be used from Inscript or any other input system===&lt;br /&gt;
&lt;br /&gt;
Varnam has knowledge about lot of words. This idea proposes a method to use these words and provide suggestions for other input systems. Basically, in Varnam, the API call will be something like,&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;&amp;lt;pre&amp;gt;&lt;br /&gt;
varnam_get_suggestions (handle, &amp;quot;भारत&amp;quot;);&lt;br /&gt;
&amp;lt;/pre&amp;gt;&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This will fetch all the suggestions which has the given prefix. &lt;br /&gt;
&lt;br /&gt;
`varnam_get_suggestions` needs to keep track of the previous words and use [http://en.wikipedia.org/wiki/N-gram n-gram] based dataset to filter the results. This should also learn the words back into the word corpus that varnam is using. Filtering suggestions won&#039;t be just a prefix search, but it will have knowledge about how text can be written in the target language and provide smart filtering. Searching in a large corpus and providing real-time suggestions makes this a challenging task. &lt;br /&gt;
&lt;br /&gt;
Once this is implemented in `libvarnam`, it can be used in the ibus-engine.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039; : Advanced&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;:  C, Unicode &amp;amp; encodings&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Confirmed Mentor&#039;&#039;&#039; : &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;How to contact the mentor&#039;&#039;&#039;: &lt;br /&gt;
&lt;br /&gt;
=== Word corpus synchronization ===&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Project&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
Create a cross-platform synchronization tool which can upload/download the word corpus from offline IMEs like varnam-ibus[2]. This helps to build the online words corpus easily.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039; : Medium&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Confirmed Mentor&#039;&#039;&#039; : &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;How to contact the mentor&#039;&#039;&#039;: &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;:  Knowledge in C/golang&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;What the students will learn&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [1]: http://www.varnamproject.com&lt;br /&gt;
* [2]: https://gitorious.org/varnamproject/libvarnam-ibus/&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Grandham ==&lt;br /&gt;
&lt;br /&gt;
=== Adding MARC21 import/export feature in Grandham ===&lt;br /&gt;
&lt;br /&gt;
We need a feature in Grandham to import and parse data from MARC21 documents. We should also be able to export existing data in MARC21.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039; : High&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Confirmed Mentor&#039;&#039;&#039; :&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;How to contact the mentor&#039;&#039;&#039;: &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;: Knowledge in Ruby/Ruby on Rails&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;What the students will learn&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [1]: http://dev.grandham.org&lt;br /&gt;
* [2]: https://github.com/smc/grandham&lt;/div&gt;</summary>
		<author><name>Nandaja</name></author>
	</entry>
	<entry>
		<id>https://wiki.smc.org.in/index.php?title=GSoC/2015/Project_ideas&amp;diff=10710</id>
		<title>GSoC/2015/Project ideas</title>
		<link rel="alternate" type="text/html" href="https://wiki.smc.org.in/index.php?title=GSoC/2015/Project_ideas&amp;diff=10710"/>
		<updated>2015-02-16T08:52:01Z</updated>

		<summary type="html">&lt;p&gt;Nandaja: /* A spell checker for Indic language that understands inflections */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;center&amp;gt; &lt;br /&gt;
&amp;lt;font color=&amp;quot;green&amp;quot;&amp;gt; &amp;lt;big&amp;gt;&#039;&#039;&#039;Apart from the following ideas , you can propose your own ideas&#039;&#039;&#039;&amp;lt;/big&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Potential Mentors=&lt;br /&gt;
# Santhosh Thottingal (&#039;&#039;&#039;santhosh&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Baiju M (&#039;&#039;&#039;baijum&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Praveen A (&#039;&#039;&#039;j4v4m4n&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Rajeesh K Nambiar (&#039;&#039;&#039;rajeesh&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Anivar Aravind (&#039;&#039;&#039;anivar&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Vasudev Kammath (&#039;&#039;&#039;copyninja&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Jishnu Mohan (&#039;&#039;&#039;jishnu7&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Hrishikesh K.B (&#039;&#039;&#039;stultus&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Nandaja Varma (&#039;&#039;&#039;gem&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Navaneeth (&#039;&#039;&#039;nkn__&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Ershad K (&#039;&#039;&#039;ershad&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Nishan Naseer (&#039;&#039;&#039;nishan&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
&lt;br /&gt;
=Ideas for Google Summer of Code 2015=&lt;br /&gt;
* Please Read the [http://wiki.smc.org.in/GSoC/2015#FAQ FAQ]&lt;br /&gt;
* If you want to propose an idea, please do it in [http://lists.smc.org.in/listinfo.cgi/student-projects-smc.org.in student projects mailing list]  of [http://smc.org.in Swathanthra Malayalam computing]&lt;br /&gt;
&lt;br /&gt;
=Projects with confirmed mentors=&lt;br /&gt;
&lt;br /&gt;
== ibus-braille module modifications ==&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Project&#039;&#039;&#039;ː&lt;br /&gt;
&lt;br /&gt;
This project will be to make improvements on the [[GSoC/2014/Project_ideas#Adding_Braille_Keyboard_layouts_for_Indian_Languages_to_m17n_Library | project]] that was successfully completed by a student under SMC. The remaining tasks areː&lt;br /&gt;
#Integrate Ibus-Braille with Liblouis&lt;br /&gt;
#Create Table editor for Liblouis&lt;br /&gt;
#Create a web version and host it.&lt;br /&gt;
#Add more indian languages to Liblouis&lt;br /&gt;
#Add facility to write direct braille Unicode characters&lt;br /&gt;
#Remove espeak dependency and make accessible via orca itself.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Confirmed Mentor&#039;&#039;&#039;: Samuel Thibault&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;How to contact the mentor&#039;&#039;&#039;: IRC - youpi on #smc-project on Freenode &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;: &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;What the student will learn&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
== Varnam based ==&lt;br /&gt;
&lt;br /&gt;
=== Varnam Android Keyboard ===&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Project&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
Add support for varnamproject into android and have a native keyboard like indic keyboard. It can be integrated into Indic keyboard or have it as a separate keyboard.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039;: Advanced&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Confirmed Mentor&#039;&#039;&#039;: Navaneeth K. N.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;How to contact the mentor&#039;&#039;&#039;: IRC - nkn__ on #smc-project on Freenode &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;: &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;What the student will learn&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
=Projects with unconfirmed mentors=&lt;br /&gt;
== A spell checker for Indic language that understands inflections ==&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Project&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
libindic project has a spellchecker written using python with a not so simple algorithm. But still it is not capable of handling inflection and agglutination occurring in Indian languages especially south Indian languages. The dictionary we have for Malayalam spellchecker have about 150000 words. Of course we can expand the dictionary, but that doesn&#039;t have much value since words can be formed in Malayalam or Tamil etc by joining multiple words. In addition to that, words get inflected based on grammar forms(sandhi), plural, gender etc. Hunspell has a system to handle this, but so far nobody succeeded in getting it working for multi level suffix stripping as required for Malayalam. Some times a Malayalam word can be formed by more than 5 words joining together. We will need a word splitting logic or a table taking care of all patterns. The project is to attempt solving this with hunspell. If that is not feasible(hunspell upstream is not active), develop an algorithm and implement it.&lt;br /&gt;
&lt;br /&gt;
Recently Tamil attempted developing a spellchecker using Hunspell with multi level suffix stripping. You can see the result here https://github.com/thamizha/solthiruthi. &lt;br /&gt;
Our attempt should be first to use Hunspell to achieve spellchecking with agglutination and inflection. Probably it will require lot of scripting to generate suffix patterns, we can ask help from existing language communities too. If Hunspell has limitation with multi level suffxes- sometimes Indian languages require more than 5 levels of suffix stripping, we need to document it(bug and documentation) and try to attempt python based solution on top of libindic framework.&lt;br /&gt;
&lt;br /&gt;
The project is not about coding an existing algorithm, but to develop and implement an algorithm.&lt;br /&gt;
&lt;br /&gt;
Hunspell&#039;s limitations can be understood from [[User:%E0%B4%B8%E0%B4%A8%E0%B5%8D%E0%B4%A4%E0%B5%8B%E0%B4%B7%E0%B5%8D/HunspellConversation| this conversation]] we had with the author of Hunspell in 2008&lt;br /&gt;
&lt;br /&gt;
Homework to do before submitting applications:&lt;br /&gt;
# Use Hunspell in any Indian language like Malayalam for spell correction in editors or word processors and understand the limitations&lt;br /&gt;
# Study the nature of inflection and agglutination in Indian languages, read existing documents on this(ask for documents too) and note down your observations&lt;br /&gt;
# Study Hunspell and other spellcheckers to see how this problem is addressed&lt;br /&gt;
# Understand how a spell checker works. How to write a spellchecker from scratch?&lt;br /&gt;
# Come up with a plan about addressing the issue.&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;[https://savannah.nongnu.org/task/index.php?12558 Savannah Task]&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039;: Advanced&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Confirmed Mentor&#039;&#039;&#039;: &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;How to contact the mentor&#039;&#039;&#039;: &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;: Average level understanding of grammar system of at least one Indian language and complete the homework as listed above.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;What the student will learn&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
==Indic rendering support in ConTeXt==&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Project&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
ConTeXt is another TeX macro system similar to LaTeX but much more suitable for design. To find more information about ConTeXt, see the wiki http://wiki.contextgarden.net/Main_Page. ConTeXt MKII  have Indic language rendering support using XeTeX. but MKII is deprecated, and the new MKIV backend doesn&#039;t support Indic rendering yet. The aim of this project is to add support to Inidic rendering to ConTeXt MKIV. XeTeX is using Harfbuzz to do correct Indic rendering.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;More Details&#039;&#039;&#039;: A partially working patch by Rajeesh for MKIV lua code is available. ConTeXt mkii (deprecated) can work with XeTeX backend for Indic rendering. Here is a sample file:&lt;br /&gt;
 \usemodule[simplefonts]&lt;br /&gt;
 \definefontfeature[malayalam][script=mlym]&lt;br /&gt;
 \setmainfont[Rachana][features=malayalam]&lt;br /&gt;
 \starttext&lt;br /&gt;
 മലയാളം \TeX ഉപയോഗിച്ച് ടൈപ്പ്സെറ്റ് ചെയ്തത്&lt;br /&gt;
 \stoptext&lt;br /&gt;
Generate the output using command&lt;br /&gt;
 texexec --xetex &amp;lt;file.tex&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;[https://savannah.nongnu.org/task/index.php?12559 Savannah Task]&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039; : Advanced&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Confirmed Mentor&#039;&#039;&#039; : &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;How to contact the mentor&#039;&#039;&#039;: &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;: Understanding of the TeX system, experience in either LaTeX or ConTeXt and basic understanding of Indic language rendering. MKIV uses Lua, familiarity with Lua, opentype specifications or Harfbuzz will be added advantage.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;What the students will learn&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
==Language model and Acoustic model for Malayalam language for speech recognition system in CMU Sphinx==&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Project&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
CMU Sphinx is a large vocabulary, speaker independent speech recognition codebase and suite of tools, which can be used to develop speech recognition system in any language. To develop an automatic speech recognition system in a language, acoustic model and language model has to framed for that particular language.  Acoustic models characterize how sound changes over time. It captures the characteristics of basic recognition units. The language model describes the likelihood, probability, or penalty taken when a sequence or collection of words is seen. It attempts to convey behavior of the language and tries to predict the occurrence of specific word sequences possible in the language. Once these two models are developed, it will be useful to every one doing research in speech processing. For Indian languages Hindi, Tamil, Telugu and Marati, ASR systems have been developed using sphinx engine. In this project work is aimed at developing acoustic model and language model for Malayalam.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Background Reading&#039;&#039;&#039;&lt;br /&gt;
* [http://www.cs.cmu.edu/~gopalakr/publications/spdatabases_specom05.pdf &#039;Development of Indian Language Speech Databases for Large Vocabulary Speech Recognition Systems&#039;], Gopalakrishna  Anumanchipalli, Rahul Chitturi, Sachin Joshi, Rohit Kumar, Satinder Pal Singh, R.N.V. Sitaram, S P Kishore&lt;br /&gt;
* [http://www.aclweb.org/anthology/W/W12/W12-5808.pdf &amp;quot;Automatic Pronunciation Evaluation And Mispronunciation Detection Using CMUSphinx&amp;quot;], Ronanki Srikanth, James Salsman&lt;br /&gt;
* http://www.speech.cs.cmu.edu/&lt;br /&gt;
* http://cmusphinx.sourceforge.net/wiki/tutorial&lt;br /&gt;
* [http://www.ijarcsse.com &amp;quot;HTK Based Telugu Speech Recognition&amp;quot;], P. Vijai Bhaskar, AVNIET ,Hyderabad, Prof. Dr. S. Rama Mohan Rao, A.Gopi &lt;br /&gt;
* [http://www.cs.cmu.edu/~araza/Automatic_Speech_Recognition_System_for_Urdu.PDF &amp;quot;Design and  Development of an Automatic Speech Recognition System for Urdu&amp;quot;], Agha Ali Raza,  M.Sc. Thesis, FAST‐National University of Computer and Emerging Sciences &lt;br /&gt;
* [http://www.ccis2k.org/iajit/PDF/vol.6,no.2/11IASRUCSS186.pdf &amp;quot;Investigation Arabic Speech Recognition Using CMU Sphinx System&amp;quot;], Hassan Satori1, 2, Hussein Hiyassat3, Mostafa Harti1, 2, and Noureddine Chenfour&lt;br /&gt;
* [http://www.try.idv.tw/static-resources/homework/pr/PR_Final_Report.pdf &amp;quot;Understanding the CMU Sphinx Speech Recognition System&amp;quot;], Chun-Feng Liao&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039; : &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Confirmed Mentor&#039;&#039;&#039; : &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;How to contact the mentor&#039;&#039;&#039;: &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;: &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;What the students will learn&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==SILPA Project Based==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===SILPA Project Improvements===&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Project&#039;&#039;&#039;: &lt;br /&gt;
&lt;br /&gt;
This is set of ideas needed to improve the existing SILPA infrastructure. We have decided following tasks as part of this project&lt;br /&gt;
&lt;br /&gt;
# Provide REST API to SILPA without disturbing existing JSONRPC API&lt;br /&gt;
# Improve the Transliteration module&lt;br /&gt;
# Integrate [https://github.com/Project-SILPA/flask-webfonts Flask Webfonts] extension with SILPA to provide Webfonts support.&lt;br /&gt;
&lt;br /&gt;
==== Provide REST like API for SILPA ====&lt;br /&gt;
&lt;br /&gt;
SILPA provides JSONRPC API currently which is also utilized by the templates of framework. JSONRPC is not well supported in all languages and results in [https://en.wikipedia.org/wiki/Not_invented_here NIH code]. So we would like to provide REST like HTTP based API&#039;s for SILPA and at the same time leave the current JSONRPC code untouched for backward compatibility reasons.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Objectives&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
* Develop module or use existing module to provide REST like API&#039;s&lt;br /&gt;
* API should support GET and POST. [http://www.w3.org/2001/tag/doc/whenToUseGet.html When to use GET?].&lt;br /&gt;
&lt;br /&gt;
Many people have doubt on how the API should look like. We can give twitter API (https://dev.twitter.com/docs/api) as example &lt;br /&gt;
Sample API calls :&lt;br /&gt;
-------------------------------------------------------------&lt;br /&gt;
    POST api.silpa.org.in/payyans/ASCII2Unicode&lt;br /&gt;
    Paramets: text, font&lt;br /&gt;
    Response: JSON data&lt;br /&gt;
-------------------------------------------------------------&lt;br /&gt;
    POST api.silpa.org.in/payyans/Unicode2ASCII&lt;br /&gt;
    Paramets: text, font&lt;br /&gt;
    Response: JSON data&lt;br /&gt;
-------------------------------------------------------------&lt;br /&gt;
Generic: &lt;br /&gt;
    GET/POST (http://api.silpa.org.in/module/function_name or http://silpa.org.in/api/module/function_name)&lt;br /&gt;
    Parameters: function parameters&lt;br /&gt;
    Response: JSON encoded return value from function&lt;br /&gt;
&lt;br /&gt;
====  Improve Transliteration module ====&lt;br /&gt;
&lt;br /&gt;
We have a Transliteration module which supports transliteration from any Indic language to other Indic language and also support to English to Indic and Indic to English transliteration. Also we support IPA and ISO15919 transliteration system. But the module isn&#039;t in perfect shape and has lot of bugs. With this idea we would like to improve the following parts&lt;br /&gt;
&lt;br /&gt;
# Improve cross indic language transliteration system. Currently only Malayalam and Kannada are working without any external language support, all other Indian languages are first transliterated to Malayalam and then transliterated to target Indic language. We want to remove this cycle from source -&amp;gt; Malayalam -&amp;gt; target.&lt;br /&gt;
# English to IPA transliteration is currently broken and this needs to be fixed. See [https://github.com/Project-SILPA/Transliteration/issues/3 IPA transliteration bug].&lt;br /&gt;
# Once the IPA transliteration issue above is fixed, imporve English to Indic transliteration system using IPA. Currently English to Indic transliteration system is done using CMU Sphinx dictionary which is having limited set of words which inturn limits the output of English to Indic transliteration system.&lt;br /&gt;
# Improve IS015919 to Indic transliteration system see [https://github.com/Project-SILPA/Transliteration/issues/4 IS015919 to Indic transliteration].&lt;br /&gt;
&lt;br /&gt;
CLDR has transliteration data for Indic languages. We can explore it and see the feasibility. For an intermediate representation of the scripts either IPA can be used or ISO 15919 standard can be used. All these must be supplemented with exception rules and special case handling to achieve more perfect result.&lt;br /&gt;
&lt;br /&gt;
==== Integrating flask-webfonts extension with SILPA ====&lt;br /&gt;
&lt;br /&gt;
SILPA used to have a Webfonts module for serving Indian language fonts as Webfonts for browsers. During GSOC 2013 it was separated as an extension to Flask framework which can be generally used with any Flask powered app. The current code can be found at [https://github.com/Project-SILPA/flask-webfonts]. The module is not fine tuned yet so below are the objectives.&lt;br /&gt;
&lt;br /&gt;
# The module is not yet fine tuned and using it will make other modules break. This needs to be fixed (Can be checked with &#039;webfonts&#039; branch of SILPA code on github.&lt;br /&gt;
# Write tests to check the functionalities.&lt;br /&gt;
# Adhere to Flask extension guidelines and submit the modules to Flask extensions directory.&lt;br /&gt;
# Write a tool which can take a directory containing fonts file or single font file and generate configuration file needed by the extension. (A possible such tool which is outdated can be found at [https://github.com/copyninja/fontinfo])&lt;br /&gt;
# Provide HTTP api&#039;s through flask extension which can expose the CSS for applications.&lt;br /&gt;
&lt;br /&gt;
For all tasks above we expect documentation, test cases from the students as deliverable. &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039; : Intermediate&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Confirmed Mentors&#039;&#039;&#039; : &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;How to contact the mentors&#039;&#039;&#039;: &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Mailing List&#039;&#039;&#039;: silpa-discuss@nongnu.org &amp;lt;preferred&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;: Python , Flask , Jinja , HTML, Javascript&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;What the students will learn&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
# Writing applications using Flask&lt;br /&gt;
# Various Transliteration system knolwedge&lt;br /&gt;
# Webfonts knowledge and writing extensions for Flask&lt;br /&gt;
# Test drive development.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Converting indic processing modules currently in SILPA into javascript modules library===&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Project&#039;&#039;&#039;: &lt;br /&gt;
&lt;br /&gt;
Port some of the silpa algorithms to node modules. Several modules, alogorithms in SILPA project is done in python now. But porting them to javascript helps developers. For example, cross language transliteration can be done javascript too if we port the algorithm and transliteration rules. Similarly the approximate search can be ported. A flexibile fuzzy search on the web pages will be possible if we have the algorithm in javascript.&lt;br /&gt;
&lt;br /&gt;
Proposed javascript module pattern is https://github.com/umdjs/umd&lt;br /&gt;
&lt;br /&gt;
Student proposals should have a list of alogorithms planning to port, planned demo applications, planned documentation details, and publishing details(Example: npm registry)&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039; : &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Confirmed Mentor&#039;&#039;&#039; : &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;How to contact the mentor&#039;&#039;&#039;: &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039; Mailing List&#039;&#039;&#039;: silpa-discuss@nongnu.org&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;: javascript, python&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;What the students will learn&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
===Integrate Varnam into Silpa===&lt;br /&gt;
&lt;br /&gt;
Create a Silpa module which hosts [http://www.varnamproject.com varnam]. This includes making a python port for libvarnam and making a Silpa module which uses the python port. &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039; : Medium&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Confirmed Mentor&#039;&#039;&#039; : &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;How to contact the mentor&#039;&#039;&#039;: &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039; Mailing List&#039;&#039;&#039;: silpa-discuss@nongnu.org&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;: C, Python&lt;br /&gt;
&lt;br /&gt;
==Varnam Based==&lt;br /&gt;
&lt;br /&gt;
Varnam is a cross-platform predictive transliterator for Indian languages. It works mostly like Google&#039;s transliterate, but shows key differences in the way word tokenization is done. It has a learning system built in which allows Varnam to make smart predictions. &lt;br /&gt;
&lt;br /&gt;
There are varnam clients available as [https://addons.mozilla.org/en-US/firefox/addon/varnam-transliteration-base/ Firefox]] &amp;amp; [https://chrome.google.com/webstore/detail/varnam-ime/abcfkeabpcanobhdmcmdabejaamephaf Chrome addon] and an [https://gitorious.org/varnamproject/libvarnam-ibus/source/d939adf50024013902c27310c03ef21a9210cdcb IBus engine].&lt;br /&gt;
&lt;br /&gt;
To try out Varnam, navigate to [http://varnamproject.com/editor[http://varnamproject.com/editor]]. Currently it support Hindi and Malayalam.&lt;br /&gt;
&lt;br /&gt;
* [http://www.varnamproject.com/docs/faq FAQ]&lt;br /&gt;
* [http://www.varnamproject.com/docs Documentation]&lt;br /&gt;
* [http://www.varnamproject.com/docs/contributing Contributors guide &amp;amp; ideas to work on]&lt;br /&gt;
&lt;br /&gt;
Apart from the following ideas, you can propose your own idea. &lt;br /&gt;
&lt;br /&gt;
===Programming language bindings &amp;amp; varnam-daemon===&lt;br /&gt;
&lt;br /&gt;
Varnam is written on C which makes interoperability with other languages easy. There are language bindings available for `NodeJs` and `Ruby`. Supporting Varnam in multiple languages allows projects to use varnam easily to enable Indian language input.&lt;br /&gt;
&lt;br /&gt;
To make using varnam from different languages easier, make a cross platform standalone process which uses `libvarnam` shared library and exposes a RPC API over network. This allows any programming language with a socket support can be used with libvarnam. This also makes language bindings fairly easy because they don&#039;t have to work with the native interoperability support. The protocol can be a simple text based protocol for all the commands that `libvarnam` supports. &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039; : Advanced&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Confirmed Mentor&#039;&#039;&#039; : &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;How to contact the mentor&#039;&#039;&#039;: &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;: C&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Improvements to the REST API===&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Project&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
This includes rewrite of the current implementation in `golang` and add support for WebSockets to improve the input experience. This also&lt;br /&gt;
includes making scripts that would ease embedding input on any webpage. All the changes done will go live on[1]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039; : Advanced&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Confirmed Mentor&#039;&#039;&#039; : &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;How to contact the mentor&#039;&#039;&#039;: &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;: Basic understanding of golang and C&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;What the students will learn&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
===Create an Android IME===&lt;br /&gt;
&lt;br /&gt;
Varnam will be ported as a Silpa module and it will be available on Android as part of the android SDK project which Silpa has proposed. This idea is merged to the [http://wiki.smc.org.in/SoC/2014/Project_ideas#Android_SDK_for_Silpa Silpa] project ideas.&lt;br /&gt;
&lt;br /&gt;
===Enable varnam&#039;s suggestions system to be used from Inscript or any other input system===&lt;br /&gt;
&lt;br /&gt;
Varnam has knowledge about lot of words. This idea proposes a method to use these words and provide suggestions for other input systems. Basically, in Varnam, the API call will be something like,&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;&amp;lt;pre&amp;gt;&lt;br /&gt;
varnam_get_suggestions (handle, &amp;quot;भारत&amp;quot;);&lt;br /&gt;
&amp;lt;/pre&amp;gt;&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This will fetch all the suggestions which has the given prefix. &lt;br /&gt;
&lt;br /&gt;
`varnam_get_suggestions` needs to keep track of the previous words and use [http://en.wikipedia.org/wiki/N-gram n-gram] based dataset to filter the results. This should also learn the words back into the word corpus that varnam is using. Filtering suggestions won&#039;t be just a prefix search, but it will have knowledge about how text can be written in the target language and provide smart filtering. Searching in a large corpus and providing real-time suggestions makes this a challenging task. &lt;br /&gt;
&lt;br /&gt;
Once this is implemented in `libvarnam`, it can be used in the ibus-engine.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039; : Advanced&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;:  C, Unicode &amp;amp; encodings&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Confirmed Mentor&#039;&#039;&#039; : &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;How to contact the mentor&#039;&#039;&#039;: &lt;br /&gt;
&lt;br /&gt;
=== Word corpus synchronization ===&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Project&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
Create a cross-platform synchronization tool which can upload/download the word corpus from offline IMEs like varnam-ibus[2]. This helps to build the online words corpus easily.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039; : Medium&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Confirmed Mentor&#039;&#039;&#039; : &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;How to contact the mentor&#039;&#039;&#039;: &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;:  Knowledge in C/golang&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;What the students will learn&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [1]: http://www.varnamproject.com&lt;br /&gt;
* [2]: https://gitorious.org/varnamproject/libvarnam-ibus/&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Grandham ==&lt;br /&gt;
&lt;br /&gt;
=== Adding MARC21 import/export feature in Grandham ===&lt;br /&gt;
&lt;br /&gt;
We need a feature in Grandham to import and parse data from MARC21 documents. We should also be able to export existing data in MARC21.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039; : High&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Confirmed Mentor&#039;&#039;&#039; :&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;How to contact the mentor&#039;&#039;&#039;: &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;: Knowledge in Ruby/Ruby on Rails&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;What the students will learn&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [1]: http://dev.grandham.org&lt;br /&gt;
* [2]: https://github.com/smc/grandham&lt;/div&gt;</summary>
		<author><name>Nandaja</name></author>
	</entry>
	<entry>
		<id>https://wiki.smc.org.in/index.php?title=GSoC/2015/Project_ideas&amp;diff=10709</id>
		<title>GSoC/2015/Project ideas</title>
		<link rel="alternate" type="text/html" href="https://wiki.smc.org.in/index.php?title=GSoC/2015/Project_ideas&amp;diff=10709"/>
		<updated>2015-02-16T08:51:21Z</updated>

		<summary type="html">&lt;p&gt;Nandaja: /* A spell checker for Indic language that understands inflections */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;center&amp;gt; &lt;br /&gt;
&amp;lt;font color=&amp;quot;green&amp;quot;&amp;gt; &amp;lt;big&amp;gt;&#039;&#039;&#039;Apart from the following ideas , you can propose your own ideas&#039;&#039;&#039;&amp;lt;/big&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Potential Mentors=&lt;br /&gt;
# Santhosh Thottingal (&#039;&#039;&#039;santhosh&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Baiju M (&#039;&#039;&#039;baijum&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Praveen A (&#039;&#039;&#039;j4v4m4n&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Rajeesh K Nambiar (&#039;&#039;&#039;rajeesh&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Anivar Aravind (&#039;&#039;&#039;anivar&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Vasudev Kammath (&#039;&#039;&#039;copyninja&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Jishnu Mohan (&#039;&#039;&#039;jishnu7&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Hrishikesh K.B (&#039;&#039;&#039;stultus&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Nandaja Varma (&#039;&#039;&#039;gem&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Navaneeth (&#039;&#039;&#039;nkn__&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Ershad K (&#039;&#039;&#039;ershad&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Nishan Naseer (&#039;&#039;&#039;nishan&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
&lt;br /&gt;
=Ideas for Google Summer of Code 2015=&lt;br /&gt;
* Please Read the [http://wiki.smc.org.in/GSoC/2015#FAQ FAQ]&lt;br /&gt;
* If you want to propose an idea, please do it in [http://lists.smc.org.in/listinfo.cgi/student-projects-smc.org.in student projects mailing list]  of [http://smc.org.in Swathanthra Malayalam computing]&lt;br /&gt;
&lt;br /&gt;
=Projects with confirmed mentors=&lt;br /&gt;
&lt;br /&gt;
== ibus-braille module modifications ==&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Project&#039;&#039;&#039;ː&lt;br /&gt;
&lt;br /&gt;
This project will be to make improvements on the [[GSoC/2014/Project_ideas#Adding_Braille_Keyboard_layouts_for_Indian_Languages_to_m17n_Library | project]] that was successfully completed by a student under SMC. The remaining tasks areː&lt;br /&gt;
#Integrate Ibus-Braille with Liblouis&lt;br /&gt;
#Create Table editor for Liblouis&lt;br /&gt;
#Create a web version and host it.&lt;br /&gt;
#Add more indian languages to Liblouis&lt;br /&gt;
#Add facility to write direct braille Unicode characters&lt;br /&gt;
#Remove espeak dependency and make accessible via orca itself.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Confirmed Mentor&#039;&#039;&#039;: Samuel Thibault&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;How to contact the mentor&#039;&#039;&#039;: IRC - youpi on #smc-project on Freenode &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;: &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;What the student will learn&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
== Varnam based ==&lt;br /&gt;
&lt;br /&gt;
=== Varnam Android Keyboard ===&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Project&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
Add support for varnamproject into android and have a native keyboard like indic keyboard. It can be integrated into Indic keyboard or have it as a separate keyboard.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039;: Advanced&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Confirmed Mentor&#039;&#039;&#039;: Navaneeth K. N.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;How to contact the mentor&#039;&#039;&#039;: IRC - nkn__ on #smc-project on Freenode &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;: &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;What the student will learn&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
=Projects with unconfirmed mentors=&lt;br /&gt;
== A spell checker for Indic language that understands inflections ==&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Project&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
libindic project has a spellchecker written using python with a not so simple algorithm. But still it is not capable of handling inflection and agglutination occurring in Indian languages especially south Indian languages. The dictionary we have for Malayalam spellchecker have about 150000 words. Of course we can expand the dictionary, but that doesn&#039;t have much value since words can be formed in Malayalam or Tamil etc by joining multiple words. In addition to that, words get inflected based on grammar forms(sandhi), plural, gender etc. Hunspell has a system to handle this, but so far nobody succeeded in getting it working for multi level suffix stripping as required for Malayalam. Some times a Malayalam word can be formed by more than 5 words joining together. We will need a word splitting logic or a table taking care of all patterns. The project is to attempt solving this with hunspell. If that is not feasible(hunspell upstream is not active), develop an algorithm and implement it.&lt;br /&gt;
&lt;br /&gt;
Recently Tamil attempted developing a spellchecker using Hunspell with multi level suffix stripping. You can see the result here https://github.com/thamizha/solthiruthi. &lt;br /&gt;
Our attempt should be first to use Hunspell to achieve spellchecking with agglutination and inflection. Probably it will require lot of scripting to generate suffix patterns, we can ask help from existing language communities too. If Hunspell has limitation with multi level suffxes- sometimes Indian languages require more than 5 levels of suffix stripping, we need to document it(bug and documentation) and try to attempt python based solution on top of SILPA framework.&lt;br /&gt;
&lt;br /&gt;
The project is not about coding an existing algorithm, but to develop and implement an algorithm.&lt;br /&gt;
&lt;br /&gt;
Hunspell&#039;s limitations can be understood from [[User:%E0%B4%B8%E0%B4%A8%E0%B5%8D%E0%B4%A4%E0%B5%8B%E0%B4%B7%E0%B5%8D/HunspellConversation| this conversation]] we had with the author of Hunspell in 2008&lt;br /&gt;
&lt;br /&gt;
Homework to do before submitting applications:&lt;br /&gt;
# Use Hunspell in any Indian language like Malayalam for spell correction in editors or word processors and understand the limitations&lt;br /&gt;
# Study the nature of inflection and agglutination in Indian languages, read existing documents on this(ask for documents too) and note down your observations&lt;br /&gt;
# Study Hunspell and other spellcheckers to see how this problem is addressed&lt;br /&gt;
# Understand how a spell checker works. How to write a spellchecker from scratch?&lt;br /&gt;
# Come up with a plan about addressing the issue.&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;[https://savannah.nongnu.org/task/index.php?12558 Savannah Task]&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039;: Advanced&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Confirmed Mentor&#039;&#039;&#039;: &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;How to contact the mentor&#039;&#039;&#039;: &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;: Average level understanding of grammar system of at least one Indian language and complete the homework as listed above.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;What the student will learn&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
==Indic rendering support in ConTeXt==&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Project&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
ConTeXt is another TeX macro system similar to LaTeX but much more suitable for design. To find more information about ConTeXt, see the wiki http://wiki.contextgarden.net/Main_Page. ConTeXt MKII  have Indic language rendering support using XeTeX. but MKII is deprecated, and the new MKIV backend doesn&#039;t support Indic rendering yet. The aim of this project is to add support to Inidic rendering to ConTeXt MKIV. XeTeX is using Harfbuzz to do correct Indic rendering.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;More Details&#039;&#039;&#039;: A partially working patch by Rajeesh for MKIV lua code is available. ConTeXt mkii (deprecated) can work with XeTeX backend for Indic rendering. Here is a sample file:&lt;br /&gt;
 \usemodule[simplefonts]&lt;br /&gt;
 \definefontfeature[malayalam][script=mlym]&lt;br /&gt;
 \setmainfont[Rachana][features=malayalam]&lt;br /&gt;
 \starttext&lt;br /&gt;
 മലയാളം \TeX ഉപയോഗിച്ച് ടൈപ്പ്സെറ്റ് ചെയ്തത്&lt;br /&gt;
 \stoptext&lt;br /&gt;
Generate the output using command&lt;br /&gt;
 texexec --xetex &amp;lt;file.tex&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;[https://savannah.nongnu.org/task/index.php?12559 Savannah Task]&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039; : Advanced&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Confirmed Mentor&#039;&#039;&#039; : &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;How to contact the mentor&#039;&#039;&#039;: &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;: Understanding of the TeX system, experience in either LaTeX or ConTeXt and basic understanding of Indic language rendering. MKIV uses Lua, familiarity with Lua, opentype specifications or Harfbuzz will be added advantage.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;What the students will learn&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
==Language model and Acoustic model for Malayalam language for speech recognition system in CMU Sphinx==&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Project&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
CMU Sphinx is a large vocabulary, speaker independent speech recognition codebase and suite of tools, which can be used to develop speech recognition system in any language. To develop an automatic speech recognition system in a language, acoustic model and language model has to framed for that particular language.  Acoustic models characterize how sound changes over time. It captures the characteristics of basic recognition units. The language model describes the likelihood, probability, or penalty taken when a sequence or collection of words is seen. It attempts to convey behavior of the language and tries to predict the occurrence of specific word sequences possible in the language. Once these two models are developed, it will be useful to every one doing research in speech processing. For Indian languages Hindi, Tamil, Telugu and Marati, ASR systems have been developed using sphinx engine. In this project work is aimed at developing acoustic model and language model for Malayalam.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Background Reading&#039;&#039;&#039;&lt;br /&gt;
* [http://www.cs.cmu.edu/~gopalakr/publications/spdatabases_specom05.pdf &#039;Development of Indian Language Speech Databases for Large Vocabulary Speech Recognition Systems&#039;], Gopalakrishna  Anumanchipalli, Rahul Chitturi, Sachin Joshi, Rohit Kumar, Satinder Pal Singh, R.N.V. Sitaram, S P Kishore&lt;br /&gt;
* [http://www.aclweb.org/anthology/W/W12/W12-5808.pdf &amp;quot;Automatic Pronunciation Evaluation And Mispronunciation Detection Using CMUSphinx&amp;quot;], Ronanki Srikanth, James Salsman&lt;br /&gt;
* http://www.speech.cs.cmu.edu/&lt;br /&gt;
* http://cmusphinx.sourceforge.net/wiki/tutorial&lt;br /&gt;
* [http://www.ijarcsse.com &amp;quot;HTK Based Telugu Speech Recognition&amp;quot;], P. Vijai Bhaskar, AVNIET ,Hyderabad, Prof. Dr. S. Rama Mohan Rao, A.Gopi &lt;br /&gt;
* [http://www.cs.cmu.edu/~araza/Automatic_Speech_Recognition_System_for_Urdu.PDF &amp;quot;Design and  Development of an Automatic Speech Recognition System for Urdu&amp;quot;], Agha Ali Raza,  M.Sc. Thesis, FAST‐National University of Computer and Emerging Sciences &lt;br /&gt;
* [http://www.ccis2k.org/iajit/PDF/vol.6,no.2/11IASRUCSS186.pdf &amp;quot;Investigation Arabic Speech Recognition Using CMU Sphinx System&amp;quot;], Hassan Satori1, 2, Hussein Hiyassat3, Mostafa Harti1, 2, and Noureddine Chenfour&lt;br /&gt;
* [http://www.try.idv.tw/static-resources/homework/pr/PR_Final_Report.pdf &amp;quot;Understanding the CMU Sphinx Speech Recognition System&amp;quot;], Chun-Feng Liao&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039; : &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Confirmed Mentor&#039;&#039;&#039; : &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;How to contact the mentor&#039;&#039;&#039;: &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;: &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;What the students will learn&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==SILPA Project Based==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===SILPA Project Improvements===&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Project&#039;&#039;&#039;: &lt;br /&gt;
&lt;br /&gt;
This is set of ideas needed to improve the existing SILPA infrastructure. We have decided following tasks as part of this project&lt;br /&gt;
&lt;br /&gt;
# Provide REST API to SILPA without disturbing existing JSONRPC API&lt;br /&gt;
# Improve the Transliteration module&lt;br /&gt;
# Integrate [https://github.com/Project-SILPA/flask-webfonts Flask Webfonts] extension with SILPA to provide Webfonts support.&lt;br /&gt;
&lt;br /&gt;
==== Provide REST like API for SILPA ====&lt;br /&gt;
&lt;br /&gt;
SILPA provides JSONRPC API currently which is also utilized by the templates of framework. JSONRPC is not well supported in all languages and results in [https://en.wikipedia.org/wiki/Not_invented_here NIH code]. So we would like to provide REST like HTTP based API&#039;s for SILPA and at the same time leave the current JSONRPC code untouched for backward compatibility reasons.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Objectives&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
* Develop module or use existing module to provide REST like API&#039;s&lt;br /&gt;
* API should support GET and POST. [http://www.w3.org/2001/tag/doc/whenToUseGet.html When to use GET?].&lt;br /&gt;
&lt;br /&gt;
Many people have doubt on how the API should look like. We can give twitter API (https://dev.twitter.com/docs/api) as example &lt;br /&gt;
Sample API calls :&lt;br /&gt;
-------------------------------------------------------------&lt;br /&gt;
    POST api.silpa.org.in/payyans/ASCII2Unicode&lt;br /&gt;
    Paramets: text, font&lt;br /&gt;
    Response: JSON data&lt;br /&gt;
-------------------------------------------------------------&lt;br /&gt;
    POST api.silpa.org.in/payyans/Unicode2ASCII&lt;br /&gt;
    Paramets: text, font&lt;br /&gt;
    Response: JSON data&lt;br /&gt;
-------------------------------------------------------------&lt;br /&gt;
Generic: &lt;br /&gt;
    GET/POST (http://api.silpa.org.in/module/function_name or http://silpa.org.in/api/module/function_name)&lt;br /&gt;
    Parameters: function parameters&lt;br /&gt;
    Response: JSON encoded return value from function&lt;br /&gt;
&lt;br /&gt;
====  Improve Transliteration module ====&lt;br /&gt;
&lt;br /&gt;
We have a Transliteration module which supports transliteration from any Indic language to other Indic language and also support to English to Indic and Indic to English transliteration. Also we support IPA and ISO15919 transliteration system. But the module isn&#039;t in perfect shape and has lot of bugs. With this idea we would like to improve the following parts&lt;br /&gt;
&lt;br /&gt;
# Improve cross indic language transliteration system. Currently only Malayalam and Kannada are working without any external language support, all other Indian languages are first transliterated to Malayalam and then transliterated to target Indic language. We want to remove this cycle from source -&amp;gt; Malayalam -&amp;gt; target.&lt;br /&gt;
# English to IPA transliteration is currently broken and this needs to be fixed. See [https://github.com/Project-SILPA/Transliteration/issues/3 IPA transliteration bug].&lt;br /&gt;
# Once the IPA transliteration issue above is fixed, imporve English to Indic transliteration system using IPA. Currently English to Indic transliteration system is done using CMU Sphinx dictionary which is having limited set of words which inturn limits the output of English to Indic transliteration system.&lt;br /&gt;
# Improve IS015919 to Indic transliteration system see [https://github.com/Project-SILPA/Transliteration/issues/4 IS015919 to Indic transliteration].&lt;br /&gt;
&lt;br /&gt;
CLDR has transliteration data for Indic languages. We can explore it and see the feasibility. For an intermediate representation of the scripts either IPA can be used or ISO 15919 standard can be used. All these must be supplemented with exception rules and special case handling to achieve more perfect result.&lt;br /&gt;
&lt;br /&gt;
==== Integrating flask-webfonts extension with SILPA ====&lt;br /&gt;
&lt;br /&gt;
SILPA used to have a Webfonts module for serving Indian language fonts as Webfonts for browsers. During GSOC 2013 it was separated as an extension to Flask framework which can be generally used with any Flask powered app. The current code can be found at [https://github.com/Project-SILPA/flask-webfonts]. The module is not fine tuned yet so below are the objectives.&lt;br /&gt;
&lt;br /&gt;
# The module is not yet fine tuned and using it will make other modules break. This needs to be fixed (Can be checked with &#039;webfonts&#039; branch of SILPA code on github.&lt;br /&gt;
# Write tests to check the functionalities.&lt;br /&gt;
# Adhere to Flask extension guidelines and submit the modules to Flask extensions directory.&lt;br /&gt;
# Write a tool which can take a directory containing fonts file or single font file and generate configuration file needed by the extension. (A possible such tool which is outdated can be found at [https://github.com/copyninja/fontinfo])&lt;br /&gt;
# Provide HTTP api&#039;s through flask extension which can expose the CSS for applications.&lt;br /&gt;
&lt;br /&gt;
For all tasks above we expect documentation, test cases from the students as deliverable. &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039; : Intermediate&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Confirmed Mentors&#039;&#039;&#039; : &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;How to contact the mentors&#039;&#039;&#039;: &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Mailing List&#039;&#039;&#039;: silpa-discuss@nongnu.org &amp;lt;preferred&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;: Python , Flask , Jinja , HTML, Javascript&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;What the students will learn&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
# Writing applications using Flask&lt;br /&gt;
# Various Transliteration system knolwedge&lt;br /&gt;
# Webfonts knowledge and writing extensions for Flask&lt;br /&gt;
# Test drive development.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Converting indic processing modules currently in SILPA into javascript modules library===&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Project&#039;&#039;&#039;: &lt;br /&gt;
&lt;br /&gt;
Port some of the silpa algorithms to node modules. Several modules, alogorithms in SILPA project is done in python now. But porting them to javascript helps developers. For example, cross language transliteration can be done javascript too if we port the algorithm and transliteration rules. Similarly the approximate search can be ported. A flexibile fuzzy search on the web pages will be possible if we have the algorithm in javascript.&lt;br /&gt;
&lt;br /&gt;
Proposed javascript module pattern is https://github.com/umdjs/umd&lt;br /&gt;
&lt;br /&gt;
Student proposals should have a list of alogorithms planning to port, planned demo applications, planned documentation details, and publishing details(Example: npm registry)&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039; : &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Confirmed Mentor&#039;&#039;&#039; : &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;How to contact the mentor&#039;&#039;&#039;: &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039; Mailing List&#039;&#039;&#039;: silpa-discuss@nongnu.org&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;: javascript, python&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;What the students will learn&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
===Integrate Varnam into Silpa===&lt;br /&gt;
&lt;br /&gt;
Create a Silpa module which hosts [http://www.varnamproject.com varnam]. This includes making a python port for libvarnam and making a Silpa module which uses the python port. &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039; : Medium&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Confirmed Mentor&#039;&#039;&#039; : &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;How to contact the mentor&#039;&#039;&#039;: &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039; Mailing List&#039;&#039;&#039;: silpa-discuss@nongnu.org&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;: C, Python&lt;br /&gt;
&lt;br /&gt;
==Varnam Based==&lt;br /&gt;
&lt;br /&gt;
Varnam is a cross-platform predictive transliterator for Indian languages. It works mostly like Google&#039;s transliterate, but shows key differences in the way word tokenization is done. It has a learning system built in which allows Varnam to make smart predictions. &lt;br /&gt;
&lt;br /&gt;
There are varnam clients available as [https://addons.mozilla.org/en-US/firefox/addon/varnam-transliteration-base/ Firefox]] &amp;amp; [https://chrome.google.com/webstore/detail/varnam-ime/abcfkeabpcanobhdmcmdabejaamephaf Chrome addon] and an [https://gitorious.org/varnamproject/libvarnam-ibus/source/d939adf50024013902c27310c03ef21a9210cdcb IBus engine].&lt;br /&gt;
&lt;br /&gt;
To try out Varnam, navigate to [http://varnamproject.com/editor[http://varnamproject.com/editor]]. Currently it support Hindi and Malayalam.&lt;br /&gt;
&lt;br /&gt;
* [http://www.varnamproject.com/docs/faq FAQ]&lt;br /&gt;
* [http://www.varnamproject.com/docs Documentation]&lt;br /&gt;
* [http://www.varnamproject.com/docs/contributing Contributors guide &amp;amp; ideas to work on]&lt;br /&gt;
&lt;br /&gt;
Apart from the following ideas, you can propose your own idea. &lt;br /&gt;
&lt;br /&gt;
===Programming language bindings &amp;amp; varnam-daemon===&lt;br /&gt;
&lt;br /&gt;
Varnam is written on C which makes interoperability with other languages easy. There are language bindings available for `NodeJs` and `Ruby`. Supporting Varnam in multiple languages allows projects to use varnam easily to enable Indian language input.&lt;br /&gt;
&lt;br /&gt;
To make using varnam from different languages easier, make a cross platform standalone process which uses `libvarnam` shared library and exposes a RPC API over network. This allows any programming language with a socket support can be used with libvarnam. This also makes language bindings fairly easy because they don&#039;t have to work with the native interoperability support. The protocol can be a simple text based protocol for all the commands that `libvarnam` supports. &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039; : Advanced&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Confirmed Mentor&#039;&#039;&#039; : &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;How to contact the mentor&#039;&#039;&#039;: &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;: C&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Improvements to the REST API===&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Project&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
This includes rewrite of the current implementation in `golang` and add support for WebSockets to improve the input experience. This also&lt;br /&gt;
includes making scripts that would ease embedding input on any webpage. All the changes done will go live on[1]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039; : Advanced&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Confirmed Mentor&#039;&#039;&#039; : &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;How to contact the mentor&#039;&#039;&#039;: &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;: Basic understanding of golang and C&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;What the students will learn&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
===Create an Android IME===&lt;br /&gt;
&lt;br /&gt;
Varnam will be ported as a Silpa module and it will be available on Android as part of the android SDK project which Silpa has proposed. This idea is merged to the [http://wiki.smc.org.in/SoC/2014/Project_ideas#Android_SDK_for_Silpa Silpa] project ideas.&lt;br /&gt;
&lt;br /&gt;
===Enable varnam&#039;s suggestions system to be used from Inscript or any other input system===&lt;br /&gt;
&lt;br /&gt;
Varnam has knowledge about lot of words. This idea proposes a method to use these words and provide suggestions for other input systems. Basically, in Varnam, the API call will be something like,&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;&amp;lt;pre&amp;gt;&lt;br /&gt;
varnam_get_suggestions (handle, &amp;quot;भारत&amp;quot;);&lt;br /&gt;
&amp;lt;/pre&amp;gt;&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This will fetch all the suggestions which has the given prefix. &lt;br /&gt;
&lt;br /&gt;
`varnam_get_suggestions` needs to keep track of the previous words and use [http://en.wikipedia.org/wiki/N-gram n-gram] based dataset to filter the results. This should also learn the words back into the word corpus that varnam is using. Filtering suggestions won&#039;t be just a prefix search, but it will have knowledge about how text can be written in the target language and provide smart filtering. Searching in a large corpus and providing real-time suggestions makes this a challenging task. &lt;br /&gt;
&lt;br /&gt;
Once this is implemented in `libvarnam`, it can be used in the ibus-engine.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039; : Advanced&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;:  C, Unicode &amp;amp; encodings&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Confirmed Mentor&#039;&#039;&#039; : &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;How to contact the mentor&#039;&#039;&#039;: &lt;br /&gt;
&lt;br /&gt;
=== Word corpus synchronization ===&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Project&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
Create a cross-platform synchronization tool which can upload/download the word corpus from offline IMEs like varnam-ibus[2]. This helps to build the online words corpus easily.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039; : Medium&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Confirmed Mentor&#039;&#039;&#039; : &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;How to contact the mentor&#039;&#039;&#039;: &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;:  Knowledge in C/golang&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;What the students will learn&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [1]: http://www.varnamproject.com&lt;br /&gt;
* [2]: https://gitorious.org/varnamproject/libvarnam-ibus/&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Grandham ==&lt;br /&gt;
&lt;br /&gt;
=== Adding MARC21 import/export feature in Grandham ===&lt;br /&gt;
&lt;br /&gt;
We need a feature in Grandham to import and parse data from MARC21 documents. We should also be able to export existing data in MARC21.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039; : High&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Confirmed Mentor&#039;&#039;&#039; :&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;How to contact the mentor&#039;&#039;&#039;: &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;: Knowledge in Ruby/Ruby on Rails&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;What the students will learn&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [1]: http://dev.grandham.org&lt;br /&gt;
* [2]: https://github.com/smc/grandham&lt;/div&gt;</summary>
		<author><name>Nandaja</name></author>
	</entry>
	<entry>
		<id>https://wiki.smc.org.in/index.php?title=GSoC/2015/Project_ideas&amp;diff=10707</id>
		<title>GSoC/2015/Project ideas</title>
		<link rel="alternate" type="text/html" href="https://wiki.smc.org.in/index.php?title=GSoC/2015/Project_ideas&amp;diff=10707"/>
		<updated>2015-02-16T08:05:34Z</updated>

		<summary type="html">&lt;p&gt;Nandaja: /* ibus-braille module modifications */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;center&amp;gt; &lt;br /&gt;
&amp;lt;font color=&amp;quot;green&amp;quot;&amp;gt; &amp;lt;big&amp;gt;&#039;&#039;&#039;Apart from the following ideas , you can propose your own ideas&#039;&#039;&#039;&amp;lt;/big&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Potential Mentors=&lt;br /&gt;
# Santhosh Thottingal (&#039;&#039;&#039;santhosh&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Baiju M (&#039;&#039;&#039;baijum&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Praveen A (&#039;&#039;&#039;j4v4m4n&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Rajeesh K Nambiar (&#039;&#039;&#039;rajeesh&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Anivar Aravind (&#039;&#039;&#039;anivar&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Vasudev Kammath (&#039;&#039;&#039;copyninja&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Jishnu Mohan (&#039;&#039;&#039;jishnu7&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Hrishikesh K.B (&#039;&#039;&#039;stultus&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Nandaja Varma (&#039;&#039;&#039;gem&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Navaneeth (&#039;&#039;&#039;nkn__&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Ershad K (&#039;&#039;&#039;ershad&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Nishan Naseer (&#039;&#039;&#039;nishan&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
&lt;br /&gt;
=Ideas for Google Summer of Code 2015=&lt;br /&gt;
* Please Read the [http://wiki.smc.org.in/GSoC/2015#FAQ FAQ]&lt;br /&gt;
* If you want to propose an idea, please do it in [http://lists.smc.org.in/listinfo.cgi/student-projects-smc.org.in student projects mailing list]  of [http://smc.org.in Swathanthra Malayalam computing]&lt;br /&gt;
&lt;br /&gt;
=Projects with confirmed mentors=&lt;br /&gt;
&lt;br /&gt;
== ibus-braille module modifications ==&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Project&#039;&#039;&#039;ː&lt;br /&gt;
&lt;br /&gt;
This project will be to make improvements on the [[GSoC/2014/Project_ideas#Adding_Braille_Keyboard_layouts_for_Indian_Languages_to_m17n_Library | project]] that was successfully completed by a student under SMC. The remaining tasks areː&lt;br /&gt;
#Integrate Ibus-Braille with Liblouis&lt;br /&gt;
#Create Table editor for Liblouis&lt;br /&gt;
#Create a web version and host it.&lt;br /&gt;
#Add more indian languages to Liblouis&lt;br /&gt;
#Add facility to write direct braille Unicode characters&lt;br /&gt;
#Remove espeak dependency and make accessible via orca itself.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Confirmed Mentor&#039;&#039;&#039;: Samuel Thibault&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;How to contact the mentor&#039;&#039;&#039;: IRC - youpi on #smc-project on Freenode &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;: &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;What the student will learn&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
== Varnam based ==&lt;br /&gt;
&lt;br /&gt;
=== Varnam Android Keyboard ===&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Project&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
Add support for varnamproject into android and have a native keyboard like indic keyboard. It can be integrated into Indic keyboard or have it as a separate keyboard.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039;: Advanced&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Confirmed Mentor&#039;&#039;&#039;: Navaneeth K. N.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;How to contact the mentor&#039;&#039;&#039;: IRC - nkn__ on #smc-project on Freenode &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;: &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;What the student will learn&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
=Projects with unconfirmed mentors=&lt;br /&gt;
== A spell checker for Indic language that understands inflections ==&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Project&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
SILPA project has a spellchecker written using python with a not so simple algorithm. But still it is not capable of handling inflection and agglutination occurring in Indian languages especially south Indian languages. The dictionary we have for Malayalam spellchecker have about 150000 words. Of course we can expand the dictionary, but that doesn&#039;t have much value since words can be formed in Malayalam or Tamil etc by joining multiple words. In addition to that, words get inflected based on grammar forms(sandhi), plural, gender etc. Hunspell has a system to handle this, but so far nobody succeeded in getting it working for multi level suffix stripping as required for Malayalam. Some times a Malayalam word can be formed by more than 5 words joining together. We will need a word splitting logic or a table taking care of all patterns. The project is to attempt solving this with hunspell. If that is not feasible(hunspell upstream is not active), develop an algorithm and implement it.&lt;br /&gt;
&lt;br /&gt;
Recently Tamil attempted developing a spellchecker using Hunspell with multi level suffix stripping. You can see the result here https://github.com/thamizha/solthiruthi. &lt;br /&gt;
Our attempt should be first to use Hunspell to achieve spellchecking with agglutination and inflection. Probably it will require lot of scripting to generate suffix patterns, we can ask help from existing language communities too. If Hunspell has limitation with multi level suffxes- sometimes Indian languages require more than 5 levels of suffix stripping, we need to document it(bug and documentation) and try to attempt python based solution on top of SILPA framework.&lt;br /&gt;
&lt;br /&gt;
The project is not about coding an existing algorithm, but to develop and implement an algorithm.&lt;br /&gt;
&lt;br /&gt;
Hunspell&#039;s limitations can be understood from [[User:%E0%B4%B8%E0%B4%A8%E0%B5%8D%E0%B4%A4%E0%B5%8B%E0%B4%B7%E0%B5%8D/HunspellConversation| this conversation]] we had with the author of Hunspell in 2008&lt;br /&gt;
&lt;br /&gt;
Homework to do before submitting applications:&lt;br /&gt;
# Use Hunspell in any Indian language like Malayalam for spell correction in editors or word processors and understand the limitations&lt;br /&gt;
# Study the nature of inflection and agglutination in Indian languages, read existing documents on this(ask for documents too) and note down your observations&lt;br /&gt;
# Study Hunspell and other spellcheckers to see how this problem is addressed&lt;br /&gt;
# Understand how a spell checker works. How to write a spellchecker from scratch?&lt;br /&gt;
# Come up with a plan about addressing the issue.&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;[https://savannah.nongnu.org/task/index.php?12558 Savannah Task]&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039;: Advanced&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Confirmed Mentor&#039;&#039;&#039;: &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;How to contact the mentor&#039;&#039;&#039;: &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;: Average level understanding of grammar system of at least one Indian language and complete the homework as listed above.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;What the student will learn&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
==Indic rendering support in ConTeXt==&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Project&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
ConTeXt is another TeX macro system similar to LaTeX but much more suitable for design. To find more information about ConTeXt, see the wiki http://wiki.contextgarden.net/Main_Page. ConTeXt MKII  have Indic language rendering support using XeTeX. but MKII is deprecated, and the new MKIV backend doesn&#039;t support Indic rendering yet. The aim of this project is to add support to Inidic rendering to ConTeXt MKIV. XeTeX is using Harfbuzz to do correct Indic rendering.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;More Details&#039;&#039;&#039;: A partially working patch by Rajeesh for MKIV lua code is available. ConTeXt mkii (deprecated) can work with XeTeX backend for Indic rendering. Here is a sample file:&lt;br /&gt;
 \usemodule[simplefonts]&lt;br /&gt;
 \definefontfeature[malayalam][script=mlym]&lt;br /&gt;
 \setmainfont[Rachana][features=malayalam]&lt;br /&gt;
 \starttext&lt;br /&gt;
 മലയാളം \TeX ഉപയോഗിച്ച് ടൈപ്പ്സെറ്റ് ചെയ്തത്&lt;br /&gt;
 \stoptext&lt;br /&gt;
Generate the output using command&lt;br /&gt;
 texexec --xetex &amp;lt;file.tex&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;[https://savannah.nongnu.org/task/index.php?12559 Savannah Task]&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039; : Advanced&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Confirmed Mentor&#039;&#039;&#039; : &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;How to contact the mentor&#039;&#039;&#039;: &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;: Understanding of the TeX system, experience in either LaTeX or ConTeXt and basic understanding of Indic language rendering. MKIV uses Lua, familiarity with Lua, opentype specifications or Harfbuzz will be added advantage.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;What the students will learn&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
==Language model and Acoustic model for Malayalam language for speech recognition system in CMU Sphinx==&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Project&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
CMU Sphinx is a large vocabulary, speaker independent speech recognition codebase and suite of tools, which can be used to develop speech recognition system in any language. To develop an automatic speech recognition system in a language, acoustic model and language model has to framed for that particular language.  Acoustic models characterize how sound changes over time. It captures the characteristics of basic recognition units. The language model describes the likelihood, probability, or penalty taken when a sequence or collection of words is seen. It attempts to convey behavior of the language and tries to predict the occurrence of specific word sequences possible in the language. Once these two models are developed, it will be useful to every one doing research in speech processing. For Indian languages Hindi, Tamil, Telugu and Marati, ASR systems have been developed using sphinx engine. In this project work is aimed at developing acoustic model and language model for Malayalam.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Background Reading&#039;&#039;&#039;&lt;br /&gt;
* [http://www.cs.cmu.edu/~gopalakr/publications/spdatabases_specom05.pdf &#039;Development of Indian Language Speech Databases for Large Vocabulary Speech Recognition Systems&#039;], Gopalakrishna  Anumanchipalli, Rahul Chitturi, Sachin Joshi, Rohit Kumar, Satinder Pal Singh, R.N.V. Sitaram, S P Kishore&lt;br /&gt;
* [http://www.aclweb.org/anthology/W/W12/W12-5808.pdf &amp;quot;Automatic Pronunciation Evaluation And Mispronunciation Detection Using CMUSphinx&amp;quot;], Ronanki Srikanth, James Salsman&lt;br /&gt;
* http://www.speech.cs.cmu.edu/&lt;br /&gt;
* http://cmusphinx.sourceforge.net/wiki/tutorial&lt;br /&gt;
* [http://www.ijarcsse.com &amp;quot;HTK Based Telugu Speech Recognition&amp;quot;], P. Vijai Bhaskar, AVNIET ,Hyderabad, Prof. Dr. S. Rama Mohan Rao, A.Gopi &lt;br /&gt;
* [http://www.cs.cmu.edu/~araza/Automatic_Speech_Recognition_System_for_Urdu.PDF &amp;quot;Design and  Development of an Automatic Speech Recognition System for Urdu&amp;quot;], Agha Ali Raza,  M.Sc. Thesis, FAST‐National University of Computer and Emerging Sciences &lt;br /&gt;
* [http://www.ccis2k.org/iajit/PDF/vol.6,no.2/11IASRUCSS186.pdf &amp;quot;Investigation Arabic Speech Recognition Using CMU Sphinx System&amp;quot;], Hassan Satori1, 2, Hussein Hiyassat3, Mostafa Harti1, 2, and Noureddine Chenfour&lt;br /&gt;
* [http://www.try.idv.tw/static-resources/homework/pr/PR_Final_Report.pdf &amp;quot;Understanding the CMU Sphinx Speech Recognition System&amp;quot;], Chun-Feng Liao&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039; : &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Confirmed Mentor&#039;&#039;&#039; : &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;How to contact the mentor&#039;&#039;&#039;: &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;: &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;What the students will learn&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==SILPA Project Based==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===SILPA Project Improvements===&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Project&#039;&#039;&#039;: &lt;br /&gt;
&lt;br /&gt;
This is set of ideas needed to improve the existing SILPA infrastructure. We have decided following tasks as part of this project&lt;br /&gt;
&lt;br /&gt;
# Provide REST API to SILPA without disturbing existing JSONRPC API&lt;br /&gt;
# Improve the Transliteration module&lt;br /&gt;
# Integrate [https://github.com/Project-SILPA/flask-webfonts Flask Webfonts] extension with SILPA to provide Webfonts support.&lt;br /&gt;
&lt;br /&gt;
==== Provide REST like API for SILPA ====&lt;br /&gt;
&lt;br /&gt;
SILPA provides JSONRPC API currently which is also utilized by the templates of framework. JSONRPC is not well supported in all languages and results in [https://en.wikipedia.org/wiki/Not_invented_here NIH code]. So we would like to provide REST like HTTP based API&#039;s for SILPA and at the same time leave the current JSONRPC code untouched for backward compatibility reasons.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Objectives&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
* Develop module or use existing module to provide REST like API&#039;s&lt;br /&gt;
* API should support GET and POST. [http://www.w3.org/2001/tag/doc/whenToUseGet.html When to use GET?].&lt;br /&gt;
&lt;br /&gt;
Many people have doubt on how the API should look like. We can give twitter API (https://dev.twitter.com/docs/api) as example &lt;br /&gt;
Sample API calls :&lt;br /&gt;
-------------------------------------------------------------&lt;br /&gt;
    POST api.silpa.org.in/payyans/ASCII2Unicode&lt;br /&gt;
    Paramets: text, font&lt;br /&gt;
    Response: JSON data&lt;br /&gt;
-------------------------------------------------------------&lt;br /&gt;
    POST api.silpa.org.in/payyans/Unicode2ASCII&lt;br /&gt;
    Paramets: text, font&lt;br /&gt;
    Response: JSON data&lt;br /&gt;
-------------------------------------------------------------&lt;br /&gt;
Generic: &lt;br /&gt;
    GET/POST (http://api.silpa.org.in/module/function_name or http://silpa.org.in/api/module/function_name)&lt;br /&gt;
    Parameters: function parameters&lt;br /&gt;
    Response: JSON encoded return value from function&lt;br /&gt;
&lt;br /&gt;
====  Improve Transliteration module ====&lt;br /&gt;
&lt;br /&gt;
We have a Transliteration module which supports transliteration from any Indic language to other Indic language and also support to English to Indic and Indic to English transliteration. Also we support IPA and ISO15919 transliteration system. But the module isn&#039;t in perfect shape and has lot of bugs. With this idea we would like to improve the following parts&lt;br /&gt;
&lt;br /&gt;
# Improve cross indic language transliteration system. Currently only Malayalam and Kannada are working without any external language support, all other Indian languages are first transliterated to Malayalam and then transliterated to target Indic language. We want to remove this cycle from source -&amp;gt; Malayalam -&amp;gt; target.&lt;br /&gt;
# English to IPA transliteration is currently broken and this needs to be fixed. See [https://github.com/Project-SILPA/Transliteration/issues/3 IPA transliteration bug].&lt;br /&gt;
# Once the IPA transliteration issue above is fixed, imporve English to Indic transliteration system using IPA. Currently English to Indic transliteration system is done using CMU Sphinx dictionary which is having limited set of words which inturn limits the output of English to Indic transliteration system.&lt;br /&gt;
# Improve IS015919 to Indic transliteration system see [https://github.com/Project-SILPA/Transliteration/issues/4 IS015919 to Indic transliteration].&lt;br /&gt;
&lt;br /&gt;
CLDR has transliteration data for Indic languages. We can explore it and see the feasibility. For an intermediate representation of the scripts either IPA can be used or ISO 15919 standard can be used. All these must be supplemented with exception rules and special case handling to achieve more perfect result.&lt;br /&gt;
&lt;br /&gt;
==== Integrating flask-webfonts extension with SILPA ====&lt;br /&gt;
&lt;br /&gt;
SILPA used to have a Webfonts module for serving Indian language fonts as Webfonts for browsers. During GSOC 2013 it was separated as an extension to Flask framework which can be generally used with any Flask powered app. The current code can be found at [https://github.com/Project-SILPA/flask-webfonts]. The module is not fine tuned yet so below are the objectives.&lt;br /&gt;
&lt;br /&gt;
# The module is not yet fine tuned and using it will make other modules break. This needs to be fixed (Can be checked with &#039;webfonts&#039; branch of SILPA code on github.&lt;br /&gt;
# Write tests to check the functionalities.&lt;br /&gt;
# Adhere to Flask extension guidelines and submit the modules to Flask extensions directory.&lt;br /&gt;
# Write a tool which can take a directory containing fonts file or single font file and generate configuration file needed by the extension. (A possible such tool which is outdated can be found at [https://github.com/copyninja/fontinfo])&lt;br /&gt;
# Provide HTTP api&#039;s through flask extension which can expose the CSS for applications.&lt;br /&gt;
&lt;br /&gt;
For all tasks above we expect documentation, test cases from the students as deliverable. &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039; : Intermediate&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Confirmed Mentors&#039;&#039;&#039; : &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;How to contact the mentors&#039;&#039;&#039;: &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Mailing List&#039;&#039;&#039;: silpa-discuss@nongnu.org &amp;lt;preferred&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;: Python , Flask , Jinja , HTML, Javascript&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;What the students will learn&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
# Writing applications using Flask&lt;br /&gt;
# Various Transliteration system knolwedge&lt;br /&gt;
# Webfonts knowledge and writing extensions for Flask&lt;br /&gt;
# Test drive development.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Converting indic processing modules currently in SILPA into javascript modules library===&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Project&#039;&#039;&#039;: &lt;br /&gt;
&lt;br /&gt;
Port some of the silpa algorithms to node modules. Several modules, alogorithms in SILPA project is done in python now. But porting them to javascript helps developers. For example, cross language transliteration can be done javascript too if we port the algorithm and transliteration rules. Similarly the approximate search can be ported. A flexibile fuzzy search on the web pages will be possible if we have the algorithm in javascript.&lt;br /&gt;
&lt;br /&gt;
Proposed javascript module pattern is https://github.com/umdjs/umd&lt;br /&gt;
&lt;br /&gt;
Student proposals should have a list of alogorithms planning to port, planned demo applications, planned documentation details, and publishing details(Example: npm registry)&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039; : &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Confirmed Mentor&#039;&#039;&#039; : &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;How to contact the mentor&#039;&#039;&#039;: &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039; Mailing List&#039;&#039;&#039;: silpa-discuss@nongnu.org&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;: javascript, python&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;What the students will learn&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
===Integrate Varnam into Silpa===&lt;br /&gt;
&lt;br /&gt;
Create a Silpa module which hosts [http://www.varnamproject.com varnam]. This includes making a python port for libvarnam and making a Silpa module which uses the python port. &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039; : Medium&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Confirmed Mentor&#039;&#039;&#039; : &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;How to contact the mentor&#039;&#039;&#039;: &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039; Mailing List&#039;&#039;&#039;: silpa-discuss@nongnu.org&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;: C, Python&lt;br /&gt;
&lt;br /&gt;
==Varnam Based==&lt;br /&gt;
&lt;br /&gt;
Varnam is a cross-platform predictive transliterator for Indian languages. It works mostly like Google&#039;s transliterate, but shows key differences in the way word tokenization is done. It has a learning system built in which allows Varnam to make smart predictions. &lt;br /&gt;
&lt;br /&gt;
There are varnam clients available as [https://addons.mozilla.org/en-US/firefox/addon/varnam-transliteration-base/ Firefox]] &amp;amp; [https://chrome.google.com/webstore/detail/varnam-ime/abcfkeabpcanobhdmcmdabejaamephaf Chrome addon] and an [https://gitorious.org/varnamproject/libvarnam-ibus/source/d939adf50024013902c27310c03ef21a9210cdcb IBus engine].&lt;br /&gt;
&lt;br /&gt;
To try out Varnam, navigate to [http://varnamproject.com/editor[http://varnamproject.com/editor]]. Currently it support Hindi and Malayalam.&lt;br /&gt;
&lt;br /&gt;
* [http://www.varnamproject.com/docs/faq FAQ]&lt;br /&gt;
* [http://www.varnamproject.com/docs Documentation]&lt;br /&gt;
* [http://www.varnamproject.com/docs/contributing Contributors guide &amp;amp; ideas to work on]&lt;br /&gt;
&lt;br /&gt;
Apart from the following ideas, you can propose your own idea. &lt;br /&gt;
&lt;br /&gt;
===Programming language bindings &amp;amp; varnam-daemon===&lt;br /&gt;
&lt;br /&gt;
Varnam is written on C which makes interoperability with other languages easy. There are language bindings available for `NodeJs` and `Ruby`. Supporting Varnam in multiple languages allows projects to use varnam easily to enable Indian language input.&lt;br /&gt;
&lt;br /&gt;
To make using varnam from different languages easier, make a cross platform standalone process which uses `libvarnam` shared library and exposes a RPC API over network. This allows any programming language with a socket support can be used with libvarnam. This also makes language bindings fairly easy because they don&#039;t have to work with the native interoperability support. The protocol can be a simple text based protocol for all the commands that `libvarnam` supports. &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039; : Advanced&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Confirmed Mentor&#039;&#039;&#039; : &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;How to contact the mentor&#039;&#039;&#039;: &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;: C&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Improvements to the REST API===&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Project&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
This includes rewrite of the current implementation in `golang` and add support for WebSockets to improve the input experience. This also&lt;br /&gt;
includes making scripts that would ease embedding input on any webpage. All the changes done will go live on[1]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039; : Advanced&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Confirmed Mentor&#039;&#039;&#039; : &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;How to contact the mentor&#039;&#039;&#039;: &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;: Basic understanding of golang and C&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;What the students will learn&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
===Create an Android IME===&lt;br /&gt;
&lt;br /&gt;
Varnam will be ported as a Silpa module and it will be available on Android as part of the android SDK project which Silpa has proposed. This idea is merged to the [http://wiki.smc.org.in/SoC/2014/Project_ideas#Android_SDK_for_Silpa Silpa] project ideas.&lt;br /&gt;
&lt;br /&gt;
===Enable varnam&#039;s suggestions system to be used from Inscript or any other input system===&lt;br /&gt;
&lt;br /&gt;
Varnam has knowledge about lot of words. This idea proposes a method to use these words and provide suggestions for other input systems. Basically, in Varnam, the API call will be something like,&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;&amp;lt;pre&amp;gt;&lt;br /&gt;
varnam_get_suggestions (handle, &amp;quot;भारत&amp;quot;);&lt;br /&gt;
&amp;lt;/pre&amp;gt;&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This will fetch all the suggestions which has the given prefix. &lt;br /&gt;
&lt;br /&gt;
`varnam_get_suggestions` needs to keep track of the previous words and use [http://en.wikipedia.org/wiki/N-gram n-gram] based dataset to filter the results. This should also learn the words back into the word corpus that varnam is using. Filtering suggestions won&#039;t be just a prefix search, but it will have knowledge about how text can be written in the target language and provide smart filtering. Searching in a large corpus and providing real-time suggestions makes this a challenging task. &lt;br /&gt;
&lt;br /&gt;
Once this is implemented in `libvarnam`, it can be used in the ibus-engine.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039; : Advanced&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;:  C, Unicode &amp;amp; encodings&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Confirmed Mentor&#039;&#039;&#039; : &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;How to contact the mentor&#039;&#039;&#039;: &lt;br /&gt;
&lt;br /&gt;
=== Word corpus synchronization ===&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Project&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
Create a cross-platform synchronization tool which can upload/download the word corpus from offline IMEs like varnam-ibus[2]. This helps to build the online words corpus easily.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039; : Medium&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Confirmed Mentor&#039;&#039;&#039; : &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;How to contact the mentor&#039;&#039;&#039;: &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;:  Knowledge in C/golang&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;What the students will learn&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [1]: http://www.varnamproject.com&lt;br /&gt;
* [2]: https://gitorious.org/varnamproject/libvarnam-ibus/&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Grandham ==&lt;br /&gt;
&lt;br /&gt;
=== Adding MARC21 import/export feature in Grandham ===&lt;br /&gt;
&lt;br /&gt;
We need a feature in Grandham to import and parse data from MARC21 documents. We should also be able to export existing data in MARC21.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039; : High&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Confirmed Mentor&#039;&#039;&#039; :&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;How to contact the mentor&#039;&#039;&#039;: &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;: Knowledge in Ruby/Ruby on Rails&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;What the students will learn&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [1]: http://dev.grandham.org&lt;br /&gt;
* [2]: https://github.com/smc/grandham&lt;/div&gt;</summary>
		<author><name>Nandaja</name></author>
	</entry>
	<entry>
		<id>https://wiki.smc.org.in/index.php?title=GSoC/2015/Project_ideas&amp;diff=10705</id>
		<title>GSoC/2015/Project ideas</title>
		<link rel="alternate" type="text/html" href="https://wiki.smc.org.in/index.php?title=GSoC/2015/Project_ideas&amp;diff=10705"/>
		<updated>2015-02-16T08:04:15Z</updated>

		<summary type="html">&lt;p&gt;Nandaja: /* Projects with confirmed mentors */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;center&amp;gt; &lt;br /&gt;
&amp;lt;font color=&amp;quot;green&amp;quot;&amp;gt; &amp;lt;big&amp;gt;&#039;&#039;&#039;Apart from the following ideas , you can propose your own ideas&#039;&#039;&#039;&amp;lt;/big&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Potential Mentors=&lt;br /&gt;
# Santhosh Thottingal (&#039;&#039;&#039;santhosh&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Baiju M (&#039;&#039;&#039;baijum&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Praveen A (&#039;&#039;&#039;j4v4m4n&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Rajeesh K Nambiar (&#039;&#039;&#039;rajeesh&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Anivar Aravind (&#039;&#039;&#039;anivar&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Vasudev Kammath (&#039;&#039;&#039;copyninja&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Jishnu Mohan (&#039;&#039;&#039;jishnu7&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Hrishikesh K.B (&#039;&#039;&#039;stultus&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Nandaja Varma (&#039;&#039;&#039;gem&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Navaneeth (&#039;&#039;&#039;nkn__&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Ershad K (&#039;&#039;&#039;ershad&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Nishan Naseer (&#039;&#039;&#039;nishan&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
&lt;br /&gt;
=Ideas for Google Summer of Code 2015=&lt;br /&gt;
* Please Read the [http://wiki.smc.org.in/GSoC/2015#FAQ FAQ]&lt;br /&gt;
* If you want to propose an idea, please do it in [http://lists.smc.org.in/listinfo.cgi/student-projects-smc.org.in student projects mailing list]  of [http://smc.org.in Swathanthra Malayalam computing]&lt;br /&gt;
&lt;br /&gt;
=Projects with confirmed mentors=&lt;br /&gt;
&lt;br /&gt;
== ibus-braille module modifications ==&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Project&#039;&#039;&#039;ː&lt;br /&gt;
&lt;br /&gt;
This project will be to make improvements on the [GSoC/2014/Project_ideas#Adding_Braille_Keyboard_layouts_for_Indian_Languages_to_m17n_Library | project] that was successfully completed by a student under SMC. The remaining tasks areː&lt;br /&gt;
#Integrate Ibus-Braille with Liblouis&lt;br /&gt;
#Create Table editor for Liblouis&lt;br /&gt;
#Create a web version and host it.&lt;br /&gt;
#Add more indian languages to Liblouis&lt;br /&gt;
#Add facility to write direct braille Unicode characters&lt;br /&gt;
#Remove espeak dependency and make accessible via orca itself.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Confirmed Mentor&#039;&#039;&#039;: Samuel Thibault&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;How to contact the mentor&#039;&#039;&#039;: IRC - youpi on #smc-project on Freenode &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;: &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;What the student will learn&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Varnam based ==&lt;br /&gt;
&lt;br /&gt;
=== Varnam Android Keyboard ===&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Project&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
Add support for varnamproject into android and have a native keyboard like indic keyboard. It can be integrated into Indic keyboard or have it as a separate keyboard.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039;: Advanced&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Confirmed Mentor&#039;&#039;&#039;: Navaneeth K. N.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;How to contact the mentor&#039;&#039;&#039;: IRC - nkn__ on #smc-project on Freenode &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;: &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;What the student will learn&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
=Projects with unconfirmed mentors=&lt;br /&gt;
== A spell checker for Indic language that understands inflections ==&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Project&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
SILPA project has a spellchecker written using python with a not so simple algorithm. But still it is not capable of handling inflection and agglutination occurring in Indian languages especially south Indian languages. The dictionary we have for Malayalam spellchecker have about 150000 words. Of course we can expand the dictionary, but that doesn&#039;t have much value since words can be formed in Malayalam or Tamil etc by joining multiple words. In addition to that, words get inflected based on grammar forms(sandhi), plural, gender etc. Hunspell has a system to handle this, but so far nobody succeeded in getting it working for multi level suffix stripping as required for Malayalam. Some times a Malayalam word can be formed by more than 5 words joining together. We will need a word splitting logic or a table taking care of all patterns. The project is to attempt solving this with hunspell. If that is not feasible(hunspell upstream is not active), develop an algorithm and implement it.&lt;br /&gt;
&lt;br /&gt;
Recently Tamil attempted developing a spellchecker using Hunspell with multi level suffix stripping. You can see the result here https://github.com/thamizha/solthiruthi. &lt;br /&gt;
Our attempt should be first to use Hunspell to achieve spellchecking with agglutination and inflection. Probably it will require lot of scripting to generate suffix patterns, we can ask help from existing language communities too. If Hunspell has limitation with multi level suffxes- sometimes Indian languages require more than 5 levels of suffix stripping, we need to document it(bug and documentation) and try to attempt python based solution on top of SILPA framework.&lt;br /&gt;
&lt;br /&gt;
The project is not about coding an existing algorithm, but to develop and implement an algorithm.&lt;br /&gt;
&lt;br /&gt;
Hunspell&#039;s limitations can be understood from [[User:%E0%B4%B8%E0%B4%A8%E0%B5%8D%E0%B4%A4%E0%B5%8B%E0%B4%B7%E0%B5%8D/HunspellConversation| this conversation]] we had with the author of Hunspell in 2008&lt;br /&gt;
&lt;br /&gt;
Homework to do before submitting applications:&lt;br /&gt;
# Use Hunspell in any Indian language like Malayalam for spell correction in editors or word processors and understand the limitations&lt;br /&gt;
# Study the nature of inflection and agglutination in Indian languages, read existing documents on this(ask for documents too) and note down your observations&lt;br /&gt;
# Study Hunspell and other spellcheckers to see how this problem is addressed&lt;br /&gt;
# Understand how a spell checker works. How to write a spellchecker from scratch?&lt;br /&gt;
# Come up with a plan about addressing the issue.&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;[https://savannah.nongnu.org/task/index.php?12558 Savannah Task]&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039;: Advanced&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Confirmed Mentor&#039;&#039;&#039;: &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;How to contact the mentor&#039;&#039;&#039;: &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;: Average level understanding of grammar system of at least one Indian language and complete the homework as listed above.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;What the student will learn&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
==Indic rendering support in ConTeXt==&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Project&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
ConTeXt is another TeX macro system similar to LaTeX but much more suitable for design. To find more information about ConTeXt, see the wiki http://wiki.contextgarden.net/Main_Page. ConTeXt MKII  have Indic language rendering support using XeTeX. but MKII is deprecated, and the new MKIV backend doesn&#039;t support Indic rendering yet. The aim of this project is to add support to Inidic rendering to ConTeXt MKIV. XeTeX is using Harfbuzz to do correct Indic rendering.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;More Details&#039;&#039;&#039;: A partially working patch by Rajeesh for MKIV lua code is available. ConTeXt mkii (deprecated) can work with XeTeX backend for Indic rendering. Here is a sample file:&lt;br /&gt;
 \usemodule[simplefonts]&lt;br /&gt;
 \definefontfeature[malayalam][script=mlym]&lt;br /&gt;
 \setmainfont[Rachana][features=malayalam]&lt;br /&gt;
 \starttext&lt;br /&gt;
 മലയാളം \TeX ഉപയോഗിച്ച് ടൈപ്പ്സെറ്റ് ചെയ്തത്&lt;br /&gt;
 \stoptext&lt;br /&gt;
Generate the output using command&lt;br /&gt;
 texexec --xetex &amp;lt;file.tex&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;[https://savannah.nongnu.org/task/index.php?12559 Savannah Task]&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039; : Advanced&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Confirmed Mentor&#039;&#039;&#039; : &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;How to contact the mentor&#039;&#039;&#039;: &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;: Understanding of the TeX system, experience in either LaTeX or ConTeXt and basic understanding of Indic language rendering. MKIV uses Lua, familiarity with Lua, opentype specifications or Harfbuzz will be added advantage.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;What the students will learn&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
==Language model and Acoustic model for Malayalam language for speech recognition system in CMU Sphinx==&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Project&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
CMU Sphinx is a large vocabulary, speaker independent speech recognition codebase and suite of tools, which can be used to develop speech recognition system in any language. To develop an automatic speech recognition system in a language, acoustic model and language model has to framed for that particular language.  Acoustic models characterize how sound changes over time. It captures the characteristics of basic recognition units. The language model describes the likelihood, probability, or penalty taken when a sequence or collection of words is seen. It attempts to convey behavior of the language and tries to predict the occurrence of specific word sequences possible in the language. Once these two models are developed, it will be useful to every one doing research in speech processing. For Indian languages Hindi, Tamil, Telugu and Marati, ASR systems have been developed using sphinx engine. In this project work is aimed at developing acoustic model and language model for Malayalam.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Background Reading&#039;&#039;&#039;&lt;br /&gt;
* [http://www.cs.cmu.edu/~gopalakr/publications/spdatabases_specom05.pdf &#039;Development of Indian Language Speech Databases for Large Vocabulary Speech Recognition Systems&#039;], Gopalakrishna  Anumanchipalli, Rahul Chitturi, Sachin Joshi, Rohit Kumar, Satinder Pal Singh, R.N.V. Sitaram, S P Kishore&lt;br /&gt;
* [http://www.aclweb.org/anthology/W/W12/W12-5808.pdf &amp;quot;Automatic Pronunciation Evaluation And Mispronunciation Detection Using CMUSphinx&amp;quot;], Ronanki Srikanth, James Salsman&lt;br /&gt;
* http://www.speech.cs.cmu.edu/&lt;br /&gt;
* http://cmusphinx.sourceforge.net/wiki/tutorial&lt;br /&gt;
* [http://www.ijarcsse.com &amp;quot;HTK Based Telugu Speech Recognition&amp;quot;], P. Vijai Bhaskar, AVNIET ,Hyderabad, Prof. Dr. S. Rama Mohan Rao, A.Gopi &lt;br /&gt;
* [http://www.cs.cmu.edu/~araza/Automatic_Speech_Recognition_System_for_Urdu.PDF &amp;quot;Design and  Development of an Automatic Speech Recognition System for Urdu&amp;quot;], Agha Ali Raza,  M.Sc. Thesis, FAST‐National University of Computer and Emerging Sciences &lt;br /&gt;
* [http://www.ccis2k.org/iajit/PDF/vol.6,no.2/11IASRUCSS186.pdf &amp;quot;Investigation Arabic Speech Recognition Using CMU Sphinx System&amp;quot;], Hassan Satori1, 2, Hussein Hiyassat3, Mostafa Harti1, 2, and Noureddine Chenfour&lt;br /&gt;
* [http://www.try.idv.tw/static-resources/homework/pr/PR_Final_Report.pdf &amp;quot;Understanding the CMU Sphinx Speech Recognition System&amp;quot;], Chun-Feng Liao&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039; : &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Confirmed Mentor&#039;&#039;&#039; : &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;How to contact the mentor&#039;&#039;&#039;: &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;: &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;What the students will learn&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==SILPA Project Based==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===SILPA Project Improvements===&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Project&#039;&#039;&#039;: &lt;br /&gt;
&lt;br /&gt;
This is set of ideas needed to improve the existing SILPA infrastructure. We have decided following tasks as part of this project&lt;br /&gt;
&lt;br /&gt;
# Provide REST API to SILPA without disturbing existing JSONRPC API&lt;br /&gt;
# Improve the Transliteration module&lt;br /&gt;
# Integrate [https://github.com/Project-SILPA/flask-webfonts Flask Webfonts] extension with SILPA to provide Webfonts support.&lt;br /&gt;
&lt;br /&gt;
==== Provide REST like API for SILPA ====&lt;br /&gt;
&lt;br /&gt;
SILPA provides JSONRPC API currently which is also utilized by the templates of framework. JSONRPC is not well supported in all languages and results in [https://en.wikipedia.org/wiki/Not_invented_here NIH code]. So we would like to provide REST like HTTP based API&#039;s for SILPA and at the same time leave the current JSONRPC code untouched for backward compatibility reasons.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Objectives&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
* Develop module or use existing module to provide REST like API&#039;s&lt;br /&gt;
* API should support GET and POST. [http://www.w3.org/2001/tag/doc/whenToUseGet.html When to use GET?].&lt;br /&gt;
&lt;br /&gt;
Many people have doubt on how the API should look like. We can give twitter API (https://dev.twitter.com/docs/api) as example &lt;br /&gt;
Sample API calls :&lt;br /&gt;
-------------------------------------------------------------&lt;br /&gt;
    POST api.silpa.org.in/payyans/ASCII2Unicode&lt;br /&gt;
    Paramets: text, font&lt;br /&gt;
    Response: JSON data&lt;br /&gt;
-------------------------------------------------------------&lt;br /&gt;
    POST api.silpa.org.in/payyans/Unicode2ASCII&lt;br /&gt;
    Paramets: text, font&lt;br /&gt;
    Response: JSON data&lt;br /&gt;
-------------------------------------------------------------&lt;br /&gt;
Generic: &lt;br /&gt;
    GET/POST (http://api.silpa.org.in/module/function_name or http://silpa.org.in/api/module/function_name)&lt;br /&gt;
    Parameters: function parameters&lt;br /&gt;
    Response: JSON encoded return value from function&lt;br /&gt;
&lt;br /&gt;
====  Improve Transliteration module ====&lt;br /&gt;
&lt;br /&gt;
We have a Transliteration module which supports transliteration from any Indic language to other Indic language and also support to English to Indic and Indic to English transliteration. Also we support IPA and ISO15919 transliteration system. But the module isn&#039;t in perfect shape and has lot of bugs. With this idea we would like to improve the following parts&lt;br /&gt;
&lt;br /&gt;
# Improve cross indic language transliteration system. Currently only Malayalam and Kannada are working without any external language support, all other Indian languages are first transliterated to Malayalam and then transliterated to target Indic language. We want to remove this cycle from source -&amp;gt; Malayalam -&amp;gt; target.&lt;br /&gt;
# English to IPA transliteration is currently broken and this needs to be fixed. See [https://github.com/Project-SILPA/Transliteration/issues/3 IPA transliteration bug].&lt;br /&gt;
# Once the IPA transliteration issue above is fixed, imporve English to Indic transliteration system using IPA. Currently English to Indic transliteration system is done using CMU Sphinx dictionary which is having limited set of words which inturn limits the output of English to Indic transliteration system.&lt;br /&gt;
# Improve IS015919 to Indic transliteration system see [https://github.com/Project-SILPA/Transliteration/issues/4 IS015919 to Indic transliteration].&lt;br /&gt;
&lt;br /&gt;
CLDR has transliteration data for Indic languages. We can explore it and see the feasibility. For an intermediate representation of the scripts either IPA can be used or ISO 15919 standard can be used. All these must be supplemented with exception rules and special case handling to achieve more perfect result.&lt;br /&gt;
&lt;br /&gt;
==== Integrating flask-webfonts extension with SILPA ====&lt;br /&gt;
&lt;br /&gt;
SILPA used to have a Webfonts module for serving Indian language fonts as Webfonts for browsers. During GSOC 2013 it was separated as an extension to Flask framework which can be generally used with any Flask powered app. The current code can be found at [https://github.com/Project-SILPA/flask-webfonts]. The module is not fine tuned yet so below are the objectives.&lt;br /&gt;
&lt;br /&gt;
# The module is not yet fine tuned and using it will make other modules break. This needs to be fixed (Can be checked with &#039;webfonts&#039; branch of SILPA code on github.&lt;br /&gt;
# Write tests to check the functionalities.&lt;br /&gt;
# Adhere to Flask extension guidelines and submit the modules to Flask extensions directory.&lt;br /&gt;
# Write a tool which can take a directory containing fonts file or single font file and generate configuration file needed by the extension. (A possible such tool which is outdated can be found at [https://github.com/copyninja/fontinfo])&lt;br /&gt;
# Provide HTTP api&#039;s through flask extension which can expose the CSS for applications.&lt;br /&gt;
&lt;br /&gt;
For all tasks above we expect documentation, test cases from the students as deliverable. &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039; : Intermediate&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Confirmed Mentors&#039;&#039;&#039; : &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;How to contact the mentors&#039;&#039;&#039;: &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Mailing List&#039;&#039;&#039;: silpa-discuss@nongnu.org &amp;lt;preferred&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;: Python , Flask , Jinja , HTML, Javascript&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;What the students will learn&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
# Writing applications using Flask&lt;br /&gt;
# Various Transliteration system knolwedge&lt;br /&gt;
# Webfonts knowledge and writing extensions for Flask&lt;br /&gt;
# Test drive development.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Converting indic processing modules currently in SILPA into javascript modules library===&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Project&#039;&#039;&#039;: &lt;br /&gt;
&lt;br /&gt;
Port some of the silpa algorithms to node modules. Several modules, alogorithms in SILPA project is done in python now. But porting them to javascript helps developers. For example, cross language transliteration can be done javascript too if we port the algorithm and transliteration rules. Similarly the approximate search can be ported. A flexibile fuzzy search on the web pages will be possible if we have the algorithm in javascript.&lt;br /&gt;
&lt;br /&gt;
Proposed javascript module pattern is https://github.com/umdjs/umd&lt;br /&gt;
&lt;br /&gt;
Student proposals should have a list of alogorithms planning to port, planned demo applications, planned documentation details, and publishing details(Example: npm registry)&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039; : &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Confirmed Mentor&#039;&#039;&#039; : &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;How to contact the mentor&#039;&#039;&#039;: &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039; Mailing List&#039;&#039;&#039;: silpa-discuss@nongnu.org&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;: javascript, python&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;What the students will learn&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
===Integrate Varnam into Silpa===&lt;br /&gt;
&lt;br /&gt;
Create a Silpa module which hosts [http://www.varnamproject.com varnam]. This includes making a python port for libvarnam and making a Silpa module which uses the python port. &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039; : Medium&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Confirmed Mentor&#039;&#039;&#039; : &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;How to contact the mentor&#039;&#039;&#039;: &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039; Mailing List&#039;&#039;&#039;: silpa-discuss@nongnu.org&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;: C, Python&lt;br /&gt;
&lt;br /&gt;
==Varnam Based==&lt;br /&gt;
&lt;br /&gt;
Varnam is a cross-platform predictive transliterator for Indian languages. It works mostly like Google&#039;s transliterate, but shows key differences in the way word tokenization is done. It has a learning system built in which allows Varnam to make smart predictions. &lt;br /&gt;
&lt;br /&gt;
There are varnam clients available as [https://addons.mozilla.org/en-US/firefox/addon/varnam-transliteration-base/ Firefox]] &amp;amp; [https://chrome.google.com/webstore/detail/varnam-ime/abcfkeabpcanobhdmcmdabejaamephaf Chrome addon] and an [https://gitorious.org/varnamproject/libvarnam-ibus/source/d939adf50024013902c27310c03ef21a9210cdcb IBus engine].&lt;br /&gt;
&lt;br /&gt;
To try out Varnam, navigate to [http://varnamproject.com/editor[http://varnamproject.com/editor]]. Currently it support Hindi and Malayalam.&lt;br /&gt;
&lt;br /&gt;
* [http://www.varnamproject.com/docs/faq FAQ]&lt;br /&gt;
* [http://www.varnamproject.com/docs Documentation]&lt;br /&gt;
* [http://www.varnamproject.com/docs/contributing Contributors guide &amp;amp; ideas to work on]&lt;br /&gt;
&lt;br /&gt;
Apart from the following ideas, you can propose your own idea. &lt;br /&gt;
&lt;br /&gt;
===Programming language bindings &amp;amp; varnam-daemon===&lt;br /&gt;
&lt;br /&gt;
Varnam is written on C which makes interoperability with other languages easy. There are language bindings available for `NodeJs` and `Ruby`. Supporting Varnam in multiple languages allows projects to use varnam easily to enable Indian language input.&lt;br /&gt;
&lt;br /&gt;
To make using varnam from different languages easier, make a cross platform standalone process which uses `libvarnam` shared library and exposes a RPC API over network. This allows any programming language with a socket support can be used with libvarnam. This also makes language bindings fairly easy because they don&#039;t have to work with the native interoperability support. The protocol can be a simple text based protocol for all the commands that `libvarnam` supports. &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039; : Advanced&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Confirmed Mentor&#039;&#039;&#039; : &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;How to contact the mentor&#039;&#039;&#039;: &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;: C&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Improvements to the REST API===&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Project&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
This includes rewrite of the current implementation in `golang` and add support for WebSockets to improve the input experience. This also&lt;br /&gt;
includes making scripts that would ease embedding input on any webpage. All the changes done will go live on[1]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039; : Advanced&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Confirmed Mentor&#039;&#039;&#039; : &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;How to contact the mentor&#039;&#039;&#039;: &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;: Basic understanding of golang and C&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;What the students will learn&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
===Create an Android IME===&lt;br /&gt;
&lt;br /&gt;
Varnam will be ported as a Silpa module and it will be available on Android as part of the android SDK project which Silpa has proposed. This idea is merged to the [http://wiki.smc.org.in/SoC/2014/Project_ideas#Android_SDK_for_Silpa Silpa] project ideas.&lt;br /&gt;
&lt;br /&gt;
===Enable varnam&#039;s suggestions system to be used from Inscript or any other input system===&lt;br /&gt;
&lt;br /&gt;
Varnam has knowledge about lot of words. This idea proposes a method to use these words and provide suggestions for other input systems. Basically, in Varnam, the API call will be something like,&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;&amp;lt;pre&amp;gt;&lt;br /&gt;
varnam_get_suggestions (handle, &amp;quot;भारत&amp;quot;);&lt;br /&gt;
&amp;lt;/pre&amp;gt;&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This will fetch all the suggestions which has the given prefix. &lt;br /&gt;
&lt;br /&gt;
`varnam_get_suggestions` needs to keep track of the previous words and use [http://en.wikipedia.org/wiki/N-gram n-gram] based dataset to filter the results. This should also learn the words back into the word corpus that varnam is using. Filtering suggestions won&#039;t be just a prefix search, but it will have knowledge about how text can be written in the target language and provide smart filtering. Searching in a large corpus and providing real-time suggestions makes this a challenging task. &lt;br /&gt;
&lt;br /&gt;
Once this is implemented in `libvarnam`, it can be used in the ibus-engine.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039; : Advanced&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;:  C, Unicode &amp;amp; encodings&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Confirmed Mentor&#039;&#039;&#039; : &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;How to contact the mentor&#039;&#039;&#039;: &lt;br /&gt;
&lt;br /&gt;
=== Word corpus synchronization ===&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Project&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
Create a cross-platform synchronization tool which can upload/download the word corpus from offline IMEs like varnam-ibus[2]. This helps to build the online words corpus easily.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039; : Medium&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Confirmed Mentor&#039;&#039;&#039; : &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;How to contact the mentor&#039;&#039;&#039;: &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;:  Knowledge in C/golang&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;What the students will learn&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [1]: http://www.varnamproject.com&lt;br /&gt;
* [2]: https://gitorious.org/varnamproject/libvarnam-ibus/&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Grandham ==&lt;br /&gt;
&lt;br /&gt;
=== Adding MARC21 import/export feature in Grandham ===&lt;br /&gt;
&lt;br /&gt;
We need a feature in Grandham to import and parse data from MARC21 documents. We should also be able to export existing data in MARC21.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039; : High&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Confirmed Mentor&#039;&#039;&#039; :&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;How to contact the mentor&#039;&#039;&#039;: &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;: Knowledge in Ruby/Ruby on Rails&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;What the students will learn&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [1]: http://dev.grandham.org&lt;br /&gt;
* [2]: https://github.com/smc/grandham&lt;/div&gt;</summary>
		<author><name>Nandaja</name></author>
	</entry>
	<entry>
		<id>https://wiki.smc.org.in/index.php?title=GSoC/2015/Project_ideas&amp;diff=10700</id>
		<title>GSoC/2015/Project ideas</title>
		<link rel="alternate" type="text/html" href="https://wiki.smc.org.in/index.php?title=GSoC/2015/Project_ideas&amp;diff=10700"/>
		<updated>2015-02-16T05:01:23Z</updated>

		<summary type="html">&lt;p&gt;Nandaja: /* Varnam Android Keyboard */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;center&amp;gt; &lt;br /&gt;
&amp;lt;font color=&amp;quot;green&amp;quot;&amp;gt; &amp;lt;big&amp;gt;&#039;&#039;&#039;Apart from the following ideas , you can propose your own ideas&#039;&#039;&#039;&amp;lt;/big&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Potential Mentors=&lt;br /&gt;
# Santhosh Thottingal (&#039;&#039;&#039;santhosh&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Baiju M (&#039;&#039;&#039;baijum&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Praveen A (&#039;&#039;&#039;j4v4m4n&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Rajeesh K Nambiar (&#039;&#039;&#039;rajeesh&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Anivar Aravind (&#039;&#039;&#039;anivar&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Vasudev Kammath (&#039;&#039;&#039;copyninja&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Jishnu Mohan (&#039;&#039;&#039;jishnu7&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Hrishikesh K.B (&#039;&#039;&#039;stultus&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Nandaja Varma (&#039;&#039;&#039;gem&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Navaneeth (&#039;&#039;&#039;nkn__&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Ershad K (&#039;&#039;&#039;ershad&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Nishan Naseer (&#039;&#039;&#039;nishan&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
&lt;br /&gt;
=Ideas for Google Summer of Code 2015=&lt;br /&gt;
* Please Read the [http://wiki.smc.org.in/GSoC/2015#FAQ FAQ]&lt;br /&gt;
* If you want to propose an idea, please do it in [http://lists.smc.org.in/listinfo.cgi/student-projects-smc.org.in student projects mailing list]&lt;br /&gt;
&lt;br /&gt;
=Projects with confirmed mentors=&lt;br /&gt;
&lt;br /&gt;
== Varnam based ==&lt;br /&gt;
&lt;br /&gt;
=== Varnam Android Keyboard ===&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Project&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
Add support for varnamproject into android and have a native keyboard like indic keyboard. It can be integrated into Indic keyboard or have it as a separate keyboard.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039;: Advanced&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Confirmed Mentor&#039;&#039;&#039;: Navaneeth K. N.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;How to contact the mentor&#039;&#039;&#039;: IRC - nkn__ on #smc-project on Freenode &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;: &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;What the student will learn&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
=Projects with unconfirmed mentors=&lt;br /&gt;
== A spell checker for Indic language that understands inflections ==&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Project&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
SILPA project has a spellchecker written using python with a not so simple algorithm. But still it is not capable of handling inflection and agglutination occurring in Indian languages especially south Indian languages. The dictionary we have for Malayalam spellchecker have about 150000 words. Of course we can expand the dictionary, but that doesn&#039;t have much value since words can be formed in Malayalam or Tamil etc by joining multiple words. In addition to that, words get inflected based on grammar forms(sandhi), plural, gender etc. Hunspell has a system to handle this, but so far nobody succeeded in getting it working for multi level suffix stripping as required for Malayalam. Some times a Malayalam word can be formed by more than 5 words joining together. We will need a word splitting logic or a table taking care of all patterns. The project is to attempt solving this with hunspell. If that is not feasible(hunspell upstream is not active), develop an algorithm and implement it.&lt;br /&gt;
&lt;br /&gt;
Recently Tamil attempted developing a spellchecker using Hunspell with multi level suffix stripping. You can see the result here https://github.com/thamizha/solthiruthi. &lt;br /&gt;
Our attempt should be first to use Hunspell to achieve spellchecking with agglutination and inflection. Probably it will require lot of scripting to generate suffix patterns, we can ask help from existing language communities too. If Hunspell has limitation with multi level suffxes- sometimes Indian languages require more than 5 levels of suffix stripping, we need to document it(bug and documentation) and try to attempt python based solution on top of SILPA framework.&lt;br /&gt;
&lt;br /&gt;
The project is not about coding an existing algorithm, but to develop and implement an algorithm.&lt;br /&gt;
&lt;br /&gt;
Hunspell&#039;s limitations can be understood from [[User:%E0%B4%B8%E0%B4%A8%E0%B5%8D%E0%B4%A4%E0%B5%8B%E0%B4%B7%E0%B5%8D/HunspellConversation| this conversation]] we had with the author of Hunspell in 2008&lt;br /&gt;
&lt;br /&gt;
Homework to do before submitting applications:&lt;br /&gt;
# Use Hunspell in any Indian language like Malayalam for spell correction in editors or word processors and understand the limitations&lt;br /&gt;
# Study the nature of inflection and agglutination in Indian languages, read existing documents on this(ask for documents too) and note down your observations&lt;br /&gt;
# Study Hunspell and other spellcheckers to see how this problem is addressed&lt;br /&gt;
# Understand how a spell checker works. How to write a spellchecker from scratch?&lt;br /&gt;
# Come up with a plan about addressing the issue.&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;[https://savannah.nongnu.org/task/index.php?12558 Savannah Task]&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039;: Advanced&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Confirmed Mentor&#039;&#039;&#039;: &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;How to contact the mentor&#039;&#039;&#039;: &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;: Average level understanding of grammar system of at least one Indian language and complete the homework as listed above.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;What the student will learn&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
==Indic rendering support in ConTeXt==&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Project&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
ConTeXt is another TeX macro system similar to LaTeX but much more suitable for design. To find more information about ConTeXt, see the wiki http://wiki.contextgarden.net/Main_Page. ConTeXt MKII  have Indic language rendering support using XeTeX. but MKII is deprecated, and the new MKIV backend doesn&#039;t support Indic rendering yet. The aim of this project is to add support to Inidic rendering to ConTeXt MKIV. XeTeX is using Harfbuzz to do correct Indic rendering.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;More Details&#039;&#039;&#039;: A partially working patch by Rajeesh for MKIV lua code is available. ConTeXt mkii (deprecated) can work with XeTeX backend for Indic rendering. Here is a sample file:&lt;br /&gt;
 \usemodule[simplefonts]&lt;br /&gt;
 \definefontfeature[malayalam][script=mlym]&lt;br /&gt;
 \setmainfont[Rachana][features=malayalam]&lt;br /&gt;
 \starttext&lt;br /&gt;
 മലയാളം \TeX ഉപയോഗിച്ച് ടൈപ്പ്സെറ്റ് ചെയ്തത്&lt;br /&gt;
 \stoptext&lt;br /&gt;
Generate the output using command&lt;br /&gt;
 texexec --xetex &amp;lt;file.tex&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;[https://savannah.nongnu.org/task/index.php?12559 Savannah Task]&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039; : Advanced&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Confirmed Mentor&#039;&#039;&#039; : &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;How to contact the mentor&#039;&#039;&#039;: &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;: Understanding of the TeX system, experience in either LaTeX or ConTeXt and basic understanding of Indic language rendering. MKIV uses Lua, familiarity with Lua, opentype specifications or Harfbuzz will be added advantage.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;What the students will learn&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
==Language model and Acoustic model for Malayalam language for speech recognition system in CMU Sphinx==&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Project&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
CMU Sphinx is a large vocabulary, speaker independent speech recognition codebase and suite of tools, which can be used to develop speech recognition system in any language. To develop an automatic speech recognition system in a language, acoustic model and language model has to framed for that particular language.  Acoustic models characterize how sound changes over time. It captures the characteristics of basic recognition units. The language model describes the likelihood, probability, or penalty taken when a sequence or collection of words is seen. It attempts to convey behavior of the language and tries to predict the occurrence of specific word sequences possible in the language. Once these two models are developed, it will be useful to every one doing research in speech processing. For Indian languages Hindi, Tamil, Telugu and Marati, ASR systems have been developed using sphinx engine. In this project work is aimed at developing acoustic model and language model for Malayalam.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Background Reading&#039;&#039;&#039;&lt;br /&gt;
* [http://www.cs.cmu.edu/~gopalakr/publications/spdatabases_specom05.pdf &#039;Development of Indian Language Speech Databases for Large Vocabulary Speech Recognition Systems&#039;], Gopalakrishna  Anumanchipalli, Rahul Chitturi, Sachin Joshi, Rohit Kumar, Satinder Pal Singh, R.N.V. Sitaram, S P Kishore&lt;br /&gt;
* [http://www.aclweb.org/anthology/W/W12/W12-5808.pdf &amp;quot;Automatic Pronunciation Evaluation And Mispronunciation Detection Using CMUSphinx&amp;quot;], Ronanki Srikanth, James Salsman&lt;br /&gt;
* http://www.speech.cs.cmu.edu/&lt;br /&gt;
* http://cmusphinx.sourceforge.net/wiki/tutorial&lt;br /&gt;
* [http://www.ijarcsse.com &amp;quot;HTK Based Telugu Speech Recognition&amp;quot;], P. Vijai Bhaskar, AVNIET ,Hyderabad, Prof. Dr. S. Rama Mohan Rao, A.Gopi &lt;br /&gt;
* [http://www.cs.cmu.edu/~araza/Automatic_Speech_Recognition_System_for_Urdu.PDF &amp;quot;Design and  Development of an Automatic Speech Recognition System for Urdu&amp;quot;], Agha Ali Raza,  M.Sc. Thesis, FAST‐National University of Computer and Emerging Sciences &lt;br /&gt;
* [http://www.ccis2k.org/iajit/PDF/vol.6,no.2/11IASRUCSS186.pdf &amp;quot;Investigation Arabic Speech Recognition Using CMU Sphinx System&amp;quot;], Hassan Satori1, 2, Hussein Hiyassat3, Mostafa Harti1, 2, and Noureddine Chenfour&lt;br /&gt;
* [http://www.try.idv.tw/static-resources/homework/pr/PR_Final_Report.pdf &amp;quot;Understanding the CMU Sphinx Speech Recognition System&amp;quot;], Chun-Feng Liao&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039; : &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Confirmed Mentor&#039;&#039;&#039; : &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;How to contact the mentor&#039;&#039;&#039;: &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;: &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;What the students will learn&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==SILPA Project Based==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===SILPA Project Improvements===&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Project&#039;&#039;&#039;: &lt;br /&gt;
&lt;br /&gt;
This is set of ideas needed to improve the existing SILPA infrastructure. We have decided following tasks as part of this project&lt;br /&gt;
&lt;br /&gt;
# Provide REST API to SILPA without disturbing existing JSONRPC API&lt;br /&gt;
# Improve the Transliteration module&lt;br /&gt;
# Integrate [https://github.com/Project-SILPA/flask-webfonts Flask Webfonts] extension with SILPA to provide Webfonts support.&lt;br /&gt;
&lt;br /&gt;
==== Provide REST like API for SILPA ====&lt;br /&gt;
&lt;br /&gt;
SILPA provides JSONRPC API currently which is also utilized by the templates of framework. JSONRPC is not well supported in all languages and results in [https://en.wikipedia.org/wiki/Not_invented_here NIH code]. So we would like to provide REST like HTTP based API&#039;s for SILPA and at the same time leave the current JSONRPC code untouched for backward compatibility reasons.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Objectives&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
* Develop module or use existing module to provide REST like API&#039;s&lt;br /&gt;
* API should support GET and POST. [http://www.w3.org/2001/tag/doc/whenToUseGet.html When to use GET?].&lt;br /&gt;
&lt;br /&gt;
Many people have doubt on how the API should look like. We can give twitter API (https://dev.twitter.com/docs/api) as example &lt;br /&gt;
Sample API calls :&lt;br /&gt;
-------------------------------------------------------------&lt;br /&gt;
    POST api.silpa.org.in/payyans/ASCII2Unicode&lt;br /&gt;
    Paramets: text, font&lt;br /&gt;
    Response: JSON data&lt;br /&gt;
-------------------------------------------------------------&lt;br /&gt;
    POST api.silpa.org.in/payyans/Unicode2ASCII&lt;br /&gt;
    Paramets: text, font&lt;br /&gt;
    Response: JSON data&lt;br /&gt;
-------------------------------------------------------------&lt;br /&gt;
Generic: &lt;br /&gt;
    GET/POST (http://api.silpa.org.in/module/function_name or http://silpa.org.in/api/module/function_name)&lt;br /&gt;
    Parameters: function parameters&lt;br /&gt;
    Response: JSON encoded return value from function&lt;br /&gt;
&lt;br /&gt;
====  Improve Transliteration module ====&lt;br /&gt;
&lt;br /&gt;
We have a Transliteration module which supports transliteration from any Indic language to other Indic language and also support to English to Indic and Indic to English transliteration. Also we support IPA and ISO15919 transliteration system. But the module isn&#039;t in perfect shape and has lot of bugs. With this idea we would like to improve the following parts&lt;br /&gt;
&lt;br /&gt;
# Improve cross indic language transliteration system. Currently only Malayalam and Kannada are working without any external language support, all other Indian languages are first transliterated to Malayalam and then transliterated to target Indic language. We want to remove this cycle from source -&amp;gt; Malayalam -&amp;gt; target.&lt;br /&gt;
# English to IPA transliteration is currently broken and this needs to be fixed. See [https://github.com/Project-SILPA/Transliteration/issues/3 IPA transliteration bug].&lt;br /&gt;
# Once the IPA transliteration issue above is fixed, imporve English to Indic transliteration system using IPA. Currently English to Indic transliteration system is done using CMU Sphinx dictionary which is having limited set of words which inturn limits the output of English to Indic transliteration system.&lt;br /&gt;
# Improve IS015919 to Indic transliteration system see [https://github.com/Project-SILPA/Transliteration/issues/4 IS015919 to Indic transliteration].&lt;br /&gt;
&lt;br /&gt;
CLDR has transliteration data for Indic languages. We can explore it and see the feasibility. For an intermediate representation of the scripts either IPA can be used or ISO 15919 standard can be used. All these must be supplemented with exception rules and special case handling to achieve more perfect result.&lt;br /&gt;
&lt;br /&gt;
==== Integrating flask-webfonts extension with SILPA ====&lt;br /&gt;
&lt;br /&gt;
SILPA used to have a Webfonts module for serving Indian language fonts as Webfonts for browsers. During GSOC 2013 it was separated as an extension to Flask framework which can be generally used with any Flask powered app. The current code can be found at [https://github.com/Project-SILPA/flask-webfonts]. The module is not fine tuned yet so below are the objectives.&lt;br /&gt;
&lt;br /&gt;
# The module is not yet fine tuned and using it will make other modules break. This needs to be fixed (Can be checked with &#039;webfonts&#039; branch of SILPA code on github.&lt;br /&gt;
# Write tests to check the functionalities.&lt;br /&gt;
# Adhere to Flask extension guidelines and submit the modules to Flask extensions directory.&lt;br /&gt;
# Write a tool which can take a directory containing fonts file or single font file and generate configuration file needed by the extension. (A possible such tool which is outdated can be found at [https://github.com/copyninja/fontinfo])&lt;br /&gt;
# Provide HTTP api&#039;s through flask extension which can expose the CSS for applications.&lt;br /&gt;
&lt;br /&gt;
For all tasks above we expect documentation, test cases from the students as deliverable. &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039; : Intermediate&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Confirmed Mentors&#039;&#039;&#039; : &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;How to contact the mentors&#039;&#039;&#039;: &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Mailing List&#039;&#039;&#039;: silpa-discuss@nongnu.org &amp;lt;preferred&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;: Python , Flask , Jinja , HTML, Javascript&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;What the students will learn&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
# Writing applications using Flask&lt;br /&gt;
# Various Transliteration system knolwedge&lt;br /&gt;
# Webfonts knowledge and writing extensions for Flask&lt;br /&gt;
# Test drive development.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Converting indic processing modules currently in SILPA into javascript modules library===&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Project&#039;&#039;&#039;: &lt;br /&gt;
&lt;br /&gt;
Port some of the silpa algorithms to node modules. Several modules, alogorithms in SILPA project is done in python now. But porting them to javascript helps developers. For example, cross language transliteration can be done javascript too if we port the algorithm and transliteration rules. Similarly the approximate search can be ported. A flexibile fuzzy search on the web pages will be possible if we have the algorithm in javascript.&lt;br /&gt;
&lt;br /&gt;
Proposed javascript module pattern is https://github.com/umdjs/umd&lt;br /&gt;
&lt;br /&gt;
Student proposals should have a list of alogorithms planning to port, planned demo applications, planned documentation details, and publishing details(Example: npm registry)&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039; : &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Confirmed Mentor&#039;&#039;&#039; : &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;How to contact the mentor&#039;&#039;&#039;: &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039; Mailing List&#039;&#039;&#039;: silpa-discuss@nongnu.org&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;: javascript, python&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;What the students will learn&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
===Integrate Varnam into Silpa===&lt;br /&gt;
&lt;br /&gt;
Create a Silpa module which hosts [http://www.varnamproject.com varnam]. This includes making a python port for libvarnam and making a Silpa module which uses the python port. &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039; : Medium&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Confirmed Mentor&#039;&#039;&#039; : &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;How to contact the mentor&#039;&#039;&#039;: &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039; Mailing List&#039;&#039;&#039;: silpa-discuss@nongnu.org&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;: C, Python&lt;br /&gt;
&lt;br /&gt;
==Varnam Based==&lt;br /&gt;
&lt;br /&gt;
Varnam is a cross-platform predictive transliterator for Indian languages. It works mostly like Google&#039;s transliterate, but shows key differences in the way word tokenization is done. It has a learning system built in which allows Varnam to make smart predictions. &lt;br /&gt;
&lt;br /&gt;
There are varnam clients available as [https://addons.mozilla.org/en-US/firefox/addon/varnam-transliteration-base/ Firefox]] &amp;amp; [https://chrome.google.com/webstore/detail/varnam-ime/abcfkeabpcanobhdmcmdabejaamephaf Chrome addon] and an [https://gitorious.org/varnamproject/libvarnam-ibus/source/d939adf50024013902c27310c03ef21a9210cdcb IBus engine].&lt;br /&gt;
&lt;br /&gt;
To try out Varnam, navigate to [http://varnamproject.com/editor[http://varnamproject.com/editor]]. Currently it support Hindi and Malayalam.&lt;br /&gt;
&lt;br /&gt;
* [http://www.varnamproject.com/docs/faq FAQ]&lt;br /&gt;
* [http://www.varnamproject.com/docs Documentation]&lt;br /&gt;
* [http://www.varnamproject.com/docs/contributing Contributors guide &amp;amp; ideas to work on]&lt;br /&gt;
&lt;br /&gt;
Apart from the following ideas, you can propose your own idea. &lt;br /&gt;
&lt;br /&gt;
===Programming language bindings &amp;amp; varnam-daemon===&lt;br /&gt;
&lt;br /&gt;
Varnam is written on C which makes interoperability with other languages easy. There are language bindings available for `NodeJs` and `Ruby`. Supporting Varnam in multiple languages allows projects to use varnam easily to enable Indian language input.&lt;br /&gt;
&lt;br /&gt;
To make using varnam from different languages easier, make a cross platform standalone process which uses `libvarnam` shared library and exposes a RPC API over network. This allows any programming language with a socket support can be used with libvarnam. This also makes language bindings fairly easy because they don&#039;t have to work with the native interoperability support. The protocol can be a simple text based protocol for all the commands that `libvarnam` supports. &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039; : Advanced&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Confirmed Mentor&#039;&#039;&#039; : &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;How to contact the mentor&#039;&#039;&#039;: &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;: C&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Improvements to the REST API===&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Project&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
This includes rewrite of the current implementation in `golang` and add support for WebSockets to improve the input experience. This also&lt;br /&gt;
includes making scripts that would ease embedding input on any webpage. All the changes done will go live on[1]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039; : Advanced&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Confirmed Mentor&#039;&#039;&#039; : &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;How to contact the mentor&#039;&#039;&#039;: &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;: Basic understanding of golang and C&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;What the students will learn&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
===Create an Android IME===&lt;br /&gt;
&lt;br /&gt;
Varnam will be ported as a Silpa module and it will be available on Android as part of the android SDK project which Silpa has proposed. This idea is merged to the [http://wiki.smc.org.in/SoC/2014/Project_ideas#Android_SDK_for_Silpa Silpa] project ideas.&lt;br /&gt;
&lt;br /&gt;
===Enable varnam&#039;s suggestions system to be used from Inscript or any other input system===&lt;br /&gt;
&lt;br /&gt;
Varnam has knowledge about lot of words. This idea proposes a method to use these words and provide suggestions for other input systems. Basically, in Varnam, the API call will be something like,&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;&amp;lt;pre&amp;gt;&lt;br /&gt;
varnam_get_suggestions (handle, &amp;quot;भारत&amp;quot;);&lt;br /&gt;
&amp;lt;/pre&amp;gt;&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This will fetch all the suggestions which has the given prefix. &lt;br /&gt;
&lt;br /&gt;
`varnam_get_suggestions` needs to keep track of the previous words and use [http://en.wikipedia.org/wiki/N-gram n-gram] based dataset to filter the results. This should also learn the words back into the word corpus that varnam is using. Filtering suggestions won&#039;t be just a prefix search, but it will have knowledge about how text can be written in the target language and provide smart filtering. Searching in a large corpus and providing real-time suggestions makes this a challenging task. &lt;br /&gt;
&lt;br /&gt;
Once this is implemented in `libvarnam`, it can be used in the ibus-engine.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039; : Advanced&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;:  C, Unicode &amp;amp; encodings&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Confirmed Mentor&#039;&#039;&#039; : &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;How to contact the mentor&#039;&#039;&#039;: &lt;br /&gt;
&lt;br /&gt;
=== Word corpus synchronization ===&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Project&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
Create a cross-platform synchronization tool which can upload/download the word corpus from offline IMEs like varnam-ibus[2]. This helps to build the online words corpus easily.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039; : Medium&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Confirmed Mentor&#039;&#039;&#039; : &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;How to contact the mentor&#039;&#039;&#039;: &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;:  Knowledge in C/golang&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;What the students will learn&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [1]: http://www.varnamproject.com&lt;br /&gt;
* [2]: https://gitorious.org/varnamproject/libvarnam-ibus/&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Grandham ==&lt;br /&gt;
&lt;br /&gt;
=== Adding MARC21 import/export feature in Grandham ===&lt;br /&gt;
&lt;br /&gt;
We need a feature in Grandham to import and parse data from MARC21 documents. We should also be able to export existing data in MARC21.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039; : High&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Confirmed Mentor&#039;&#039;&#039; :&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;How to contact the mentor&#039;&#039;&#039;: &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;: Knowledge in Ruby/Ruby on Rails&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;What the students will learn&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [1]: http://dev.grandham.org&lt;br /&gt;
* [2]: https://github.com/smc/grandham&lt;/div&gt;</summary>
		<author><name>Nandaja</name></author>
	</entry>
	<entry>
		<id>https://wiki.smc.org.in/index.php?title=GSoC/2015/Project_ideas&amp;diff=10699</id>
		<title>GSoC/2015/Project ideas</title>
		<link rel="alternate" type="text/html" href="https://wiki.smc.org.in/index.php?title=GSoC/2015/Project_ideas&amp;diff=10699"/>
		<updated>2015-02-16T05:00:48Z</updated>

		<summary type="html">&lt;p&gt;Nandaja: /* Varnam Android Keyboard */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;center&amp;gt; &lt;br /&gt;
&amp;lt;font color=&amp;quot;green&amp;quot;&amp;gt; &amp;lt;big&amp;gt;&#039;&#039;&#039;Apart from the following ideas , you can propose your own ideas&#039;&#039;&#039;&amp;lt;/big&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Potential Mentors=&lt;br /&gt;
# Santhosh Thottingal (&#039;&#039;&#039;santhosh&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Baiju M (&#039;&#039;&#039;baijum&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Praveen A (&#039;&#039;&#039;j4v4m4n&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Rajeesh K Nambiar (&#039;&#039;&#039;rajeesh&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Anivar Aravind (&#039;&#039;&#039;anivar&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Vasudev Kammath (&#039;&#039;&#039;copyninja&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Jishnu Mohan (&#039;&#039;&#039;jishnu7&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Hrishikesh K.B (&#039;&#039;&#039;stultus&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Nandaja Varma (&#039;&#039;&#039;gem&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Navaneeth (&#039;&#039;&#039;nkn__&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Ershad K (&#039;&#039;&#039;ershad&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Nishan Naseer (&#039;&#039;&#039;nishan&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
&lt;br /&gt;
=Ideas for Google Summer of Code 2015=&lt;br /&gt;
* Please Read the [http://wiki.smc.org.in/GSoC/2015#FAQ FAQ]&lt;br /&gt;
* If you want to propose an idea, please do it in [http://lists.smc.org.in/listinfo.cgi/student-projects-smc.org.in student projects mailing list]&lt;br /&gt;
&lt;br /&gt;
=Projects with confirmed mentors=&lt;br /&gt;
&lt;br /&gt;
== Varnam based ==&lt;br /&gt;
&lt;br /&gt;
== Varnam Android Keyboard ==&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Project&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
Add support for varnamproject into android and have a native keyboard like indic keyboard. It can be integrated into Indic keyboard or have it as a separate keyboard.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039;: Advanced&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Confirmed Mentor&#039;&#039;&#039;: Navaneeth K. N.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;How to contact the mentor&#039;&#039;&#039;: IRC - nkn__ on #smc-project on Freenode &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;: &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;What the student will learn&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
=Projects with unconfirmed mentors=&lt;br /&gt;
== A spell checker for Indic language that understands inflections ==&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Project&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
SILPA project has a spellchecker written using python with a not so simple algorithm. But still it is not capable of handling inflection and agglutination occurring in Indian languages especially south Indian languages. The dictionary we have for Malayalam spellchecker have about 150000 words. Of course we can expand the dictionary, but that doesn&#039;t have much value since words can be formed in Malayalam or Tamil etc by joining multiple words. In addition to that, words get inflected based on grammar forms(sandhi), plural, gender etc. Hunspell has a system to handle this, but so far nobody succeeded in getting it working for multi level suffix stripping as required for Malayalam. Some times a Malayalam word can be formed by more than 5 words joining together. We will need a word splitting logic or a table taking care of all patterns. The project is to attempt solving this with hunspell. If that is not feasible(hunspell upstream is not active), develop an algorithm and implement it.&lt;br /&gt;
&lt;br /&gt;
Recently Tamil attempted developing a spellchecker using Hunspell with multi level suffix stripping. You can see the result here https://github.com/thamizha/solthiruthi. &lt;br /&gt;
Our attempt should be first to use Hunspell to achieve spellchecking with agglutination and inflection. Probably it will require lot of scripting to generate suffix patterns, we can ask help from existing language communities too. If Hunspell has limitation with multi level suffxes- sometimes Indian languages require more than 5 levels of suffix stripping, we need to document it(bug and documentation) and try to attempt python based solution on top of SILPA framework.&lt;br /&gt;
&lt;br /&gt;
The project is not about coding an existing algorithm, but to develop and implement an algorithm.&lt;br /&gt;
&lt;br /&gt;
Hunspell&#039;s limitations can be understood from [[User:%E0%B4%B8%E0%B4%A8%E0%B5%8D%E0%B4%A4%E0%B5%8B%E0%B4%B7%E0%B5%8D/HunspellConversation| this conversation]] we had with the author of Hunspell in 2008&lt;br /&gt;
&lt;br /&gt;
Homework to do before submitting applications:&lt;br /&gt;
# Use Hunspell in any Indian language like Malayalam for spell correction in editors or word processors and understand the limitations&lt;br /&gt;
# Study the nature of inflection and agglutination in Indian languages, read existing documents on this(ask for documents too) and note down your observations&lt;br /&gt;
# Study Hunspell and other spellcheckers to see how this problem is addressed&lt;br /&gt;
# Understand how a spell checker works. How to write a spellchecker from scratch?&lt;br /&gt;
# Come up with a plan about addressing the issue.&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;[https://savannah.nongnu.org/task/index.php?12558 Savannah Task]&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039;: Advanced&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Confirmed Mentor&#039;&#039;&#039;: &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;How to contact the mentor&#039;&#039;&#039;: &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;: Average level understanding of grammar system of at least one Indian language and complete the homework as listed above.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;What the student will learn&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
==Indic rendering support in ConTeXt==&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Project&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
ConTeXt is another TeX macro system similar to LaTeX but much more suitable for design. To find more information about ConTeXt, see the wiki http://wiki.contextgarden.net/Main_Page. ConTeXt MKII  have Indic language rendering support using XeTeX. but MKII is deprecated, and the new MKIV backend doesn&#039;t support Indic rendering yet. The aim of this project is to add support to Inidic rendering to ConTeXt MKIV. XeTeX is using Harfbuzz to do correct Indic rendering.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;More Details&#039;&#039;&#039;: A partially working patch by Rajeesh for MKIV lua code is available. ConTeXt mkii (deprecated) can work with XeTeX backend for Indic rendering. Here is a sample file:&lt;br /&gt;
 \usemodule[simplefonts]&lt;br /&gt;
 \definefontfeature[malayalam][script=mlym]&lt;br /&gt;
 \setmainfont[Rachana][features=malayalam]&lt;br /&gt;
 \starttext&lt;br /&gt;
 മലയാളം \TeX ഉപയോഗിച്ച് ടൈപ്പ്സെറ്റ് ചെയ്തത്&lt;br /&gt;
 \stoptext&lt;br /&gt;
Generate the output using command&lt;br /&gt;
 texexec --xetex &amp;lt;file.tex&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;[https://savannah.nongnu.org/task/index.php?12559 Savannah Task]&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039; : Advanced&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Confirmed Mentor&#039;&#039;&#039; : &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;How to contact the mentor&#039;&#039;&#039;: &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;: Understanding of the TeX system, experience in either LaTeX or ConTeXt and basic understanding of Indic language rendering. MKIV uses Lua, familiarity with Lua, opentype specifications or Harfbuzz will be added advantage.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;What the students will learn&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
==Language model and Acoustic model for Malayalam language for speech recognition system in CMU Sphinx==&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Project&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
CMU Sphinx is a large vocabulary, speaker independent speech recognition codebase and suite of tools, which can be used to develop speech recognition system in any language. To develop an automatic speech recognition system in a language, acoustic model and language model has to framed for that particular language.  Acoustic models characterize how sound changes over time. It captures the characteristics of basic recognition units. The language model describes the likelihood, probability, or penalty taken when a sequence or collection of words is seen. It attempts to convey behavior of the language and tries to predict the occurrence of specific word sequences possible in the language. Once these two models are developed, it will be useful to every one doing research in speech processing. For Indian languages Hindi, Tamil, Telugu and Marati, ASR systems have been developed using sphinx engine. In this project work is aimed at developing acoustic model and language model for Malayalam.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Background Reading&#039;&#039;&#039;&lt;br /&gt;
* [http://www.cs.cmu.edu/~gopalakr/publications/spdatabases_specom05.pdf &#039;Development of Indian Language Speech Databases for Large Vocabulary Speech Recognition Systems&#039;], Gopalakrishna  Anumanchipalli, Rahul Chitturi, Sachin Joshi, Rohit Kumar, Satinder Pal Singh, R.N.V. Sitaram, S P Kishore&lt;br /&gt;
* [http://www.aclweb.org/anthology/W/W12/W12-5808.pdf &amp;quot;Automatic Pronunciation Evaluation And Mispronunciation Detection Using CMUSphinx&amp;quot;], Ronanki Srikanth, James Salsman&lt;br /&gt;
* http://www.speech.cs.cmu.edu/&lt;br /&gt;
* http://cmusphinx.sourceforge.net/wiki/tutorial&lt;br /&gt;
* [http://www.ijarcsse.com &amp;quot;HTK Based Telugu Speech Recognition&amp;quot;], P. Vijai Bhaskar, AVNIET ,Hyderabad, Prof. Dr. S. Rama Mohan Rao, A.Gopi &lt;br /&gt;
* [http://www.cs.cmu.edu/~araza/Automatic_Speech_Recognition_System_for_Urdu.PDF &amp;quot;Design and  Development of an Automatic Speech Recognition System for Urdu&amp;quot;], Agha Ali Raza,  M.Sc. Thesis, FAST‐National University of Computer and Emerging Sciences &lt;br /&gt;
* [http://www.ccis2k.org/iajit/PDF/vol.6,no.2/11IASRUCSS186.pdf &amp;quot;Investigation Arabic Speech Recognition Using CMU Sphinx System&amp;quot;], Hassan Satori1, 2, Hussein Hiyassat3, Mostafa Harti1, 2, and Noureddine Chenfour&lt;br /&gt;
* [http://www.try.idv.tw/static-resources/homework/pr/PR_Final_Report.pdf &amp;quot;Understanding the CMU Sphinx Speech Recognition System&amp;quot;], Chun-Feng Liao&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039; : &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Confirmed Mentor&#039;&#039;&#039; : &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;How to contact the mentor&#039;&#039;&#039;: &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;: &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;What the students will learn&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==SILPA Project Based==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===SILPA Project Improvements===&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Project&#039;&#039;&#039;: &lt;br /&gt;
&lt;br /&gt;
This is set of ideas needed to improve the existing SILPA infrastructure. We have decided following tasks as part of this project&lt;br /&gt;
&lt;br /&gt;
# Provide REST API to SILPA without disturbing existing JSONRPC API&lt;br /&gt;
# Improve the Transliteration module&lt;br /&gt;
# Integrate [https://github.com/Project-SILPA/flask-webfonts Flask Webfonts] extension with SILPA to provide Webfonts support.&lt;br /&gt;
&lt;br /&gt;
==== Provide REST like API for SILPA ====&lt;br /&gt;
&lt;br /&gt;
SILPA provides JSONRPC API currently which is also utilized by the templates of framework. JSONRPC is not well supported in all languages and results in [https://en.wikipedia.org/wiki/Not_invented_here NIH code]. So we would like to provide REST like HTTP based API&#039;s for SILPA and at the same time leave the current JSONRPC code untouched for backward compatibility reasons.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Objectives&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
* Develop module or use existing module to provide REST like API&#039;s&lt;br /&gt;
* API should support GET and POST. [http://www.w3.org/2001/tag/doc/whenToUseGet.html When to use GET?].&lt;br /&gt;
&lt;br /&gt;
Many people have doubt on how the API should look like. We can give twitter API (https://dev.twitter.com/docs/api) as example &lt;br /&gt;
Sample API calls :&lt;br /&gt;
-------------------------------------------------------------&lt;br /&gt;
    POST api.silpa.org.in/payyans/ASCII2Unicode&lt;br /&gt;
    Paramets: text, font&lt;br /&gt;
    Response: JSON data&lt;br /&gt;
-------------------------------------------------------------&lt;br /&gt;
    POST api.silpa.org.in/payyans/Unicode2ASCII&lt;br /&gt;
    Paramets: text, font&lt;br /&gt;
    Response: JSON data&lt;br /&gt;
-------------------------------------------------------------&lt;br /&gt;
Generic: &lt;br /&gt;
    GET/POST (http://api.silpa.org.in/module/function_name or http://silpa.org.in/api/module/function_name)&lt;br /&gt;
    Parameters: function parameters&lt;br /&gt;
    Response: JSON encoded return value from function&lt;br /&gt;
&lt;br /&gt;
====  Improve Transliteration module ====&lt;br /&gt;
&lt;br /&gt;
We have a Transliteration module which supports transliteration from any Indic language to other Indic language and also support to English to Indic and Indic to English transliteration. Also we support IPA and ISO15919 transliteration system. But the module isn&#039;t in perfect shape and has lot of bugs. With this idea we would like to improve the following parts&lt;br /&gt;
&lt;br /&gt;
# Improve cross indic language transliteration system. Currently only Malayalam and Kannada are working without any external language support, all other Indian languages are first transliterated to Malayalam and then transliterated to target Indic language. We want to remove this cycle from source -&amp;gt; Malayalam -&amp;gt; target.&lt;br /&gt;
# English to IPA transliteration is currently broken and this needs to be fixed. See [https://github.com/Project-SILPA/Transliteration/issues/3 IPA transliteration bug].&lt;br /&gt;
# Once the IPA transliteration issue above is fixed, imporve English to Indic transliteration system using IPA. Currently English to Indic transliteration system is done using CMU Sphinx dictionary which is having limited set of words which inturn limits the output of English to Indic transliteration system.&lt;br /&gt;
# Improve IS015919 to Indic transliteration system see [https://github.com/Project-SILPA/Transliteration/issues/4 IS015919 to Indic transliteration].&lt;br /&gt;
&lt;br /&gt;
CLDR has transliteration data for Indic languages. We can explore it and see the feasibility. For an intermediate representation of the scripts either IPA can be used or ISO 15919 standard can be used. All these must be supplemented with exception rules and special case handling to achieve more perfect result.&lt;br /&gt;
&lt;br /&gt;
==== Integrating flask-webfonts extension with SILPA ====&lt;br /&gt;
&lt;br /&gt;
SILPA used to have a Webfonts module for serving Indian language fonts as Webfonts for browsers. During GSOC 2013 it was separated as an extension to Flask framework which can be generally used with any Flask powered app. The current code can be found at [https://github.com/Project-SILPA/flask-webfonts]. The module is not fine tuned yet so below are the objectives.&lt;br /&gt;
&lt;br /&gt;
# The module is not yet fine tuned and using it will make other modules break. This needs to be fixed (Can be checked with &#039;webfonts&#039; branch of SILPA code on github.&lt;br /&gt;
# Write tests to check the functionalities.&lt;br /&gt;
# Adhere to Flask extension guidelines and submit the modules to Flask extensions directory.&lt;br /&gt;
# Write a tool which can take a directory containing fonts file or single font file and generate configuration file needed by the extension. (A possible such tool which is outdated can be found at [https://github.com/copyninja/fontinfo])&lt;br /&gt;
# Provide HTTP api&#039;s through flask extension which can expose the CSS for applications.&lt;br /&gt;
&lt;br /&gt;
For all tasks above we expect documentation, test cases from the students as deliverable. &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039; : Intermediate&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Confirmed Mentors&#039;&#039;&#039; : &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;How to contact the mentors&#039;&#039;&#039;: &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Mailing List&#039;&#039;&#039;: silpa-discuss@nongnu.org &amp;lt;preferred&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;: Python , Flask , Jinja , HTML, Javascript&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;What the students will learn&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
# Writing applications using Flask&lt;br /&gt;
# Various Transliteration system knolwedge&lt;br /&gt;
# Webfonts knowledge and writing extensions for Flask&lt;br /&gt;
# Test drive development.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Converting indic processing modules currently in SILPA into javascript modules library===&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Project&#039;&#039;&#039;: &lt;br /&gt;
&lt;br /&gt;
Port some of the silpa algorithms to node modules. Several modules, alogorithms in SILPA project is done in python now. But porting them to javascript helps developers. For example, cross language transliteration can be done javascript too if we port the algorithm and transliteration rules. Similarly the approximate search can be ported. A flexibile fuzzy search on the web pages will be possible if we have the algorithm in javascript.&lt;br /&gt;
&lt;br /&gt;
Proposed javascript module pattern is https://github.com/umdjs/umd&lt;br /&gt;
&lt;br /&gt;
Student proposals should have a list of alogorithms planning to port, planned demo applications, planned documentation details, and publishing details(Example: npm registry)&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039; : &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Confirmed Mentor&#039;&#039;&#039; : &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;How to contact the mentor&#039;&#039;&#039;: &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039; Mailing List&#039;&#039;&#039;: silpa-discuss@nongnu.org&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;: javascript, python&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;What the students will learn&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
===Integrate Varnam into Silpa===&lt;br /&gt;
&lt;br /&gt;
Create a Silpa module which hosts [http://www.varnamproject.com varnam]. This includes making a python port for libvarnam and making a Silpa module which uses the python port. &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039; : Medium&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Confirmed Mentor&#039;&#039;&#039; : &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;How to contact the mentor&#039;&#039;&#039;: &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039; Mailing List&#039;&#039;&#039;: silpa-discuss@nongnu.org&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;: C, Python&lt;br /&gt;
&lt;br /&gt;
==Varnam Based==&lt;br /&gt;
&lt;br /&gt;
Varnam is a cross-platform predictive transliterator for Indian languages. It works mostly like Google&#039;s transliterate, but shows key differences in the way word tokenization is done. It has a learning system built in which allows Varnam to make smart predictions. &lt;br /&gt;
&lt;br /&gt;
There are varnam clients available as [https://addons.mozilla.org/en-US/firefox/addon/varnam-transliteration-base/ Firefox]] &amp;amp; [https://chrome.google.com/webstore/detail/varnam-ime/abcfkeabpcanobhdmcmdabejaamephaf Chrome addon] and an [https://gitorious.org/varnamproject/libvarnam-ibus/source/d939adf50024013902c27310c03ef21a9210cdcb IBus engine].&lt;br /&gt;
&lt;br /&gt;
To try out Varnam, navigate to [http://varnamproject.com/editor[http://varnamproject.com/editor]]. Currently it support Hindi and Malayalam.&lt;br /&gt;
&lt;br /&gt;
* [http://www.varnamproject.com/docs/faq FAQ]&lt;br /&gt;
* [http://www.varnamproject.com/docs Documentation]&lt;br /&gt;
* [http://www.varnamproject.com/docs/contributing Contributors guide &amp;amp; ideas to work on]&lt;br /&gt;
&lt;br /&gt;
Apart from the following ideas, you can propose your own idea. &lt;br /&gt;
&lt;br /&gt;
===Programming language bindings &amp;amp; varnam-daemon===&lt;br /&gt;
&lt;br /&gt;
Varnam is written on C which makes interoperability with other languages easy. There are language bindings available for `NodeJs` and `Ruby`. Supporting Varnam in multiple languages allows projects to use varnam easily to enable Indian language input.&lt;br /&gt;
&lt;br /&gt;
To make using varnam from different languages easier, make a cross platform standalone process which uses `libvarnam` shared library and exposes a RPC API over network. This allows any programming language with a socket support can be used with libvarnam. This also makes language bindings fairly easy because they don&#039;t have to work with the native interoperability support. The protocol can be a simple text based protocol for all the commands that `libvarnam` supports. &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039; : Advanced&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Confirmed Mentor&#039;&#039;&#039; : &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;How to contact the mentor&#039;&#039;&#039;: &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;: C&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Improvements to the REST API===&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Project&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
This includes rewrite of the current implementation in `golang` and add support for WebSockets to improve the input experience. This also&lt;br /&gt;
includes making scripts that would ease embedding input on any webpage. All the changes done will go live on[1]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039; : Advanced&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Confirmed Mentor&#039;&#039;&#039; : &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;How to contact the mentor&#039;&#039;&#039;: &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;: Basic understanding of golang and C&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;What the students will learn&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
===Create an Android IME===&lt;br /&gt;
&lt;br /&gt;
Varnam will be ported as a Silpa module and it will be available on Android as part of the android SDK project which Silpa has proposed. This idea is merged to the [http://wiki.smc.org.in/SoC/2014/Project_ideas#Android_SDK_for_Silpa Silpa] project ideas.&lt;br /&gt;
&lt;br /&gt;
===Enable varnam&#039;s suggestions system to be used from Inscript or any other input system===&lt;br /&gt;
&lt;br /&gt;
Varnam has knowledge about lot of words. This idea proposes a method to use these words and provide suggestions for other input systems. Basically, in Varnam, the API call will be something like,&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;&amp;lt;pre&amp;gt;&lt;br /&gt;
varnam_get_suggestions (handle, &amp;quot;भारत&amp;quot;);&lt;br /&gt;
&amp;lt;/pre&amp;gt;&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This will fetch all the suggestions which has the given prefix. &lt;br /&gt;
&lt;br /&gt;
`varnam_get_suggestions` needs to keep track of the previous words and use [http://en.wikipedia.org/wiki/N-gram n-gram] based dataset to filter the results. This should also learn the words back into the word corpus that varnam is using. Filtering suggestions won&#039;t be just a prefix search, but it will have knowledge about how text can be written in the target language and provide smart filtering. Searching in a large corpus and providing real-time suggestions makes this a challenging task. &lt;br /&gt;
&lt;br /&gt;
Once this is implemented in `libvarnam`, it can be used in the ibus-engine.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039; : Advanced&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;:  C, Unicode &amp;amp; encodings&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Confirmed Mentor&#039;&#039;&#039; : &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;How to contact the mentor&#039;&#039;&#039;: &lt;br /&gt;
&lt;br /&gt;
=== Word corpus synchronization ===&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Project&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
Create a cross-platform synchronization tool which can upload/download the word corpus from offline IMEs like varnam-ibus[2]. This helps to build the online words corpus easily.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039; : Medium&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Confirmed Mentor&#039;&#039;&#039; : &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;How to contact the mentor&#039;&#039;&#039;: &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;:  Knowledge in C/golang&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;What the students will learn&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [1]: http://www.varnamproject.com&lt;br /&gt;
* [2]: https://gitorious.org/varnamproject/libvarnam-ibus/&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Grandham ==&lt;br /&gt;
&lt;br /&gt;
=== Adding MARC21 import/export feature in Grandham ===&lt;br /&gt;
&lt;br /&gt;
We need a feature in Grandham to import and parse data from MARC21 documents. We should also be able to export existing data in MARC21.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039; : High&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Confirmed Mentor&#039;&#039;&#039; :&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;How to contact the mentor&#039;&#039;&#039;: &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;: Knowledge in Ruby/Ruby on Rails&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;What the students will learn&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [1]: http://dev.grandham.org&lt;br /&gt;
* [2]: https://github.com/smc/grandham&lt;/div&gt;</summary>
		<author><name>Nandaja</name></author>
	</entry>
	<entry>
		<id>https://wiki.smc.org.in/index.php?title=GSoC/2015/Project_ideas&amp;diff=10698</id>
		<title>GSoC/2015/Project ideas</title>
		<link rel="alternate" type="text/html" href="https://wiki.smc.org.in/index.php?title=GSoC/2015/Project_ideas&amp;diff=10698"/>
		<updated>2015-02-16T04:50:01Z</updated>

		<summary type="html">&lt;p&gt;Nandaja: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;center&amp;gt; &lt;br /&gt;
&amp;lt;font color=&amp;quot;green&amp;quot;&amp;gt; &amp;lt;big&amp;gt;&#039;&#039;&#039;Apart from the following ideas , you can propose your own ideas&#039;&#039;&#039;&amp;lt;/big&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Potential Mentors=&lt;br /&gt;
# Santhosh Thottingal (&#039;&#039;&#039;santhosh&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Baiju M (&#039;&#039;&#039;baijum&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Praveen A (&#039;&#039;&#039;j4v4m4n&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Rajeesh K Nambiar (&#039;&#039;&#039;rajeesh&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Anivar Aravind (&#039;&#039;&#039;anivar&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Vasudev Kammath (&#039;&#039;&#039;copyninja&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Jishnu Mohan (&#039;&#039;&#039;jishnu7&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Hrishikesh K.B (&#039;&#039;&#039;stultus&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Nandaja Varma (&#039;&#039;&#039;gem&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Navaneeth (&#039;&#039;&#039;nkn__&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Ershad K (&#039;&#039;&#039;ershad&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Nishan Naseer (&#039;&#039;&#039;nishan&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
&lt;br /&gt;
=Ideas for Google Summer of Code 2015=&lt;br /&gt;
* Please Read the [http://wiki.smc.org.in/GSoC/2015#FAQ FAQ]&lt;br /&gt;
* If you want to propose an idea, please do it in [http://lists.smc.org.in/listinfo.cgi/student-projects-smc.org.in student projects mailing list]&lt;br /&gt;
&lt;br /&gt;
=Projects with confirmed mentors=&lt;br /&gt;
&lt;br /&gt;
== Varnam based ==&lt;br /&gt;
&lt;br /&gt;
=== Varnam Android Keyboard ===&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Project&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
Add support for varnamproject into android and have a native keyboard like indic keyboard. It can be integrated into Indic keyboard or have it as a separate keyboard.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039;: Advanced&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Confirmed Mentor&#039;&#039;&#039;: Navaneeth K. N.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;How to contact the mentor&#039;&#039;&#039;: IRC - nkn__ on #smc-project on Freenode &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;: &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;What the student will learn&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
=Projects with unconfirmed mentors=&lt;br /&gt;
== A spell checker for Indic language that understands inflections ==&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Project&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
SILPA project has a spellchecker written using python with a not so simple algorithm. But still it is not capable of handling inflection and agglutination occurring in Indian languages especially south Indian languages. The dictionary we have for Malayalam spellchecker have about 150000 words. Of course we can expand the dictionary, but that doesn&#039;t have much value since words can be formed in Malayalam or Tamil etc by joining multiple words. In addition to that, words get inflected based on grammar forms(sandhi), plural, gender etc. Hunspell has a system to handle this, but so far nobody succeeded in getting it working for multi level suffix stripping as required for Malayalam. Some times a Malayalam word can be formed by more than 5 words joining together. We will need a word splitting logic or a table taking care of all patterns. The project is to attempt solving this with hunspell. If that is not feasible(hunspell upstream is not active), develop an algorithm and implement it.&lt;br /&gt;
&lt;br /&gt;
Recently Tamil attempted developing a spellchecker using Hunspell with multi level suffix stripping. You can see the result here https://github.com/thamizha/solthiruthi. &lt;br /&gt;
Our attempt should be first to use Hunspell to achieve spellchecking with agglutination and inflection. Probably it will require lot of scripting to generate suffix patterns, we can ask help from existing language communities too. If Hunspell has limitation with multi level suffxes- sometimes Indian languages require more than 5 levels of suffix stripping, we need to document it(bug and documentation) and try to attempt python based solution on top of SILPA framework.&lt;br /&gt;
&lt;br /&gt;
The project is not about coding an existing algorithm, but to develop and implement an algorithm.&lt;br /&gt;
&lt;br /&gt;
Hunspell&#039;s limitations can be understood from [[User:%E0%B4%B8%E0%B4%A8%E0%B5%8D%E0%B4%A4%E0%B5%8B%E0%B4%B7%E0%B5%8D/HunspellConversation| this conversation]] we had with the author of Hunspell in 2008&lt;br /&gt;
&lt;br /&gt;
Homework to do before submitting applications:&lt;br /&gt;
# Use Hunspell in any Indian language like Malayalam for spell correction in editors or word processors and understand the limitations&lt;br /&gt;
# Study the nature of inflection and agglutination in Indian languages, read existing documents on this(ask for documents too) and note down your observations&lt;br /&gt;
# Study Hunspell and other spellcheckers to see how this problem is addressed&lt;br /&gt;
# Understand how a spell checker works. How to write a spellchecker from scratch?&lt;br /&gt;
# Come up with a plan about addressing the issue.&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;[https://savannah.nongnu.org/task/index.php?12558 Savannah Task]&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039;: Advanced&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Confirmed Mentor&#039;&#039;&#039;: &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;How to contact the mentor&#039;&#039;&#039;: &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;: Average level understanding of grammar system of at least one Indian language and complete the homework as listed above.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;What the student will learn&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
==Indic rendering support in ConTeXt==&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Project&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
ConTeXt is another TeX macro system similar to LaTeX but much more suitable for design. To find more information about ConTeXt, see the wiki http://wiki.contextgarden.net/Main_Page. ConTeXt MKII  have Indic language rendering support using XeTeX. but MKII is deprecated, and the new MKIV backend doesn&#039;t support Indic rendering yet. The aim of this project is to add support to Inidic rendering to ConTeXt MKIV. XeTeX is using Harfbuzz to do correct Indic rendering.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;More Details&#039;&#039;&#039;: A partially working patch by Rajeesh for MKIV lua code is available. ConTeXt mkii (deprecated) can work with XeTeX backend for Indic rendering. Here is a sample file:&lt;br /&gt;
 \usemodule[simplefonts]&lt;br /&gt;
 \definefontfeature[malayalam][script=mlym]&lt;br /&gt;
 \setmainfont[Rachana][features=malayalam]&lt;br /&gt;
 \starttext&lt;br /&gt;
 മലയാളം \TeX ഉപയോഗിച്ച് ടൈപ്പ്സെറ്റ് ചെയ്തത്&lt;br /&gt;
 \stoptext&lt;br /&gt;
Generate the output using command&lt;br /&gt;
 texexec --xetex &amp;lt;file.tex&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;[https://savannah.nongnu.org/task/index.php?12559 Savannah Task]&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039; : Advanced&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Confirmed Mentor&#039;&#039;&#039; : &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;How to contact the mentor&#039;&#039;&#039;: &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;: Understanding of the TeX system, experience in either LaTeX or ConTeXt and basic understanding of Indic language rendering. MKIV uses Lua, familiarity with Lua, opentype specifications or Harfbuzz will be added advantage.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;What the students will learn&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
==Language model and Acoustic model for Malayalam language for speech recognition system in CMU Sphinx==&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Project&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
CMU Sphinx is a large vocabulary, speaker independent speech recognition codebase and suite of tools, which can be used to develop speech recognition system in any language. To develop an automatic speech recognition system in a language, acoustic model and language model has to framed for that particular language.  Acoustic models characterize how sound changes over time. It captures the characteristics of basic recognition units. The language model describes the likelihood, probability, or penalty taken when a sequence or collection of words is seen. It attempts to convey behavior of the language and tries to predict the occurrence of specific word sequences possible in the language. Once these two models are developed, it will be useful to every one doing research in speech processing. For Indian languages Hindi, Tamil, Telugu and Marati, ASR systems have been developed using sphinx engine. In this project work is aimed at developing acoustic model and language model for Malayalam.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Background Reading&#039;&#039;&#039;&lt;br /&gt;
* [http://www.cs.cmu.edu/~gopalakr/publications/spdatabases_specom05.pdf &#039;Development of Indian Language Speech Databases for Large Vocabulary Speech Recognition Systems&#039;], Gopalakrishna  Anumanchipalli, Rahul Chitturi, Sachin Joshi, Rohit Kumar, Satinder Pal Singh, R.N.V. Sitaram, S P Kishore&lt;br /&gt;
* [http://www.aclweb.org/anthology/W/W12/W12-5808.pdf &amp;quot;Automatic Pronunciation Evaluation And Mispronunciation Detection Using CMUSphinx&amp;quot;], Ronanki Srikanth, James Salsman&lt;br /&gt;
* http://www.speech.cs.cmu.edu/&lt;br /&gt;
* http://cmusphinx.sourceforge.net/wiki/tutorial&lt;br /&gt;
* [http://www.ijarcsse.com &amp;quot;HTK Based Telugu Speech Recognition&amp;quot;], P. Vijai Bhaskar, AVNIET ,Hyderabad, Prof. Dr. S. Rama Mohan Rao, A.Gopi &lt;br /&gt;
* [http://www.cs.cmu.edu/~araza/Automatic_Speech_Recognition_System_for_Urdu.PDF &amp;quot;Design and  Development of an Automatic Speech Recognition System for Urdu&amp;quot;], Agha Ali Raza,  M.Sc. Thesis, FAST‐National University of Computer and Emerging Sciences &lt;br /&gt;
* [http://www.ccis2k.org/iajit/PDF/vol.6,no.2/11IASRUCSS186.pdf &amp;quot;Investigation Arabic Speech Recognition Using CMU Sphinx System&amp;quot;], Hassan Satori1, 2, Hussein Hiyassat3, Mostafa Harti1, 2, and Noureddine Chenfour&lt;br /&gt;
* [http://www.try.idv.tw/static-resources/homework/pr/PR_Final_Report.pdf &amp;quot;Understanding the CMU Sphinx Speech Recognition System&amp;quot;], Chun-Feng Liao&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039; : &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Confirmed Mentor&#039;&#039;&#039; : &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;How to contact the mentor&#039;&#039;&#039;: &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;: &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;What the students will learn&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==SILPA Project Based==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===SILPA Project Improvements===&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Project&#039;&#039;&#039;: &lt;br /&gt;
&lt;br /&gt;
This is set of ideas needed to improve the existing SILPA infrastructure. We have decided following tasks as part of this project&lt;br /&gt;
&lt;br /&gt;
# Provide REST API to SILPA without disturbing existing JSONRPC API&lt;br /&gt;
# Improve the Transliteration module&lt;br /&gt;
# Integrate [https://github.com/Project-SILPA/flask-webfonts Flask Webfonts] extension with SILPA to provide Webfonts support.&lt;br /&gt;
&lt;br /&gt;
==== Provide REST like API for SILPA ====&lt;br /&gt;
&lt;br /&gt;
SILPA provides JSONRPC API currently which is also utilized by the templates of framework. JSONRPC is not well supported in all languages and results in [https://en.wikipedia.org/wiki/Not_invented_here NIH code]. So we would like to provide REST like HTTP based API&#039;s for SILPA and at the same time leave the current JSONRPC code untouched for backward compatibility reasons.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Objectives&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
* Develop module or use existing module to provide REST like API&#039;s&lt;br /&gt;
* API should support GET and POST. [http://www.w3.org/2001/tag/doc/whenToUseGet.html When to use GET?].&lt;br /&gt;
&lt;br /&gt;
Many people have doubt on how the API should look like. We can give twitter API (https://dev.twitter.com/docs/api) as example &lt;br /&gt;
Sample API calls :&lt;br /&gt;
-------------------------------------------------------------&lt;br /&gt;
    POST api.silpa.org.in/payyans/ASCII2Unicode&lt;br /&gt;
    Paramets: text, font&lt;br /&gt;
    Response: JSON data&lt;br /&gt;
-------------------------------------------------------------&lt;br /&gt;
    POST api.silpa.org.in/payyans/Unicode2ASCII&lt;br /&gt;
    Paramets: text, font&lt;br /&gt;
    Response: JSON data&lt;br /&gt;
-------------------------------------------------------------&lt;br /&gt;
Generic: &lt;br /&gt;
    GET/POST (http://api.silpa.org.in/module/function_name or http://silpa.org.in/api/module/function_name)&lt;br /&gt;
    Parameters: function parameters&lt;br /&gt;
    Response: JSON encoded return value from function&lt;br /&gt;
&lt;br /&gt;
====  Improve Transliteration module ====&lt;br /&gt;
&lt;br /&gt;
We have a Transliteration module which supports transliteration from any Indic language to other Indic language and also support to English to Indic and Indic to English transliteration. Also we support IPA and ISO15919 transliteration system. But the module isn&#039;t in perfect shape and has lot of bugs. With this idea we would like to improve the following parts&lt;br /&gt;
&lt;br /&gt;
# Improve cross indic language transliteration system. Currently only Malayalam and Kannada are working without any external language support, all other Indian languages are first transliterated to Malayalam and then transliterated to target Indic language. We want to remove this cycle from source -&amp;gt; Malayalam -&amp;gt; target.&lt;br /&gt;
# English to IPA transliteration is currently broken and this needs to be fixed. See [https://github.com/Project-SILPA/Transliteration/issues/3 IPA transliteration bug].&lt;br /&gt;
# Once the IPA transliteration issue above is fixed, imporve English to Indic transliteration system using IPA. Currently English to Indic transliteration system is done using CMU Sphinx dictionary which is having limited set of words which inturn limits the output of English to Indic transliteration system.&lt;br /&gt;
# Improve IS015919 to Indic transliteration system see [https://github.com/Project-SILPA/Transliteration/issues/4 IS015919 to Indic transliteration].&lt;br /&gt;
&lt;br /&gt;
CLDR has transliteration data for Indic languages. We can explore it and see the feasibility. For an intermediate representation of the scripts either IPA can be used or ISO 15919 standard can be used. All these must be supplemented with exception rules and special case handling to achieve more perfect result.&lt;br /&gt;
&lt;br /&gt;
==== Integrating flask-webfonts extension with SILPA ====&lt;br /&gt;
&lt;br /&gt;
SILPA used to have a Webfonts module for serving Indian language fonts as Webfonts for browsers. During GSOC 2013 it was separated as an extension to Flask framework which can be generally used with any Flask powered app. The current code can be found at [https://github.com/Project-SILPA/flask-webfonts]. The module is not fine tuned yet so below are the objectives.&lt;br /&gt;
&lt;br /&gt;
# The module is not yet fine tuned and using it will make other modules break. This needs to be fixed (Can be checked with &#039;webfonts&#039; branch of SILPA code on github.&lt;br /&gt;
# Write tests to check the functionalities.&lt;br /&gt;
# Adhere to Flask extension guidelines and submit the modules to Flask extensions directory.&lt;br /&gt;
# Write a tool which can take a directory containing fonts file or single font file and generate configuration file needed by the extension. (A possible such tool which is outdated can be found at [https://github.com/copyninja/fontinfo])&lt;br /&gt;
# Provide HTTP api&#039;s through flask extension which can expose the CSS for applications.&lt;br /&gt;
&lt;br /&gt;
For all tasks above we expect documentation, test cases from the students as deliverable. &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039; : Intermediate&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Confirmed Mentors&#039;&#039;&#039; : &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;How to contact the mentors&#039;&#039;&#039;: &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Mailing List&#039;&#039;&#039;: silpa-discuss@nongnu.org &amp;lt;preferred&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;: Python , Flask , Jinja , HTML, Javascript&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;What the students will learn&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
# Writing applications using Flask&lt;br /&gt;
# Various Transliteration system knolwedge&lt;br /&gt;
# Webfonts knowledge and writing extensions for Flask&lt;br /&gt;
# Test drive development.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Converting indic processing modules currently in SILPA into javascript modules library===&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Project&#039;&#039;&#039;: &lt;br /&gt;
&lt;br /&gt;
Port some of the silpa algorithms to node modules. Several modules, alogorithms in SILPA project is done in python now. But porting them to javascript helps developers. For example, cross language transliteration can be done javascript too if we port the algorithm and transliteration rules. Similarly the approximate search can be ported. A flexibile fuzzy search on the web pages will be possible if we have the algorithm in javascript.&lt;br /&gt;
&lt;br /&gt;
Proposed javascript module pattern is https://github.com/umdjs/umd&lt;br /&gt;
&lt;br /&gt;
Student proposals should have a list of alogorithms planning to port, planned demo applications, planned documentation details, and publishing details(Example: npm registry)&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039; : &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Confirmed Mentor&#039;&#039;&#039; : &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;How to contact the mentor&#039;&#039;&#039;: &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039; Mailing List&#039;&#039;&#039;: silpa-discuss@nongnu.org&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;: javascript, python&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;What the students will learn&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
===Integrate Varnam into Silpa===&lt;br /&gt;
&lt;br /&gt;
Create a Silpa module which hosts [http://www.varnamproject.com varnam]. This includes making a python port for libvarnam and making a Silpa module which uses the python port. &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039; : Medium&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Confirmed Mentor&#039;&#039;&#039; : &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;How to contact the mentor&#039;&#039;&#039;: &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039; Mailing List&#039;&#039;&#039;: silpa-discuss@nongnu.org&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;: C, Python&lt;br /&gt;
&lt;br /&gt;
==Varnam Based==&lt;br /&gt;
&lt;br /&gt;
Varnam is a cross-platform predictive transliterator for Indian languages. It works mostly like Google&#039;s transliterate, but shows key differences in the way word tokenization is done. It has a learning system built in which allows Varnam to make smart predictions. &lt;br /&gt;
&lt;br /&gt;
There are varnam clients available as [https://addons.mozilla.org/en-US/firefox/addon/varnam-transliteration-base/ Firefox]] &amp;amp; [https://chrome.google.com/webstore/detail/varnam-ime/abcfkeabpcanobhdmcmdabejaamephaf Chrome addon] and an [https://gitorious.org/varnamproject/libvarnam-ibus/source/d939adf50024013902c27310c03ef21a9210cdcb IBus engine].&lt;br /&gt;
&lt;br /&gt;
To try out Varnam, navigate to [http://varnamproject.com/editor[http://varnamproject.com/editor]]. Currently it support Hindi and Malayalam.&lt;br /&gt;
&lt;br /&gt;
* [http://www.varnamproject.com/docs/faq FAQ]&lt;br /&gt;
* [http://www.varnamproject.com/docs Documentation]&lt;br /&gt;
* [http://www.varnamproject.com/docs/contributing Contributors guide &amp;amp; ideas to work on]&lt;br /&gt;
&lt;br /&gt;
Apart from the following ideas, you can propose your own idea. &lt;br /&gt;
&lt;br /&gt;
===Programming language bindings &amp;amp; varnam-daemon===&lt;br /&gt;
&lt;br /&gt;
Varnam is written on C which makes interoperability with other languages easy. There are language bindings available for `NodeJs` and `Ruby`. Supporting Varnam in multiple languages allows projects to use varnam easily to enable Indian language input.&lt;br /&gt;
&lt;br /&gt;
To make using varnam from different languages easier, make a cross platform standalone process which uses `libvarnam` shared library and exposes a RPC API over network. This allows any programming language with a socket support can be used with libvarnam. This also makes language bindings fairly easy because they don&#039;t have to work with the native interoperability support. The protocol can be a simple text based protocol for all the commands that `libvarnam` supports. &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039; : Advanced&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Confirmed Mentor&#039;&#039;&#039; : &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;How to contact the mentor&#039;&#039;&#039;: &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;: C&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Improvements to the REST API===&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Project&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
This includes rewrite of the current implementation in `golang` and add support for WebSockets to improve the input experience. This also&lt;br /&gt;
includes making scripts that would ease embedding input on any webpage. All the changes done will go live on[1]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039; : Advanced&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Confirmed Mentor&#039;&#039;&#039; : &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;How to contact the mentor&#039;&#039;&#039;: &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;: Basic understanding of golang and C&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;What the students will learn&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
===Create an Android IME===&lt;br /&gt;
&lt;br /&gt;
Varnam will be ported as a Silpa module and it will be available on Android as part of the android SDK project which Silpa has proposed. This idea is merged to the [http://wiki.smc.org.in/SoC/2014/Project_ideas#Android_SDK_for_Silpa Silpa] project ideas.&lt;br /&gt;
&lt;br /&gt;
===Enable varnam&#039;s suggestions system to be used from Inscript or any other input system===&lt;br /&gt;
&lt;br /&gt;
Varnam has knowledge about lot of words. This idea proposes a method to use these words and provide suggestions for other input systems. Basically, in Varnam, the API call will be something like,&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;&amp;lt;pre&amp;gt;&lt;br /&gt;
varnam_get_suggestions (handle, &amp;quot;भारत&amp;quot;);&lt;br /&gt;
&amp;lt;/pre&amp;gt;&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This will fetch all the suggestions which has the given prefix. &lt;br /&gt;
&lt;br /&gt;
`varnam_get_suggestions` needs to keep track of the previous words and use [http://en.wikipedia.org/wiki/N-gram n-gram] based dataset to filter the results. This should also learn the words back into the word corpus that varnam is using. Filtering suggestions won&#039;t be just a prefix search, but it will have knowledge about how text can be written in the target language and provide smart filtering. Searching in a large corpus and providing real-time suggestions makes this a challenging task. &lt;br /&gt;
&lt;br /&gt;
Once this is implemented in `libvarnam`, it can be used in the ibus-engine.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039; : Advanced&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;:  C, Unicode &amp;amp; encodings&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Confirmed Mentor&#039;&#039;&#039; : &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;How to contact the mentor&#039;&#039;&#039;: &lt;br /&gt;
&lt;br /&gt;
=== Word corpus synchronization ===&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Project&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
Create a cross-platform synchronization tool which can upload/download the word corpus from offline IMEs like varnam-ibus[2]. This helps to build the online words corpus easily.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039; : Medium&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Confirmed Mentor&#039;&#039;&#039; : &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;How to contact the mentor&#039;&#039;&#039;: &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;:  Knowledge in C/golang&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;What the students will learn&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [1]: http://www.varnamproject.com&lt;br /&gt;
* [2]: https://gitorious.org/varnamproject/libvarnam-ibus/&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Grandham ==&lt;br /&gt;
&lt;br /&gt;
=== Adding MARC21 import/export feature in Grandham ===&lt;br /&gt;
&lt;br /&gt;
We need a feature in Grandham to import and parse data from MARC21 documents. We should also be able to export existing data in MARC21.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039; : High&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Confirmed Mentor&#039;&#039;&#039; :&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;How to contact the mentor&#039;&#039;&#039;: &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;: Knowledge in Ruby/Ruby on Rails&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;What the students will learn&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [1]: http://dev.grandham.org&lt;br /&gt;
* [2]: https://github.com/smc/grandham&lt;/div&gt;</summary>
		<author><name>Nandaja</name></author>
	</entry>
	<entry>
		<id>https://wiki.smc.org.in/index.php?title=GSoC/2015&amp;diff=10696</id>
		<title>GSoC/2015</title>
		<link rel="alternate" type="text/html" href="https://wiki.smc.org.in/index.php?title=GSoC/2015&amp;diff=10696"/>
		<updated>2015-02-13T09:17:37Z</updated>

		<summary type="html">&lt;p&gt;Nandaja: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__NOTOC__&lt;br /&gt;
&lt;br /&gt;
[[File:Banner-gsoc2015.png]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;border-radius: 50px; width: 92%; background-color: #4AA02C; float: left; display: block; margin: 1.5%; border: 1px solid #C4C295; text-align: center; padding: 2.5%; padding-top: 0px&amp;quot;&amp;gt; &amp;lt;h2&amp;gt;[[GSoC/2015/Project_ideas |&#039;&#039;&#039;Project ideas&#039;&#039;&#039;]]&lt;br /&gt;
&amp;lt;/h2&amp;gt;[[SoC/2015/application-template|&#039;&#039;&#039;Student application Template&#039;&#039;&#039;]]&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Status Updates==&lt;br /&gt;
* &lt;br /&gt;
&lt;br /&gt;
==FAQ==&lt;br /&gt;
* &#039;&#039;&#039;Is it a requirement to know Malayalam to participate in GSoC as part of SMC?&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
It is not a requirement to know Malayalam to participated in GSoc&lt;br /&gt;
as part of SMC. But it will be good if you are good in some Indian&lt;br /&gt;
language along with listed technologies.&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;I have a project idea that is not listed in SMC project ideas. Can I propose new projects?&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Of course. You are encouraged to propose any fresh project ideas with as much as details you can give. If the idea matches with the objectives of SMC, we will be happy to evaluate it for GSOC. SMC is umbrella project for Project Silpa - an Indian language computing project. So you are welcome to submit proposals for other languages too. Be aware that availability of mentors for Non-Malayalam languages is limited.&lt;br /&gt;
&lt;br /&gt;
==Links==&lt;br /&gt;
&lt;br /&gt;
*&lt;/div&gt;</summary>
		<author><name>Nandaja</name></author>
	</entry>
	<entry>
		<id>https://wiki.smc.org.in/index.php?title=GSoC/2015/application-template&amp;diff=10694</id>
		<title>GSoC/2015/application-template</title>
		<link rel="alternate" type="text/html" href="https://wiki.smc.org.in/index.php?title=GSoC/2015/application-template&amp;diff=10694"/>
		<updated>2015-02-06T07:23:59Z</updated>

		<summary type="html">&lt;p&gt;Nandaja: Created page with &amp;quot;==GSoC 2015 Application Template==  ===Things to do===   * Join the `Student Projects mailing list http://lists.smc.org.in/listinfo.cgi/student-projects-smc.org.inn. Introduce...&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==GSoC 2015 Application Template==&lt;br /&gt;
&lt;br /&gt;
===Things to do===&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* Join the `Student Projects mailing list http://lists.smc.org.in/listinfo.cgi/student-projects-smc.org.inn. Introduce yourself over there so that the community can get to know you. Feel free to discuss your project ideas as well as to ask for any help that you may require.&lt;br /&gt;
&lt;br /&gt;
* Prepare a detailed proposal regarding your project and submit it on the Google Summer of Code website (http://www.google-melange.com). You have to update the application in the Project wiki also(http://wiki.smc.org.in/)&lt;br /&gt;
&lt;br /&gt;
* If you need help with anything, ask on the `Student projects list http://lists.smc.org.in/listinfo.cgi/student-projects-smc.org.in or our IRC channel (`#smc-project on Freenode http://webchat.freenode.net/?randomnick=0&amp;amp;channels=smc-project) (don&#039;t be afraid if you don&#039;t know git for example. We&#039;ll teach you everything that is needed, the only required thing from you is enthusiasm and willingness to learn new things,  but- &#039;&#039;&#039;don&#039;t expect spoon feeding from us&#039;&#039;&#039;)&lt;br /&gt;
&lt;br /&gt;
===Writing your proposal===&lt;br /&gt;
&lt;br /&gt;
To be considered, a GSoC application must have a written proposal submitted to&lt;br /&gt;
http://www.google-melange.com/.&lt;br /&gt;
&lt;br /&gt;
Start a wiki page to work on your proposal at&lt;br /&gt;
http://wiki.smc.org.in/. Every applicant should create an account in SMC wiki. If you add your proposal under your userpage, we will help you edit it and provide feedback (though understand that we will not help you write it)&lt;br /&gt;
&lt;br /&gt;
Note that your final application must be submitted at http://www.google-melange.com/, so do not worry about the formatting of your application on the wiki, as you will have to reformat it there.You should not be too concerned with the formatting in Melange either, as we understand that the text editor there is not the best for making things look nice formatting-wise.We are more concerned with the content of your application, and that it is readable.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;The application template is given below&#039;&#039;&#039;&lt;br /&gt;
-----&lt;br /&gt;
&lt;br /&gt;
====Personal information====&lt;br /&gt;
* Email Address:&lt;br /&gt;
* Telephone: &#039;&#039;&#039;No Need to Provide Phone Number in Wiki since it is going to be public&#039;&#039;&#039;&lt;br /&gt;
* Blog URL:&lt;br /&gt;
* Freenode IRC Nick:&lt;br /&gt;
* Your university and current education: &lt;br /&gt;
* Why do you want to work with the Swathanthra Malayalam Computing?&lt;br /&gt;
* Do you have any past involvement with the Swathanthra Malayalam Computing or another open source project as a contributor?&lt;br /&gt;
* Did you participate with the past GSoC programs, if so which years, which organizations?&lt;br /&gt;
* Do you have other obligations between May and August ? Please note that  we expect the Summer of Code to be a full time, 40 hour a week  commitment&lt;br /&gt;
* Will you continue contributing/ supporting the Swathanthra Malayalam Computing after the GSoC 2014 program, if yes, which area(s), you are interested in?&lt;br /&gt;
*  Why should we choose you over other applicants?&lt;br /&gt;
&lt;br /&gt;
====Proposal Description====&lt;br /&gt;
Please describe your proposal in detail.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;NOTE&#039;&#039;&#039;:  Please do not verbatim copy text from the ideas page, or from other people&#039;s&lt;br /&gt;
discussions about your project, but rewrite it in your own words.If you&lt;br /&gt;
include any significant text or code from another source in your&lt;br /&gt;
application, it must be accompanied with a proper citation. All papers or&lt;br /&gt;
references that you use or plan to use must also be cited. Put all this in&lt;br /&gt;
a &amp;quot;References&amp;quot; section at the bottom of your application.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Include&#039;&#039;&#039;:&lt;br /&gt;
*  An overview of your proposal&lt;br /&gt;
*  The need you believe it fulfills&lt;br /&gt;
*  Any relevant experience you have&lt;br /&gt;
*  How you intend to implement your proposal&lt;br /&gt;
*  A rough timeline for your progress with phases &lt;br /&gt;
*  Any other details you feel we should consider&lt;br /&gt;
*  Tell us about something you have created.&lt;br /&gt;
*  Have you communicated with a potential mentor? If so, who?&lt;br /&gt;
*  SMC Wiki link of your proposal&lt;br /&gt;
&lt;br /&gt;
-----&lt;br /&gt;
&lt;br /&gt;
====Other requirements====&lt;br /&gt;
&#039;&#039;&#039; Make sure you have completed following task to get qualified, failing to complete any task will results in rejecting your application.&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
* You have subscribed with the [http://lists.smc.org.in/listinfo.cgi/student-projects-smc.org.in Student project] mailinglist and respective project mailing list (eg.  [http://lists.nongnu.org/mailman/listinfo/silpa-discuss SILPA mailinglist] for SILPA projects)&lt;br /&gt;
* Your application is available on [http://wiki.smc.org.in/ SMC Project wiki] under your userspace&lt;br /&gt;
* Your application is submitted to google-melange&lt;br /&gt;
&lt;br /&gt;
In addition to the written proposal, we require every GSoC applicant to do this:&lt;br /&gt;
* Do create an account on the SMC wiki and start a wiki page for your proposal(Under your userpage). Keep it updated.&lt;br /&gt;
* We expect every GSoC participant to maintain a blog (If not, already) and post about their project&#039;s status, development, etc.&lt;br /&gt;
* Update the project status in the mailing list regularly with a meaningfull subjectline (don&#039;t use something like &#039;GSoC Project Update &#039;)&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Useful Links&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
* [http://www.google-melange.com/gsoc/document/show/gsoc_program/google/gsoc2015/help_page# GSoC FAQ]&lt;br /&gt;
* [http://www.google-melange.com/gsoc/events/google/gsoc2015 Timeline]&lt;br /&gt;
* [http://en.flossmanuals.net/GSoCstudentguide/ GSoC Student manual]&lt;br /&gt;
* [http://en.flossmanuals.net/melange/students-students-application-phase/ Melange manual - Student application Phase ]&lt;/div&gt;</summary>
		<author><name>Nandaja</name></author>
	</entry>
	<entry>
		<id>https://wiki.smc.org.in/index.php?title=GSoC/2015/Project_ideas&amp;diff=10693</id>
		<title>GSoC/2015/Project ideas</title>
		<link rel="alternate" type="text/html" href="https://wiki.smc.org.in/index.php?title=GSoC/2015/Project_ideas&amp;diff=10693"/>
		<updated>2015-02-06T07:20:49Z</updated>

		<summary type="html">&lt;p&gt;Nandaja: /* Indic rendering support in ConTeXt */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;center&amp;gt; &lt;br /&gt;
&amp;lt;font color=&amp;quot;green&amp;quot;&amp;gt; &amp;lt;big&amp;gt;&#039;&#039;&#039;Apart from the following ideas , you can propose your own ideas&#039;&#039;&#039;&amp;lt;/big&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Potential Mentors=&lt;br /&gt;
# Santhosh Thottingal (&#039;&#039;&#039;santhosh&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Baiju M (&#039;&#039;&#039;baijum&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Praveen A (&#039;&#039;&#039;j4v4m4n&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Rajeesh K Nambiar (&#039;&#039;&#039;rajeeshknambiar&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Anivar Aravind (&#039;&#039;&#039;anivar&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Vasudev Kammath (&#039;&#039;&#039;copyninja&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Jishnu Mohan (&#039;&#039;&#039;jishnu7&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Hrishikesh K.B (&#039;&#039;&#039;stultus&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Nandaja Varma (&#039;&#039;&#039;gem&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Navaneeth (&#039;&#039;&#039;nkn__&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Ershad K (&#039;&#039;&#039;ershad&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Nishan Naseer (&#039;&#039;&#039;nishan&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=Ideas for Google Summer of Code 2015=&lt;br /&gt;
* Please Read the [http://wiki.smc.org.in/GSoC/2015#FAQ FAQ]&lt;br /&gt;
* If you want to propose an idea, please do it in [http://lists.smc.org.in/listinfo.cgi/student-projects-smc.org.in student projects mailing list]&lt;br /&gt;
&lt;br /&gt;
=Projects with confirmed mentors=&lt;br /&gt;
&lt;br /&gt;
=Projects with unconfirmed mentors=&lt;br /&gt;
== A spell checker for Indic language that understands inflections ==&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Project&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
SILPA project has a spellchecker written using python with a not so simple algorithm. But still it is not capable of handling inflection and agglutination occurring in Indian languages especially south Indian languages. The dictionary we have for Malayalam spellchecker have about 150000 words. Of course we can expand the dictionary, but that doesn&#039;t have much value since words can be formed in Malayalam or Tamil etc by joining multiple words. In addition to that, words get inflected based on grammar forms(sandhi), plural, gender etc. Hunspell has a system to handle this, but so far nobody succeeded in getting it working for multi level suffix stripping as required for Malayalam. Some times a Malayalam word can be formed by more than 5 words joining together. We will need a word splitting logic or a table taking care of all patterns. The project is to attempt solving this with hunspell. If that is not feasible(hunspell upstream is not active), develop an algorithm and implement it.&lt;br /&gt;
&lt;br /&gt;
Recently Tamil attempted developing a spellchecker using Hunspell with multi level suffix stripping. You can see the result here https://github.com/thamizha/solthiruthi. &lt;br /&gt;
Our attempt should be first to use Hunspell to achieve spellchecking with agglutination and inflection. Probably it will require lot of scripting to generate suffix patterns, we can ask help from existing language communities too. If Hunspell has limitation with multi level suffxes- sometimes Indian languages require more than 5 levels of suffix stripping, we need to document it(bug and documentation) and try to attempt python based solution on top of SILPA framework.&lt;br /&gt;
&lt;br /&gt;
The project is not about coding an existing algorithm, but to develop and implement an algorithm.&lt;br /&gt;
&lt;br /&gt;
Hunspell&#039;s limitations can be understood from [[User:%E0%B4%B8%E0%B4%A8%E0%B5%8D%E0%B4%A4%E0%B5%8B%E0%B4%B7%E0%B5%8D/HunspellConversation| this conversation]] we had with the author of Hunspell in 2008&lt;br /&gt;
&lt;br /&gt;
Homework to do before submitting applications:&lt;br /&gt;
# Use Hunspell in any Indian language like Malayalam for spell correction in editors or word processors and understand the limitations&lt;br /&gt;
# Study the nature of inflection and agglutination in Indian languages, read existing documents on this(ask for documents too) and note down your observations&lt;br /&gt;
# Study Hunspell and other spellcheckers to see how this problem is addressed&lt;br /&gt;
# Understand how a spell checker works. How to write a spellchecker from scratch?&lt;br /&gt;
# Come up with a plan about addressing the issue.&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;[https://savannah.nongnu.org/task/index.php?12558 Savannah Task]&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039;: Advanced&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Confirmed Mentor&#039;&#039;&#039;: &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;How to contact the mentor&#039;&#039;&#039;: &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;: Average level understanding of grammar system of at least one Indian language and complete the homework as listed above.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;What the student will learn&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
==Indic rendering support in ConTeXt==&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Project&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
ConTeXt is another TeX macro system similar to LaTeX but much more suitable for design. To find more information about ConTeXt, see the wiki http://wiki.contextgarden.net/Main_Page. ConTeXt MKII  have Indic language rendering support using XeTeX. but MKII is deprecated, and the new MKIV backend doesn&#039;t support Indic rendering yet. The aim of this project is to add support to Inidic rendering to ConTeXt MKIV. XeTeX is using Harfbuzz to do correct Indic rendering.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;More Details&#039;&#039;&#039;: A partially working patch by Rajeesh for MKIV lua code is available. ConTeXt mkii (deprecated) can work with XeTeX backend for Indic rendering. Here is a sample file:&lt;br /&gt;
 \usemodule[simplefonts]&lt;br /&gt;
 \definefontfeature[malayalam][script=mlym]&lt;br /&gt;
 \setmainfont[Rachana][features=malayalam]&lt;br /&gt;
 \starttext&lt;br /&gt;
 മലയാളം \TeX ഉപയോഗിച്ച് ടൈപ്പ്സെറ്റ് ചെയ്തത്&lt;br /&gt;
 \stoptext&lt;br /&gt;
Generate the output using command&lt;br /&gt;
 texexec --xetex &amp;lt;file.tex&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;[https://savannah.nongnu.org/task/index.php?12559 Savannah Task]&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039; : Advanced&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Confirmed Mentor&#039;&#039;&#039; : &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;How to contact the mentor&#039;&#039;&#039;: &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;: Understanding of the TeX system, experience in either LaTeX or ConTeXt and basic understanding of Indic language rendering. MKIV uses Lua, familiarity with Lua, opentype specifications or Harfbuzz will be added advantage.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;What the students will learn&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
==Language model and Acoustic model for Malayalam language for speech recognition system in CMU Sphinx==&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Project&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
CMU Sphinx is a large vocabulary, speaker independent speech recognition codebase and suite of tools, which can be used to develop speech recognition system in any language. To develop an automatic speech recognition system in a language, acoustic model and language model has to framed for that particular language.  Acoustic models characterize how sound changes over time. It captures the characteristics of basic recognition units. The language model describes the likelihood, probability, or penalty taken when a sequence or collection of words is seen. It attempts to convey behavior of the language and tries to predict the occurrence of specific word sequences possible in the language. Once these two models are developed, it will be useful to every one doing research in speech processing. For Indian languages Hindi, Tamil, Telugu and Marati, ASR systems have been developed using sphinx engine. In this project work is aimed at developing acoustic model and language model for Malayalam.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Background Reading&#039;&#039;&#039;&lt;br /&gt;
* [http://www.cs.cmu.edu/~gopalakr/publications/spdatabases_specom05.pdf &#039;Development of Indian Language Speech Databases for Large Vocabulary Speech Recognition Systems&#039;], Gopalakrishna  Anumanchipalli, Rahul Chitturi, Sachin Joshi, Rohit Kumar, Satinder Pal Singh, R.N.V. Sitaram, S P Kishore&lt;br /&gt;
* [http://www.aclweb.org/anthology/W/W12/W12-5808.pdf &amp;quot;Automatic Pronunciation Evaluation And Mispronunciation Detection Using CMUSphinx&amp;quot;], Ronanki Srikanth, James Salsman&lt;br /&gt;
* http://www.speech.cs.cmu.edu/&lt;br /&gt;
* http://cmusphinx.sourceforge.net/wiki/tutorial&lt;br /&gt;
* [http://www.ijarcsse.com &amp;quot;HTK Based Telugu Speech Recognition&amp;quot;], P. Vijai Bhaskar, AVNIET ,Hyderabad, Prof. Dr. S. Rama Mohan Rao, A.Gopi &lt;br /&gt;
* [http://www.cs.cmu.edu/~araza/Automatic_Speech_Recognition_System_for_Urdu.PDF &amp;quot;Design and  Development of an Automatic Speech Recognition System for Urdu&amp;quot;], Agha Ali Raza,  M.Sc. Thesis, FAST‐National University of Computer and Emerging Sciences &lt;br /&gt;
* [http://www.ccis2k.org/iajit/PDF/vol.6,no.2/11IASRUCSS186.pdf &amp;quot;Investigation Arabic Speech Recognition Using CMU Sphinx System&amp;quot;], Hassan Satori1, 2, Hussein Hiyassat3, Mostafa Harti1, 2, and Noureddine Chenfour&lt;br /&gt;
* [http://www.try.idv.tw/static-resources/homework/pr/PR_Final_Report.pdf &amp;quot;Understanding the CMU Sphinx Speech Recognition System&amp;quot;], Chun-Feng Liao&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039; : &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Confirmed Mentor&#039;&#039;&#039; : &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;How to contact the mentor&#039;&#039;&#039;: &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;: &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;What the students will learn&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==SILPA Project Based==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===SILPA Project Improvements===&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Project&#039;&#039;&#039;: &lt;br /&gt;
&lt;br /&gt;
This is set of ideas needed to improve the existing SILPA infrastructure. We have decided following tasks as part of this project&lt;br /&gt;
&lt;br /&gt;
# Provide REST API to SILPA without disturbing existing JSONRPC API&lt;br /&gt;
# Improve the Transliteration module&lt;br /&gt;
# Integrate [https://github.com/Project-SILPA/flask-webfonts Flask Webfonts] extension with SILPA to provide Webfonts support.&lt;br /&gt;
&lt;br /&gt;
==== Provide REST like API for SILPA ====&lt;br /&gt;
&lt;br /&gt;
SILPA provides JSONRPC API currently which is also utilized by the templates of framework. JSONRPC is not well supported in all languages and results in [https://en.wikipedia.org/wiki/Not_invented_here NIH code]. So we would like to provide REST like HTTP based API&#039;s for SILPA and at the same time leave the current JSONRPC code untouched for backward compatibility reasons.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Objectives&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
* Develop module or use existing module to provide REST like API&#039;s&lt;br /&gt;
* API should support GET and POST. [http://www.w3.org/2001/tag/doc/whenToUseGet.html When to use GET?].&lt;br /&gt;
&lt;br /&gt;
Many people have doubt on how the API should look like. We can give twitter API (https://dev.twitter.com/docs/api) as example &lt;br /&gt;
Sample API calls :&lt;br /&gt;
-------------------------------------------------------------&lt;br /&gt;
    POST api.silpa.org.in/payyans/ASCII2Unicode&lt;br /&gt;
    Paramets: text, font&lt;br /&gt;
    Response: JSON data&lt;br /&gt;
-------------------------------------------------------------&lt;br /&gt;
    POST api.silpa.org.in/payyans/Unicode2ASCII&lt;br /&gt;
    Paramets: text, font&lt;br /&gt;
    Response: JSON data&lt;br /&gt;
-------------------------------------------------------------&lt;br /&gt;
Generic: &lt;br /&gt;
    GET/POST (http://api.silpa.org.in/module/function_name or http://silpa.org.in/api/module/function_name)&lt;br /&gt;
    Parameters: function parameters&lt;br /&gt;
    Response: JSON encoded return value from function&lt;br /&gt;
&lt;br /&gt;
====  Improve Transliteration module ====&lt;br /&gt;
&lt;br /&gt;
We have a Transliteration module which supports transliteration from any Indic language to other Indic language and also support to English to Indic and Indic to English transliteration. Also we support IPA and ISO15919 transliteration system. But the module isn&#039;t in perfect shape and has lot of bugs. With this idea we would like to improve the following parts&lt;br /&gt;
&lt;br /&gt;
# Improve cross indic language transliteration system. Currently only Malayalam and Kannada are working without any external language support, all other Indian languages are first transliterated to Malayalam and then transliterated to target Indic language. We want to remove this cycle from source -&amp;gt; Malayalam -&amp;gt; target.&lt;br /&gt;
# English to IPA transliteration is currently broken and this needs to be fixed. See [https://github.com/Project-SILPA/Transliteration/issues/3 IPA transliteration bug].&lt;br /&gt;
# Once the IPA transliteration issue above is fixed, imporve English to Indic transliteration system using IPA. Currently English to Indic transliteration system is done using CMU Sphinx dictionary which is having limited set of words which inturn limits the output of English to Indic transliteration system.&lt;br /&gt;
# Improve IS015919 to Indic transliteration system see [https://github.com/Project-SILPA/Transliteration/issues/4 IS015919 to Indic transliteration].&lt;br /&gt;
&lt;br /&gt;
CLDR has transliteration data for Indic languages. We can explore it and see the feasibility. For an intermediate representation of the scripts either IPA can be used or ISO 15919 standard can be used. All these must be supplemented with exception rules and special case handling to achieve more perfect result.&lt;br /&gt;
&lt;br /&gt;
==== Integrating flask-webfonts extension with SILPA ====&lt;br /&gt;
&lt;br /&gt;
SILPA used to have a Webfonts module for serving Indian language fonts as Webfonts for browsers. During GSOC 2013 it was separated as an extension to Flask framework which can be generally used with any Flask powered app. The current code can be found at [https://github.com/Project-SILPA/flask-webfonts]. The module is not fine tuned yet so below are the objectives.&lt;br /&gt;
&lt;br /&gt;
# The module is not yet fine tuned and using it will make other modules break. This needs to be fixed (Can be checked with &#039;webfonts&#039; branch of SILPA code on github.&lt;br /&gt;
# Write tests to check the functionalities.&lt;br /&gt;
# Adhere to Flask extension guidelines and submit the modules to Flask extensions directory.&lt;br /&gt;
# Write a tool which can take a directory containing fonts file or single font file and generate configuration file needed by the extension. (A possible such tool which is outdated can be found at [https://github.com/copyninja/fontinfo])&lt;br /&gt;
# Provide HTTP api&#039;s through flask extension which can expose the CSS for applications.&lt;br /&gt;
&lt;br /&gt;
For all tasks above we expect documentation, test cases from the students as deliverable. &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039; : Intermediate&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Confirmed Mentors&#039;&#039;&#039; : &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;How to contact the mentors&#039;&#039;&#039;: &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Mailing List&#039;&#039;&#039;: silpa-discuss@nongnu.org &amp;lt;preferred&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;: Python , Flask , Jinja , HTML, Javascript&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;What the students will learn&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
# Writing applications using Flask&lt;br /&gt;
# Various Transliteration system knolwedge&lt;br /&gt;
# Webfonts knowledge and writing extensions for Flask&lt;br /&gt;
# Test drive development.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Converting indic processing modules currently in SILPA into javascript modules library===&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Project&#039;&#039;&#039;: &lt;br /&gt;
&lt;br /&gt;
Port some of the silpa algorithms to node modules. Several modules, alogorithms in SILPA project is done in python now. But porting them to javascript helps developers. For example, cross language transliteration can be done javascript too if we port the algorithm and transliteration rules. Similarly the approximate search can be ported. A flexibile fuzzy search on the web pages will be possible if we have the algorithm in javascript.&lt;br /&gt;
&lt;br /&gt;
Proposed javascript module pattern is https://github.com/umdjs/umd&lt;br /&gt;
&lt;br /&gt;
Student proposals should have a list of alogorithms planning to port, planned demo applications, planned documentation details, and publishing details(Example: npm registry)&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039; : &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Confirmed Mentor&#039;&#039;&#039; : &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;How to contact the mentor&#039;&#039;&#039;: &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039; Mailing List&#039;&#039;&#039;: silpa-discuss@nongnu.org&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;: javascript, python&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;What the students will learn&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
===Integrate Varnam into Silpa===&lt;br /&gt;
&lt;br /&gt;
Create a Silpa module which hosts [http://www.varnamproject.com varnam]. This includes making a python port for libvarnam and making a Silpa module which uses the python port. &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039; : Medium&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Confirmed Mentor&#039;&#039;&#039; : &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;How to contact the mentor&#039;&#039;&#039;: &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039; Mailing List&#039;&#039;&#039;: silpa-discuss@nongnu.org&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;: C, Python&lt;br /&gt;
&lt;br /&gt;
==Varnam Based==&lt;br /&gt;
&lt;br /&gt;
Varnam is a cross-platform predictive transliterator for Indian languages. It works mostly like Google&#039;s transliterate, but shows key differences in the way word tokenization is done. It has a learning system built in which allows Varnam to make smart predictions. &lt;br /&gt;
&lt;br /&gt;
There are varnam clients available as [https://addons.mozilla.org/en-US/firefox/addon/varnam-transliteration-base/ Firefox]] &amp;amp; [https://chrome.google.com/webstore/detail/varnam-ime/abcfkeabpcanobhdmcmdabejaamephaf Chrome addon] and an [https://gitorious.org/varnamproject/libvarnam-ibus/source/d939adf50024013902c27310c03ef21a9210cdcb IBus engine].&lt;br /&gt;
&lt;br /&gt;
To try out Varnam, navigate to [http://varnamproject.com/editor[http://varnamproject.com/editor]]. Currently it support Hindi and Malayalam.&lt;br /&gt;
&lt;br /&gt;
* [http://www.varnamproject.com/docs/faq FAQ]&lt;br /&gt;
* [http://www.varnamproject.com/docs Documentation]&lt;br /&gt;
* [http://www.varnamproject.com/docs/contributing Contributors guide &amp;amp; ideas to work on]&lt;br /&gt;
&lt;br /&gt;
Apart from the following ideas, you can propose your own idea. &lt;br /&gt;
&lt;br /&gt;
===Programming language bindings &amp;amp; varnam-daemon===&lt;br /&gt;
&lt;br /&gt;
Varnam is written on C which makes interoperability with other languages easy. There are language bindings available for `NodeJs` and `Ruby`. Supporting Varnam in multiple languages allows projects to use varnam easily to enable Indian language input.&lt;br /&gt;
&lt;br /&gt;
To make using varnam from different languages easier, make a cross platform standalone process which uses `libvarnam` shared library and exposes a RPC API over network. This allows any programming language with a socket support can be used with libvarnam. This also makes language bindings fairly easy because they don&#039;t have to work with the native interoperability support. The protocol can be a simple text based protocol for all the commands that `libvarnam` supports. &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039; : Advanced&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Confirmed Mentor&#039;&#039;&#039; : &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;How to contact the mentor&#039;&#039;&#039;: &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;: C&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Improvements to the REST API===&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Project&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
This includes rewrite of the current implementation in `golang` and add support for WebSockets to improve the input experience. This also&lt;br /&gt;
includes making scripts that would ease embedding input on any webpage. All the changes done will go live on[1]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039; : Advanced&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Confirmed Mentor&#039;&#039;&#039; : &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;How to contact the mentor&#039;&#039;&#039;: &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;: Basic understanding of golang and C&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;What the students will learn&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
===Create an Android IME===&lt;br /&gt;
&lt;br /&gt;
Varnam will be ported as a Silpa module and it will be available on Android as part of the android SDK project which Silpa has proposed. This idea is merged to the [http://wiki.smc.org.in/SoC/2014/Project_ideas#Android_SDK_for_Silpa Silpa] project ideas.&lt;br /&gt;
&lt;br /&gt;
===Enable varnam&#039;s suggestions system to be used from Inscript or any other input system===&lt;br /&gt;
&lt;br /&gt;
Varnam has knowledge about lot of words. This idea proposes a method to use these words and provide suggestions for other input systems. Basically, in Varnam, the API call will be something like,&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;&amp;lt;pre&amp;gt;&lt;br /&gt;
varnam_get_suggestions (handle, &amp;quot;भारत&amp;quot;);&lt;br /&gt;
&amp;lt;/pre&amp;gt;&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This will fetch all the suggestions which has the given prefix. &lt;br /&gt;
&lt;br /&gt;
`varnam_get_suggestions` needs to keep track of the previous words and use [http://en.wikipedia.org/wiki/N-gram n-gram] based dataset to filter the results. This should also learn the words back into the word corpus that varnam is using. Filtering suggestions won&#039;t be just a prefix search, but it will have knowledge about how text can be written in the target language and provide smart filtering. Searching in a large corpus and providing real-time suggestions makes this a challenging task. &lt;br /&gt;
&lt;br /&gt;
Once this is implemented in `libvarnam`, it can be used in the ibus-engine.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039; : Advanced&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;:  C, Unicode &amp;amp; encodings&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Confirmed Mentor&#039;&#039;&#039; : &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;How to contact the mentor&#039;&#039;&#039;: &lt;br /&gt;
&lt;br /&gt;
=== Word corpus synchronization ===&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Project&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
Create a cross-platform synchronization tool which can upload/download the word corpus from offline IMEs like varnam-ibus[2]. This helps to build the online words corpus easily.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039; : Medium&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Confirmed Mentor&#039;&#039;&#039; : &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;How to contact the mentor&#039;&#039;&#039;: &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;:  Knowledge in C/golang&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;What the students will learn&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [1]: http://www.varnamproject.com&lt;br /&gt;
* [2]: https://gitorious.org/varnamproject/libvarnam-ibus/&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Grandham ==&lt;br /&gt;
&lt;br /&gt;
=== Adding MARC21 import/export feature in Grandham ===&lt;br /&gt;
&lt;br /&gt;
We need a feature in Grandham to import and parse data from MARC21 documents. We should also be able to export existing data in MARC21.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039; : High&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Confirmed Mentor&#039;&#039;&#039; :&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;How to contact the mentor&#039;&#039;&#039;: &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;: Knowledge in Ruby/Ruby on Rails&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;What the students will learn&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [1]: http://dev.grandham.org&lt;br /&gt;
* [2]: https://github.com/smc/grandham&lt;/div&gt;</summary>
		<author><name>Nandaja</name></author>
	</entry>
	<entry>
		<id>https://wiki.smc.org.in/index.php?title=GSoC/2015/Project_ideas&amp;diff=10692</id>
		<title>GSoC/2015/Project ideas</title>
		<link rel="alternate" type="text/html" href="https://wiki.smc.org.in/index.php?title=GSoC/2015/Project_ideas&amp;diff=10692"/>
		<updated>2015-02-06T07:20:12Z</updated>

		<summary type="html">&lt;p&gt;Nandaja: /* Projects with unconfirmed mentors */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;center&amp;gt; &lt;br /&gt;
&amp;lt;font color=&amp;quot;green&amp;quot;&amp;gt; &amp;lt;big&amp;gt;&#039;&#039;&#039;Apart from the following ideas , you can propose your own ideas&#039;&#039;&#039;&amp;lt;/big&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Potential Mentors=&lt;br /&gt;
# Santhosh Thottingal (&#039;&#039;&#039;santhosh&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Baiju M (&#039;&#039;&#039;baijum&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Praveen A (&#039;&#039;&#039;j4v4m4n&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Rajeesh K Nambiar (&#039;&#039;&#039;rajeeshknambiar&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Anivar Aravind (&#039;&#039;&#039;anivar&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Vasudev Kammath (&#039;&#039;&#039;copyninja&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Jishnu Mohan (&#039;&#039;&#039;jishnu7&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Hrishikesh K.B (&#039;&#039;&#039;stultus&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Nandaja Varma (&#039;&#039;&#039;gem&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Navaneeth (&#039;&#039;&#039;nkn__&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Ershad K (&#039;&#039;&#039;ershad&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Nishan Naseer (&#039;&#039;&#039;nishan&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=Ideas for Google Summer of Code 2015=&lt;br /&gt;
* Please Read the [http://wiki.smc.org.in/GSoC/2015#FAQ FAQ]&lt;br /&gt;
* If you want to propose an idea, please do it in [http://lists.smc.org.in/listinfo.cgi/student-projects-smc.org.in student projects mailing list]&lt;br /&gt;
&lt;br /&gt;
=Projects with confirmed mentors=&lt;br /&gt;
&lt;br /&gt;
=Projects with unconfirmed mentors=&lt;br /&gt;
== A spell checker for Indic language that understands inflections ==&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Project&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
SILPA project has a spellchecker written using python with a not so simple algorithm. But still it is not capable of handling inflection and agglutination occurring in Indian languages especially south Indian languages. The dictionary we have for Malayalam spellchecker have about 150000 words. Of course we can expand the dictionary, but that doesn&#039;t have much value since words can be formed in Malayalam or Tamil etc by joining multiple words. In addition to that, words get inflected based on grammar forms(sandhi), plural, gender etc. Hunspell has a system to handle this, but so far nobody succeeded in getting it working for multi level suffix stripping as required for Malayalam. Some times a Malayalam word can be formed by more than 5 words joining together. We will need a word splitting logic or a table taking care of all patterns. The project is to attempt solving this with hunspell. If that is not feasible(hunspell upstream is not active), develop an algorithm and implement it.&lt;br /&gt;
&lt;br /&gt;
Recently Tamil attempted developing a spellchecker using Hunspell with multi level suffix stripping. You can see the result here https://github.com/thamizha/solthiruthi. &lt;br /&gt;
Our attempt should be first to use Hunspell to achieve spellchecking with agglutination and inflection. Probably it will require lot of scripting to generate suffix patterns, we can ask help from existing language communities too. If Hunspell has limitation with multi level suffxes- sometimes Indian languages require more than 5 levels of suffix stripping, we need to document it(bug and documentation) and try to attempt python based solution on top of SILPA framework.&lt;br /&gt;
&lt;br /&gt;
The project is not about coding an existing algorithm, but to develop and implement an algorithm.&lt;br /&gt;
&lt;br /&gt;
Hunspell&#039;s limitations can be understood from [[User:%E0%B4%B8%E0%B4%A8%E0%B5%8D%E0%B4%A4%E0%B5%8B%E0%B4%B7%E0%B5%8D/HunspellConversation| this conversation]] we had with the author of Hunspell in 2008&lt;br /&gt;
&lt;br /&gt;
Homework to do before submitting applications:&lt;br /&gt;
# Use Hunspell in any Indian language like Malayalam for spell correction in editors or word processors and understand the limitations&lt;br /&gt;
# Study the nature of inflection and agglutination in Indian languages, read existing documents on this(ask for documents too) and note down your observations&lt;br /&gt;
# Study Hunspell and other spellcheckers to see how this problem is addressed&lt;br /&gt;
# Understand how a spell checker works. How to write a spellchecker from scratch?&lt;br /&gt;
# Come up with a plan about addressing the issue.&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;[https://savannah.nongnu.org/task/index.php?12558 Savannah Task]&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039;: Advanced&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Confirmed Mentor&#039;&#039;&#039;: &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;How to contact the mentor&#039;&#039;&#039;: &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;: Average level understanding of grammar system of at least one Indian language and complete the homework as listed above.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;What the student will learn&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
==Indic rendering support in ConTeXt==&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Project&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
ConTeXt is another TeX macro system similar to LaTeX but much more suitable for design. To find more information about ConTeXt, see the wiki http://wiki.contextgarden.net/Main_Page. ConTeXt MKII  have Indic language rendering support using XeTeX. but MKII is deprecated, and the new MKIV backend doesn&#039;t support Indic rendering yet. The aim of this project is to add support to Inidic rendering to ConTeXt MKIV. XeTeX is using Harfbuzz to do correct Indic rendering.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;More Details&#039;&#039;&#039;: A partially working patch by Rajeesh for MKIV lua code is available. ConTeXt mkii (deprecated) can work with XeTeX backend for Indic rendering. Here is a sample file:&lt;br /&gt;
 \usemodule[simplefonts]&lt;br /&gt;
 \definefontfeature[malayalam][script=mlym]&lt;br /&gt;
 \setmainfont[Rachana][features=malayalam]&lt;br /&gt;
 \starttext&lt;br /&gt;
 മലയാളം \TeX ഉപയോഗിച്ച് ടൈപ്പ്സെറ്റ് ചെയ്തത്&lt;br /&gt;
 \stoptext&lt;br /&gt;
Generate the output using command&lt;br /&gt;
 texexec --xetex &amp;lt;file.tex&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;[https://savannah.nongnu.org/task/index.php?12559 Savannah Task]&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039; : Advanced&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Confirmed Mentor&#039;&#039;&#039; : &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;How to contact the mentor&#039;&#039;&#039;: IRC - &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;: Understanding of the TeX system, experience in either LaTeX or ConTeXt and basic understanding of Indic language rendering. MKIV uses Lua, familiarity with Lua, opentype specifications or Harfbuzz will be added advantage.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;What the students will learn&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Language model and Acoustic model for Malayalam language for speech recognition system in CMU Sphinx==&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Project&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
CMU Sphinx is a large vocabulary, speaker independent speech recognition codebase and suite of tools, which can be used to develop speech recognition system in any language. To develop an automatic speech recognition system in a language, acoustic model and language model has to framed for that particular language.  Acoustic models characterize how sound changes over time. It captures the characteristics of basic recognition units. The language model describes the likelihood, probability, or penalty taken when a sequence or collection of words is seen. It attempts to convey behavior of the language and tries to predict the occurrence of specific word sequences possible in the language. Once these two models are developed, it will be useful to every one doing research in speech processing. For Indian languages Hindi, Tamil, Telugu and Marati, ASR systems have been developed using sphinx engine. In this project work is aimed at developing acoustic model and language model for Malayalam.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Background Reading&#039;&#039;&#039;&lt;br /&gt;
* [http://www.cs.cmu.edu/~gopalakr/publications/spdatabases_specom05.pdf &#039;Development of Indian Language Speech Databases for Large Vocabulary Speech Recognition Systems&#039;], Gopalakrishna  Anumanchipalli, Rahul Chitturi, Sachin Joshi, Rohit Kumar, Satinder Pal Singh, R.N.V. Sitaram, S P Kishore&lt;br /&gt;
* [http://www.aclweb.org/anthology/W/W12/W12-5808.pdf &amp;quot;Automatic Pronunciation Evaluation And Mispronunciation Detection Using CMUSphinx&amp;quot;], Ronanki Srikanth, James Salsman&lt;br /&gt;
* http://www.speech.cs.cmu.edu/&lt;br /&gt;
* http://cmusphinx.sourceforge.net/wiki/tutorial&lt;br /&gt;
* [http://www.ijarcsse.com &amp;quot;HTK Based Telugu Speech Recognition&amp;quot;], P. Vijai Bhaskar, AVNIET ,Hyderabad, Prof. Dr. S. Rama Mohan Rao, A.Gopi &lt;br /&gt;
* [http://www.cs.cmu.edu/~araza/Automatic_Speech_Recognition_System_for_Urdu.PDF &amp;quot;Design and  Development of an Automatic Speech Recognition System for Urdu&amp;quot;], Agha Ali Raza,  M.Sc. Thesis, FAST‐National University of Computer and Emerging Sciences &lt;br /&gt;
* [http://www.ccis2k.org/iajit/PDF/vol.6,no.2/11IASRUCSS186.pdf &amp;quot;Investigation Arabic Speech Recognition Using CMU Sphinx System&amp;quot;], Hassan Satori1, 2, Hussein Hiyassat3, Mostafa Harti1, 2, and Noureddine Chenfour&lt;br /&gt;
* [http://www.try.idv.tw/static-resources/homework/pr/PR_Final_Report.pdf &amp;quot;Understanding the CMU Sphinx Speech Recognition System&amp;quot;], Chun-Feng Liao&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039; : &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Confirmed Mentor&#039;&#039;&#039; : &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;How to contact the mentor&#039;&#039;&#039;: &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;: &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;What the students will learn&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==SILPA Project Based==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===SILPA Project Improvements===&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Project&#039;&#039;&#039;: &lt;br /&gt;
&lt;br /&gt;
This is set of ideas needed to improve the existing SILPA infrastructure. We have decided following tasks as part of this project&lt;br /&gt;
&lt;br /&gt;
# Provide REST API to SILPA without disturbing existing JSONRPC API&lt;br /&gt;
# Improve the Transliteration module&lt;br /&gt;
# Integrate [https://github.com/Project-SILPA/flask-webfonts Flask Webfonts] extension with SILPA to provide Webfonts support.&lt;br /&gt;
&lt;br /&gt;
==== Provide REST like API for SILPA ====&lt;br /&gt;
&lt;br /&gt;
SILPA provides JSONRPC API currently which is also utilized by the templates of framework. JSONRPC is not well supported in all languages and results in [https://en.wikipedia.org/wiki/Not_invented_here NIH code]. So we would like to provide REST like HTTP based API&#039;s for SILPA and at the same time leave the current JSONRPC code untouched for backward compatibility reasons.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Objectives&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
* Develop module or use existing module to provide REST like API&#039;s&lt;br /&gt;
* API should support GET and POST. [http://www.w3.org/2001/tag/doc/whenToUseGet.html When to use GET?].&lt;br /&gt;
&lt;br /&gt;
Many people have doubt on how the API should look like. We can give twitter API (https://dev.twitter.com/docs/api) as example &lt;br /&gt;
Sample API calls :&lt;br /&gt;
-------------------------------------------------------------&lt;br /&gt;
    POST api.silpa.org.in/payyans/ASCII2Unicode&lt;br /&gt;
    Paramets: text, font&lt;br /&gt;
    Response: JSON data&lt;br /&gt;
-------------------------------------------------------------&lt;br /&gt;
    POST api.silpa.org.in/payyans/Unicode2ASCII&lt;br /&gt;
    Paramets: text, font&lt;br /&gt;
    Response: JSON data&lt;br /&gt;
-------------------------------------------------------------&lt;br /&gt;
Generic: &lt;br /&gt;
    GET/POST (http://api.silpa.org.in/module/function_name or http://silpa.org.in/api/module/function_name)&lt;br /&gt;
    Parameters: function parameters&lt;br /&gt;
    Response: JSON encoded return value from function&lt;br /&gt;
&lt;br /&gt;
====  Improve Transliteration module ====&lt;br /&gt;
&lt;br /&gt;
We have a Transliteration module which supports transliteration from any Indic language to other Indic language and also support to English to Indic and Indic to English transliteration. Also we support IPA and ISO15919 transliteration system. But the module isn&#039;t in perfect shape and has lot of bugs. With this idea we would like to improve the following parts&lt;br /&gt;
&lt;br /&gt;
# Improve cross indic language transliteration system. Currently only Malayalam and Kannada are working without any external language support, all other Indian languages are first transliterated to Malayalam and then transliterated to target Indic language. We want to remove this cycle from source -&amp;gt; Malayalam -&amp;gt; target.&lt;br /&gt;
# English to IPA transliteration is currently broken and this needs to be fixed. See [https://github.com/Project-SILPA/Transliteration/issues/3 IPA transliteration bug].&lt;br /&gt;
# Once the IPA transliteration issue above is fixed, imporve English to Indic transliteration system using IPA. Currently English to Indic transliteration system is done using CMU Sphinx dictionary which is having limited set of words which inturn limits the output of English to Indic transliteration system.&lt;br /&gt;
# Improve IS015919 to Indic transliteration system see [https://github.com/Project-SILPA/Transliteration/issues/4 IS015919 to Indic transliteration].&lt;br /&gt;
&lt;br /&gt;
CLDR has transliteration data for Indic languages. We can explore it and see the feasibility. For an intermediate representation of the scripts either IPA can be used or ISO 15919 standard can be used. All these must be supplemented with exception rules and special case handling to achieve more perfect result.&lt;br /&gt;
&lt;br /&gt;
==== Integrating flask-webfonts extension with SILPA ====&lt;br /&gt;
&lt;br /&gt;
SILPA used to have a Webfonts module for serving Indian language fonts as Webfonts for browsers. During GSOC 2013 it was separated as an extension to Flask framework which can be generally used with any Flask powered app. The current code can be found at [https://github.com/Project-SILPA/flask-webfonts]. The module is not fine tuned yet so below are the objectives.&lt;br /&gt;
&lt;br /&gt;
# The module is not yet fine tuned and using it will make other modules break. This needs to be fixed (Can be checked with &#039;webfonts&#039; branch of SILPA code on github.&lt;br /&gt;
# Write tests to check the functionalities.&lt;br /&gt;
# Adhere to Flask extension guidelines and submit the modules to Flask extensions directory.&lt;br /&gt;
# Write a tool which can take a directory containing fonts file or single font file and generate configuration file needed by the extension. (A possible such tool which is outdated can be found at [https://github.com/copyninja/fontinfo])&lt;br /&gt;
# Provide HTTP api&#039;s through flask extension which can expose the CSS for applications.&lt;br /&gt;
&lt;br /&gt;
For all tasks above we expect documentation, test cases from the students as deliverable. &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039; : Intermediate&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Confirmed Mentors&#039;&#039;&#039; : &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;How to contact the mentors&#039;&#039;&#039;: &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Mailing List&#039;&#039;&#039;: silpa-discuss@nongnu.org &amp;lt;preferred&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;: Python , Flask , Jinja , HTML, Javascript&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;What the students will learn&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
# Writing applications using Flask&lt;br /&gt;
# Various Transliteration system knolwedge&lt;br /&gt;
# Webfonts knowledge and writing extensions for Flask&lt;br /&gt;
# Test drive development.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Converting indic processing modules currently in SILPA into javascript modules library===&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Project&#039;&#039;&#039;: &lt;br /&gt;
&lt;br /&gt;
Port some of the silpa algorithms to node modules. Several modules, alogorithms in SILPA project is done in python now. But porting them to javascript helps developers. For example, cross language transliteration can be done javascript too if we port the algorithm and transliteration rules. Similarly the approximate search can be ported. A flexibile fuzzy search on the web pages will be possible if we have the algorithm in javascript.&lt;br /&gt;
&lt;br /&gt;
Proposed javascript module pattern is https://github.com/umdjs/umd&lt;br /&gt;
&lt;br /&gt;
Student proposals should have a list of alogorithms planning to port, planned demo applications, planned documentation details, and publishing details(Example: npm registry)&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039; : &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Confirmed Mentor&#039;&#039;&#039; : &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;How to contact the mentor&#039;&#039;&#039;: &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039; Mailing List&#039;&#039;&#039;: silpa-discuss@nongnu.org&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;: javascript, python&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;What the students will learn&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
===Integrate Varnam into Silpa===&lt;br /&gt;
&lt;br /&gt;
Create a Silpa module which hosts [http://www.varnamproject.com varnam]. This includes making a python port for libvarnam and making a Silpa module which uses the python port. &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039; : Medium&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Confirmed Mentor&#039;&#039;&#039; : &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;How to contact the mentor&#039;&#039;&#039;: &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039; Mailing List&#039;&#039;&#039;: silpa-discuss@nongnu.org&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;: C, Python&lt;br /&gt;
&lt;br /&gt;
==Varnam Based==&lt;br /&gt;
&lt;br /&gt;
Varnam is a cross-platform predictive transliterator for Indian languages. It works mostly like Google&#039;s transliterate, but shows key differences in the way word tokenization is done. It has a learning system built in which allows Varnam to make smart predictions. &lt;br /&gt;
&lt;br /&gt;
There are varnam clients available as [https://addons.mozilla.org/en-US/firefox/addon/varnam-transliteration-base/ Firefox]] &amp;amp; [https://chrome.google.com/webstore/detail/varnam-ime/abcfkeabpcanobhdmcmdabejaamephaf Chrome addon] and an [https://gitorious.org/varnamproject/libvarnam-ibus/source/d939adf50024013902c27310c03ef21a9210cdcb IBus engine].&lt;br /&gt;
&lt;br /&gt;
To try out Varnam, navigate to [http://varnamproject.com/editor[http://varnamproject.com/editor]]. Currently it support Hindi and Malayalam.&lt;br /&gt;
&lt;br /&gt;
* [http://www.varnamproject.com/docs/faq FAQ]&lt;br /&gt;
* [http://www.varnamproject.com/docs Documentation]&lt;br /&gt;
* [http://www.varnamproject.com/docs/contributing Contributors guide &amp;amp; ideas to work on]&lt;br /&gt;
&lt;br /&gt;
Apart from the following ideas, you can propose your own idea. &lt;br /&gt;
&lt;br /&gt;
===Programming language bindings &amp;amp; varnam-daemon===&lt;br /&gt;
&lt;br /&gt;
Varnam is written on C which makes interoperability with other languages easy. There are language bindings available for `NodeJs` and `Ruby`. Supporting Varnam in multiple languages allows projects to use varnam easily to enable Indian language input.&lt;br /&gt;
&lt;br /&gt;
To make using varnam from different languages easier, make a cross platform standalone process which uses `libvarnam` shared library and exposes a RPC API over network. This allows any programming language with a socket support can be used with libvarnam. This also makes language bindings fairly easy because they don&#039;t have to work with the native interoperability support. The protocol can be a simple text based protocol for all the commands that `libvarnam` supports. &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039; : Advanced&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Confirmed Mentor&#039;&#039;&#039; : &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;How to contact the mentor&#039;&#039;&#039;: &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;: C&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Improvements to the REST API===&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Project&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
This includes rewrite of the current implementation in `golang` and add support for WebSockets to improve the input experience. This also&lt;br /&gt;
includes making scripts that would ease embedding input on any webpage. All the changes done will go live on[1]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039; : Advanced&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Confirmed Mentor&#039;&#039;&#039; : &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;How to contact the mentor&#039;&#039;&#039;: &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;: Basic understanding of golang and C&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;What the students will learn&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
===Create an Android IME===&lt;br /&gt;
&lt;br /&gt;
Varnam will be ported as a Silpa module and it will be available on Android as part of the android SDK project which Silpa has proposed. This idea is merged to the [http://wiki.smc.org.in/SoC/2014/Project_ideas#Android_SDK_for_Silpa Silpa] project ideas.&lt;br /&gt;
&lt;br /&gt;
===Enable varnam&#039;s suggestions system to be used from Inscript or any other input system===&lt;br /&gt;
&lt;br /&gt;
Varnam has knowledge about lot of words. This idea proposes a method to use these words and provide suggestions for other input systems. Basically, in Varnam, the API call will be something like,&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;&amp;lt;pre&amp;gt;&lt;br /&gt;
varnam_get_suggestions (handle, &amp;quot;भारत&amp;quot;);&lt;br /&gt;
&amp;lt;/pre&amp;gt;&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This will fetch all the suggestions which has the given prefix. &lt;br /&gt;
&lt;br /&gt;
`varnam_get_suggestions` needs to keep track of the previous words and use [http://en.wikipedia.org/wiki/N-gram n-gram] based dataset to filter the results. This should also learn the words back into the word corpus that varnam is using. Filtering suggestions won&#039;t be just a prefix search, but it will have knowledge about how text can be written in the target language and provide smart filtering. Searching in a large corpus and providing real-time suggestions makes this a challenging task. &lt;br /&gt;
&lt;br /&gt;
Once this is implemented in `libvarnam`, it can be used in the ibus-engine.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039; : Advanced&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;:  C, Unicode &amp;amp; encodings&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Confirmed Mentor&#039;&#039;&#039; : &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;How to contact the mentor&#039;&#039;&#039;: &lt;br /&gt;
&lt;br /&gt;
=== Word corpus synchronization ===&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Project&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
Create a cross-platform synchronization tool which can upload/download the word corpus from offline IMEs like varnam-ibus[2]. This helps to build the online words corpus easily.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039; : Medium&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Confirmed Mentor&#039;&#039;&#039; : &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;How to contact the mentor&#039;&#039;&#039;: &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;:  Knowledge in C/golang&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;What the students will learn&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [1]: http://www.varnamproject.com&lt;br /&gt;
* [2]: https://gitorious.org/varnamproject/libvarnam-ibus/&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Grandham ==&lt;br /&gt;
&lt;br /&gt;
=== Adding MARC21 import/export feature in Grandham ===&lt;br /&gt;
&lt;br /&gt;
We need a feature in Grandham to import and parse data from MARC21 documents. We should also be able to export existing data in MARC21.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039; : High&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Confirmed Mentor&#039;&#039;&#039; :&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;How to contact the mentor&#039;&#039;&#039;: &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;: Knowledge in Ruby/Ruby on Rails&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;What the students will learn&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [1]: http://dev.grandham.org&lt;br /&gt;
* [2]: https://github.com/smc/grandham&lt;/div&gt;</summary>
		<author><name>Nandaja</name></author>
	</entry>
	<entry>
		<id>https://wiki.smc.org.in/index.php?title=GSoC/2015/Project_ideas&amp;diff=10691</id>
		<title>GSoC/2015/Project ideas</title>
		<link rel="alternate" type="text/html" href="https://wiki.smc.org.in/index.php?title=GSoC/2015/Project_ideas&amp;diff=10691"/>
		<updated>2015-02-06T07:18:34Z</updated>

		<summary type="html">&lt;p&gt;Nandaja: /* A spell checker for Indic language that understands inflections */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;center&amp;gt; &lt;br /&gt;
&amp;lt;font color=&amp;quot;green&amp;quot;&amp;gt; &amp;lt;big&amp;gt;&#039;&#039;&#039;Apart from the following ideas , you can propose your own ideas&#039;&#039;&#039;&amp;lt;/big&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Potential Mentors=&lt;br /&gt;
# Santhosh Thottingal (&#039;&#039;&#039;santhosh&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Baiju M (&#039;&#039;&#039;baijum&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Praveen A (&#039;&#039;&#039;j4v4m4n&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Rajeesh K Nambiar (&#039;&#039;&#039;rajeeshknambiar&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Anivar Aravind (&#039;&#039;&#039;anivar&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Vasudev Kammath (&#039;&#039;&#039;copyninja&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Jishnu Mohan (&#039;&#039;&#039;jishnu7&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Hrishikesh K.B (&#039;&#039;&#039;stultus&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Nandaja Varma (&#039;&#039;&#039;gem&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Navaneeth (&#039;&#039;&#039;nkn__&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Ershad K (&#039;&#039;&#039;ershad&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Nishan Naseer (&#039;&#039;&#039;nishan&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=Ideas for Google Summer of Code 2015=&lt;br /&gt;
* Please Read the [http://wiki.smc.org.in/GSoC/2015#FAQ FAQ]&lt;br /&gt;
* If you want to propose an idea, please do it in [http://lists.smc.org.in/listinfo.cgi/student-projects-smc.org.in student projects mailing list]&lt;br /&gt;
&lt;br /&gt;
=Projects with confirmed mentors=&lt;br /&gt;
&lt;br /&gt;
=Projects with unconfirmed mentors=&lt;br /&gt;
== A spell checker for Indic language that understands inflections ==&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Project&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
SILPA project has a spellchecker written using python with a not so simple algorithm. But still it is not capable of handling inflection and agglutination occurring in Indian languages especially south Indian languages. The dictionary we have for Malayalam spellchecker have about 150000 words. Of course we can expand the dictionary, but that doesn&#039;t have much value since words can be formed in Malayalam or Tamil etc by joining multiple words. In addition to that, words get inflected based on grammar forms(sandhi), plural, gender etc. Hunspell has a system to handle this, but so far nobody succeeded in getting it working for multi level suffix stripping as required for Malayalam. Some times a Malayalam word can be formed by more than 5 words joining together. We will need a word splitting logic or a table taking care of all patterns. The project is to attempt solving this with hunspell. If that is not feasible(hunspell upstream is not active), develop an algorithm and implement it.&lt;br /&gt;
&lt;br /&gt;
Recently Tamil attempted developing a spellchecker using Hunspell with multi level suffix stripping. You can see the result here https://github.com/thamizha/solthiruthi. &lt;br /&gt;
Our attempt should be first to use Hunspell to achieve spellchecking with agglutination and inflection. Probably it will require lot of scripting to generate suffix patterns, we can ask help from existing language communities too. If Hunspell has limitation with multi level suffxes- sometimes Indian languages require more than 5 levels of suffix stripping, we need to document it(bug and documentation) and try to attempt python based solution on top of SILPA framework.&lt;br /&gt;
&lt;br /&gt;
The project is not about coding an existing algorithm, but to develop and implement an algorithm.&lt;br /&gt;
&lt;br /&gt;
Hunspell&#039;s limitations can be understood from [[User:%E0%B4%B8%E0%B4%A8%E0%B5%8D%E0%B4%A4%E0%B5%8B%E0%B4%B7%E0%B5%8D/HunspellConversation| this conversation]] we had with the author of Hunspell in 2008&lt;br /&gt;
&lt;br /&gt;
Homework to do before submitting applications:&lt;br /&gt;
# Use Hunspell in any Indian language like Malayalam for spell correction in editors or word processors and understand the limitations&lt;br /&gt;
# Study the nature of inflection and agglutination in Indian languages, read existing documents on this(ask for documents too) and note down your observations&lt;br /&gt;
# Study Hunspell and other spellcheckers to see how this problem is addressed&lt;br /&gt;
# Understand how a spell checker works. How to write a spellchecker from scratch?&lt;br /&gt;
# Come up with a plan about addressing the issue.&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;[https://savannah.nongnu.org/task/index.php?12558 Savannah Task]&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039;: Advanced&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Confirmed Mentor&#039;&#039;&#039;: &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;How to contact the mentor&#039;&#039;&#039;: &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;: Average level understanding of grammar system of at least one Indian language and complete the homework as listed above.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;What the student will learn&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
==Indic rendering support in ConTeXt==&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Project&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
ConTeXt is another TeX macro system similar to LaTeX but much more suitable for design. To find more information about ConTeXt, see the wiki http://wiki.contextgarden.net/Main_Page. ConTeXt MKII  have Indic language rendering support using XeTeX. but MKII is deprecated, and the new MKIV backend doesn&#039;t support Indic rendering yet. The aim of this project is to add support to Inidic rendering to ConTeXt MKIV. XeTeX is using Harfbuzz to do correct Indic rendering.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;More Details&#039;&#039;&#039;: A partially working patch by Rajeesh for MKIV lua code is available. ConTeXt mkii (deprecated) can work with XeTeX backend for Indic rendering. Here is a sample file:&lt;br /&gt;
 \usemodule[simplefonts]&lt;br /&gt;
 \definefontfeature[malayalam][script=mlym]&lt;br /&gt;
 \setmainfont[Rachana][features=malayalam]&lt;br /&gt;
 \starttext&lt;br /&gt;
 മലയാളം \TeX ഉപയോഗിച്ച് ടൈപ്പ്സെറ്റ് ചെയ്തത്&lt;br /&gt;
 \stoptext&lt;br /&gt;
Generate the output using command&lt;br /&gt;
 texexec --xetex &amp;lt;file.tex&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;[https://savannah.nongnu.org/task/index.php?12559 Savannah Task]&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039; : Advanced&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Confirmed Mentor&#039;&#039;&#039; : &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;How to contact the mentor&#039;&#039;&#039;: IRC - rajeeshknambiar on #smc-project on Freenode&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;: Understanding of the TeX system, experience in either LaTeX or ConTeXt and basic understanding of Indic language rendering. MKIV uses Lua, familiarity with Lua, opentype specifications or Harfbuzz will be added advantage.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;What the students will learn&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Language model and Acoustic model for Malayalam language for speech recognition system in CMU Sphinx==&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Project&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
CMU Sphinx is a large vocabulary, speaker independent speech recognition codebase and suite of tools, which can be used to develop speech recognition system in any language. To develop an automatic speech recognition system in a language, acoustic model and language model has to framed for that particular language.  Acoustic models characterize how sound changes over time. It captures the characteristics of basic recognition units. The language model describes the likelihood, probability, or penalty taken when a sequence or collection of words is seen. It attempts to convey behavior of the language and tries to predict the occurrence of specific word sequences possible in the language. Once these two models are developed, it will be useful to every one doing research in speech processing. For Indian languages Hindi, Tamil, Telugu and Marati, ASR systems have been developed using sphinx engine. In this project work is aimed at developing acoustic model and language model for Malayalam.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Background Reading&#039;&#039;&#039;&lt;br /&gt;
* [http://www.cs.cmu.edu/~gopalakr/publications/spdatabases_specom05.pdf &#039;Development of Indian Language Speech Databases for Large Vocabulary Speech Recognition Systems&#039;], Gopalakrishna  Anumanchipalli, Rahul Chitturi, Sachin Joshi, Rohit Kumar, Satinder Pal Singh, R.N.V. Sitaram, S P Kishore&lt;br /&gt;
* [http://www.aclweb.org/anthology/W/W12/W12-5808.pdf &amp;quot;Automatic Pronunciation Evaluation And Mispronunciation Detection Using CMUSphinx&amp;quot;], Ronanki Srikanth, James Salsman&lt;br /&gt;
* http://www.speech.cs.cmu.edu/&lt;br /&gt;
* http://cmusphinx.sourceforge.net/wiki/tutorial&lt;br /&gt;
* [http://www.ijarcsse.com &amp;quot;HTK Based Telugu Speech Recognition&amp;quot;], P. Vijai Bhaskar, AVNIET ,Hyderabad, Prof. Dr. S. Rama Mohan Rao, A.Gopi &lt;br /&gt;
* [http://www.cs.cmu.edu/~araza/Automatic_Speech_Recognition_System_for_Urdu.PDF &amp;quot;Design and  Development of an Automatic Speech Recognition System for Urdu&amp;quot;], Agha Ali Raza,  M.Sc. Thesis, FAST‐National University of Computer and Emerging Sciences &lt;br /&gt;
* [http://www.ccis2k.org/iajit/PDF/vol.6,no.2/11IASRUCSS186.pdf &amp;quot;Investigation Arabic Speech Recognition Using CMU Sphinx System&amp;quot;], Hassan Satori1, 2, Hussein Hiyassat3, Mostafa Harti1, 2, and Noureddine Chenfour&lt;br /&gt;
* [http://www.try.idv.tw/static-resources/homework/pr/PR_Final_Report.pdf &amp;quot;Understanding the CMU Sphinx Speech Recognition System&amp;quot;], Chun-Feng Liao&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039; : &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Confirmed Mentor&#039;&#039;&#039; : &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;How to contact the mentor&#039;&#039;&#039;: IRC - deepagopinath on #smc-project on Freenode&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;: &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;What the students will learn&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==SILPA Project Based==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===SILPA Project Improvements===&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Project&#039;&#039;&#039;: &lt;br /&gt;
&lt;br /&gt;
This is set of ideas needed to improve the existing SILPA infrastructure. We have decided following tasks as part of this project&lt;br /&gt;
&lt;br /&gt;
# Provide REST API to SILPA without disturbing existing JSONRPC API&lt;br /&gt;
# Improve the Transliteration module&lt;br /&gt;
# Integrate [https://github.com/Project-SILPA/flask-webfonts Flask Webfonts] extension with SILPA to provide Webfonts support.&lt;br /&gt;
&lt;br /&gt;
==== Provide REST like API for SILPA ====&lt;br /&gt;
&lt;br /&gt;
SILPA provides JSONRPC API currently which is also utilized by the templates of framework. JSONRPC is not well supported in all languages and results in [https://en.wikipedia.org/wiki/Not_invented_here NIH code]. So we would like to provide REST like HTTP based API&#039;s for SILPA and at the same time leave the current JSONRPC code untouched for backward compatibility reasons.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Objectives&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
* Develop module or use existing module to provide REST like API&#039;s&lt;br /&gt;
* API should support GET and POST. [http://www.w3.org/2001/tag/doc/whenToUseGet.html When to use GET?].&lt;br /&gt;
&lt;br /&gt;
Many people have doubt on how the API should look like. We can give twitter API (https://dev.twitter.com/docs/api) as example &lt;br /&gt;
Sample API calls :&lt;br /&gt;
-------------------------------------------------------------&lt;br /&gt;
    POST api.silpa.org.in/payyans/ASCII2Unicode&lt;br /&gt;
    Paramets: text, font&lt;br /&gt;
    Response: JSON data&lt;br /&gt;
-------------------------------------------------------------&lt;br /&gt;
    POST api.silpa.org.in/payyans/Unicode2ASCII&lt;br /&gt;
    Paramets: text, font&lt;br /&gt;
    Response: JSON data&lt;br /&gt;
-------------------------------------------------------------&lt;br /&gt;
Generic: &lt;br /&gt;
    GET/POST (http://api.silpa.org.in/module/function_name or http://silpa.org.in/api/module/function_name)&lt;br /&gt;
    Parameters: function parameters&lt;br /&gt;
    Response: JSON encoded return value from function&lt;br /&gt;
&lt;br /&gt;
====  Improve Transliteration module ====&lt;br /&gt;
&lt;br /&gt;
We have a Transliteration module which supports transliteration from any Indic language to other Indic language and also support to English to Indic and Indic to English transliteration. Also we support IPA and ISO15919 transliteration system. But the module isn&#039;t in perfect shape and has lot of bugs. With this idea we would like to improve the following parts&lt;br /&gt;
&lt;br /&gt;
# Improve cross indic language transliteration system. Currently only Malayalam and Kannada are working without any external language support, all other Indian languages are first transliterated to Malayalam and then transliterated to target Indic language. We want to remove this cycle from source -&amp;gt; Malayalam -&amp;gt; target.&lt;br /&gt;
# English to IPA transliteration is currently broken and this needs to be fixed. See [https://github.com/Project-SILPA/Transliteration/issues/3 IPA transliteration bug].&lt;br /&gt;
# Once the IPA transliteration issue above is fixed, imporve English to Indic transliteration system using IPA. Currently English to Indic transliteration system is done using CMU Sphinx dictionary which is having limited set of words which inturn limits the output of English to Indic transliteration system.&lt;br /&gt;
# Improve IS015919 to Indic transliteration system see [https://github.com/Project-SILPA/Transliteration/issues/4 IS015919 to Indic transliteration].&lt;br /&gt;
&lt;br /&gt;
CLDR has transliteration data for Indic languages. We can explore it and see the feasibility. For an intermediate representation of the scripts either IPA can be used or ISO 15919 standard can be used. All these must be supplemented with exception rules and special case handling to achieve more perfect result.&lt;br /&gt;
&lt;br /&gt;
==== Integrating flask-webfonts extension with SILPA ====&lt;br /&gt;
&lt;br /&gt;
SILPA used to have a Webfonts module for serving Indian language fonts as Webfonts for browsers. During GSOC 2013 it was separated as an extension to Flask framework which can be generally used with any Flask powered app. The current code can be found at [https://github.com/Project-SILPA/flask-webfonts]. The module is not fine tuned yet so below are the objectives.&lt;br /&gt;
&lt;br /&gt;
# The module is not yet fine tuned and using it will make other modules break. This needs to be fixed (Can be checked with &#039;webfonts&#039; branch of SILPA code on github.&lt;br /&gt;
# Write tests to check the functionalities.&lt;br /&gt;
# Adhere to Flask extension guidelines and submit the modules to Flask extensions directory.&lt;br /&gt;
# Write a tool which can take a directory containing fonts file or single font file and generate configuration file needed by the extension. (A possible such tool which is outdated can be found at [https://github.com/copyninja/fontinfo])&lt;br /&gt;
# Provide HTTP api&#039;s through flask extension which can expose the CSS for applications.&lt;br /&gt;
&lt;br /&gt;
For all tasks above we expect documentation, test cases from the students as deliverable. &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039; : Intermediate&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Confirmed Mentors&#039;&#039;&#039; : &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;How to contact the mentors&#039;&#039;&#039;: IRC -&lt;br /&gt;
*Vasudev Kamath - copyninja on #smc-project and #silpa on Freenode&lt;br /&gt;
*Jishnu Mohan - jishnu7 on #smc-project and #silpa on Freenode&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Mailing List&#039;&#039;&#039;: silpa-discuss@nongnu.org &amp;lt;preferred&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;: Python , Flask , Jinja , HTML, Javascript&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;What the students will learn&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
# Writing applications using Flask&lt;br /&gt;
# Various Transliteration system knolwedge&lt;br /&gt;
# Webfonts knowledge and writing extensions for Flask&lt;br /&gt;
# Test drive development.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Converting indic processing modules currently in SILPA into javascript modules library===&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Project&#039;&#039;&#039;: &lt;br /&gt;
&lt;br /&gt;
Port some of the silpa algorithms to node modules. Several modules, alogorithms in SILPA project is done in python now. But porting them to javascript helps developers. For example, cross language transliteration can be done javascript too if we port the algorithm and transliteration rules. Similarly the approximate search can be ported. A flexibile fuzzy search on the web pages will be possible if we have the algorithm in javascript.&lt;br /&gt;
&lt;br /&gt;
Proposed javascript module pattern is https://github.com/umdjs/umd&lt;br /&gt;
&lt;br /&gt;
Student proposals should have a list of alogorithms planning to port, planned demo applications, planned documentation details, and publishing details(Example: npm registry)&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039; : &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Confirmed Mentor&#039;&#039;&#039; : &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;How to contact the mentor&#039;&#039;&#039;: IRC - jishnu7 santhosh on #smc-project and #silpa on Freenode&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039; Mailing List&#039;&#039;&#039;: silpa-discuss@nongnu.org&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;: javascript, python&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;What the students will learn&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
===Integrate Varnam into Silpa===&lt;br /&gt;
&lt;br /&gt;
Create a Silpa module which hosts [http://www.varnamproject.com varnam]. This includes making a python port for libvarnam and making a Silpa module which uses the python port. &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039; : Medium&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Confirmed Mentor&#039;&#039;&#039; : &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;How to contact the mentor&#039;&#039;&#039;: IRC - nkn__ on #smc-project and #silpa on Freenode&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039; Mailing List&#039;&#039;&#039;: silpa-discuss@nongnu.org&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;: C, Python&lt;br /&gt;
&lt;br /&gt;
==Varnam Based==&lt;br /&gt;
&lt;br /&gt;
Varnam is a cross-platform predictive transliterator for Indian languages. It works mostly like Google&#039;s transliterate, but shows key differences in the way word tokenization is done. It has a learning system built in which allows Varnam to make smart predictions. &lt;br /&gt;
&lt;br /&gt;
There are varnam clients available as [https://addons.mozilla.org/en-US/firefox/addon/varnam-transliteration-base/ Firefox]] &amp;amp; [https://chrome.google.com/webstore/detail/varnam-ime/abcfkeabpcanobhdmcmdabejaamephaf Chrome addon] and an [https://gitorious.org/varnamproject/libvarnam-ibus/source/d939adf50024013902c27310c03ef21a9210cdcb IBus engine].&lt;br /&gt;
&lt;br /&gt;
To try out Varnam, navigate to [http://varnamproject.com/editor[http://varnamproject.com/editor]]. Currently it support Hindi and Malayalam.&lt;br /&gt;
&lt;br /&gt;
* [http://www.varnamproject.com/docs/faq FAQ]&lt;br /&gt;
* [http://www.varnamproject.com/docs Documentation]&lt;br /&gt;
* [http://www.varnamproject.com/docs/contributing Contributors guide &amp;amp; ideas to work on]&lt;br /&gt;
&lt;br /&gt;
Apart from the following ideas, you can propose your own idea. &lt;br /&gt;
&lt;br /&gt;
===Programming language bindings &amp;amp; varnam-daemon===&lt;br /&gt;
&lt;br /&gt;
Varnam is written on C which makes interoperability with other languages easy. There are language bindings available for `NodeJs` and `Ruby`. Supporting Varnam in multiple languages allows projects to use varnam easily to enable Indian language input.&lt;br /&gt;
&lt;br /&gt;
To make using varnam from different languages easier, make a cross platform standalone process which uses `libvarnam` shared library and exposes a RPC API over network. This allows any programming language with a socket support can be used with libvarnam. This also makes language bindings fairly easy because they don&#039;t have to work with the native interoperability support. The protocol can be a simple text based protocol for all the commands that `libvarnam` supports. &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039; : Advanced&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Confirmed Mentor&#039;&#039;&#039; : &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;How to contact the mentor&#039;&#039;&#039;: IRC - nkn__ on #smc-project on Freenode&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;: C&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Improvements to the REST API===&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Project&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
This includes rewrite of the current implementation in `golang` and add support for WebSockets to improve the input experience. This also&lt;br /&gt;
includes making scripts that would ease embedding input on any webpage. All the changes done will go live on[1]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039; : Advanced&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Confirmed Mentor&#039;&#039;&#039; : &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;How to contact the mentor&#039;&#039;&#039;: IRC - nkn__ on #smc-project on Freenode&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;: Basic understanding of golang and C&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;What the students will learn&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
===Create an Android IME===&lt;br /&gt;
&lt;br /&gt;
Varnam will be ported as a Silpa module and it will be available on Android as part of the android SDK project which Silpa has proposed. This idea is merged to the [http://wiki.smc.org.in/SoC/2014/Project_ideas#Android_SDK_for_Silpa Silpa] project ideas.&lt;br /&gt;
&lt;br /&gt;
===Enable varnam&#039;s suggestions system to be used from Inscript or any other input system===&lt;br /&gt;
&lt;br /&gt;
Varnam has knowledge about lot of words. This idea proposes a method to use these words and provide suggestions for other input systems. Basically, in Varnam, the API call will be something like,&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;&amp;lt;pre&amp;gt;&lt;br /&gt;
varnam_get_suggestions (handle, &amp;quot;भारत&amp;quot;);&lt;br /&gt;
&amp;lt;/pre&amp;gt;&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This will fetch all the suggestions which has the given prefix. &lt;br /&gt;
&lt;br /&gt;
`varnam_get_suggestions` needs to keep track of the previous words and use [http://en.wikipedia.org/wiki/N-gram n-gram] based dataset to filter the results. This should also learn the words back into the word corpus that varnam is using. Filtering suggestions won&#039;t be just a prefix search, but it will have knowledge about how text can be written in the target language and provide smart filtering. Searching in a large corpus and providing real-time suggestions makes this a challenging task. &lt;br /&gt;
&lt;br /&gt;
Once this is implemented in `libvarnam`, it can be used in the ibus-engine.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039; : Advanced&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;:  C, Unicode &amp;amp; encodings&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Confirmed Mentor&#039;&#039;&#039; : &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;How to contact the mentor&#039;&#039;&#039;: IRC - nkn__ on #smc-project on Freenode&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Word corpus synchronization ===&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Project&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
Create a cross-platform synchronization tool which can upload/download the word corpus from offline IMEs like varnam-ibus[2]. This helps to build the online words corpus easily.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039; : Medium&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Confirmed Mentor&#039;&#039;&#039; : &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;How to contact the mentor&#039;&#039;&#039;: IRC - nkn__ on #smc-project on Freenode&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;:  Knowledge in C/golang&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;What the students will learn&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [1]: http://www.varnamproject.com&lt;br /&gt;
* [2]: https://gitorious.org/varnamproject/libvarnam-ibus/&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Grandham ==&lt;br /&gt;
&lt;br /&gt;
=== Adding MARC21 import/export feature in Grandham ===&lt;br /&gt;
&lt;br /&gt;
We need a feature in Grandham to import and parse data from MARC21 documents. We should also be able to export existing data in MARC21.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039; : High&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Confirmed Mentor&#039;&#039;&#039; :&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;How to contact the mentor&#039;&#039;&#039;: IRC - ershad on #smc-project on Freenode&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;: Knowledge in Ruby/Ruby on Rails&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;What the students will learn&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [1]: http://dev.grandham.org&lt;br /&gt;
* [2]: https://github.com/smc/grandham&lt;/div&gt;</summary>
		<author><name>Nandaja</name></author>
	</entry>
	<entry>
		<id>https://wiki.smc.org.in/index.php?title=GSoC/2015/Project_ideas&amp;diff=10690</id>
		<title>GSoC/2015/Project ideas</title>
		<link rel="alternate" type="text/html" href="https://wiki.smc.org.in/index.php?title=GSoC/2015/Project_ideas&amp;diff=10690"/>
		<updated>2015-02-06T07:17:49Z</updated>

		<summary type="html">&lt;p&gt;Nandaja: /* Projects with unconfirmed mentors */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;center&amp;gt; &lt;br /&gt;
&amp;lt;font color=&amp;quot;green&amp;quot;&amp;gt; &amp;lt;big&amp;gt;&#039;&#039;&#039;Apart from the following ideas , you can propose your own ideas&#039;&#039;&#039;&amp;lt;/big&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Potential Mentors=&lt;br /&gt;
# Santhosh Thottingal (&#039;&#039;&#039;santhosh&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Baiju M (&#039;&#039;&#039;baijum&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Praveen A (&#039;&#039;&#039;j4v4m4n&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Rajeesh K Nambiar (&#039;&#039;&#039;rajeeshknambiar&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Anivar Aravind (&#039;&#039;&#039;anivar&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Vasudev Kammath (&#039;&#039;&#039;copyninja&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Jishnu Mohan (&#039;&#039;&#039;jishnu7&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Hrishikesh K.B (&#039;&#039;&#039;stultus&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Nandaja Varma (&#039;&#039;&#039;gem&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Navaneeth (&#039;&#039;&#039;nkn__&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Ershad K (&#039;&#039;&#039;ershad&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Nishan Naseer (&#039;&#039;&#039;nishan&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=Ideas for Google Summer of Code 2015=&lt;br /&gt;
* Please Read the [http://wiki.smc.org.in/GSoC/2015#FAQ FAQ]&lt;br /&gt;
* If you want to propose an idea, please do it in [http://lists.smc.org.in/listinfo.cgi/student-projects-smc.org.in student projects mailing list]&lt;br /&gt;
&lt;br /&gt;
=Projects with confirmed mentors=&lt;br /&gt;
&lt;br /&gt;
=Projects with unconfirmed mentors=&lt;br /&gt;
== A spell checker for Indic language that understands inflections ==&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Project&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
SILPA project has a spellchecker written using python with a not so simple algorithm. But still it is not capable of handling inflection and agglutination occurring in Indian languages especially south Indian languages. The dictionary we have for Malayalam spellchecker have about 150000 words. Of course we can expand the dictionary, but that doesn&#039;t have much value since words can be formed in Malayalam or Tamil etc by joining multiple words. In addition to that, words get inflected based on grammar forms(sandhi), plural, gender etc. Hunspell has a system to handle this, but so far nobody succeeded in getting it working for multi level suffix stripping as required for Malayalam. Some times a Malayalam word can be formed by more than 5 words joining together. We will need a word splitting logic or a table taking care of all patterns. The project is to attempt solving this with hunspell. If that is not feasible(hunspell upstream is not active), develop an algorithm and implement it.&lt;br /&gt;
&lt;br /&gt;
Recently Tamil attempted developing a spellchecker using Hunspell with multi level suffix stripping. You can see the result here https://github.com/thamizha/solthiruthi. &lt;br /&gt;
Our attempt should be first to use Hunspell to achieve spellchecking with agglutination and inflection. Probably it will require lot of scripting to generate suffix patterns, we can ask help from existing language communities too. If Hunspell has limitation with multi level suffxes- sometimes Indian languages require more than 5 levels of suffix stripping, we need to document it(bug and documentation) and try to attempt python based solution on top of SILPA framework.&lt;br /&gt;
&lt;br /&gt;
The project is not about coding an existing algorithm, but to develop and implement an algorithm.&lt;br /&gt;
&lt;br /&gt;
Hunspell&#039;s limitations can be understood from [[User:%E0%B4%B8%E0%B4%A8%E0%B5%8D%E0%B4%A4%E0%B5%8B%E0%B4%B7%E0%B5%8D/HunspellConversation| this conversation]] we had with the author of Hunspell in 2008&lt;br /&gt;
&lt;br /&gt;
Homework to do before submitting applications:&lt;br /&gt;
# Use Hunspell in any Indian language like Malayalam for spell correction in editors or word processors and understand the limitations&lt;br /&gt;
# Study the nature of inflection and agglutination in Indian languages, read existing documents on this(ask for documents too) and note down your observations&lt;br /&gt;
# Study Hunspell and other spellcheckers to see how this problem is addressed&lt;br /&gt;
# Understand how a spell checker works. How to write a spellchecker from scratch?&lt;br /&gt;
# Come up with a plan about addressing the issue.&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;[https://savannah.nongnu.org/task/index.php?12558 Savannah Task]&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039;: Advanced&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Confirmed Mentor&#039;&#039;&#039;: &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;How to contact the mentor&#039;&#039;&#039;: IRC - santhosh on #smc-project on Freenode&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;: Average level understanding of grammar system of at least one Indian language and complete the homework as listed above.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;What the student will learn&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
==Indic rendering support in ConTeXt==&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Project&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
ConTeXt is another TeX macro system similar to LaTeX but much more suitable for design. To find more information about ConTeXt, see the wiki http://wiki.contextgarden.net/Main_Page. ConTeXt MKII  have Indic language rendering support using XeTeX. but MKII is deprecated, and the new MKIV backend doesn&#039;t support Indic rendering yet. The aim of this project is to add support to Inidic rendering to ConTeXt MKIV. XeTeX is using Harfbuzz to do correct Indic rendering.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;More Details&#039;&#039;&#039;: A partially working patch by Rajeesh for MKIV lua code is available. ConTeXt mkii (deprecated) can work with XeTeX backend for Indic rendering. Here is a sample file:&lt;br /&gt;
 \usemodule[simplefonts]&lt;br /&gt;
 \definefontfeature[malayalam][script=mlym]&lt;br /&gt;
 \setmainfont[Rachana][features=malayalam]&lt;br /&gt;
 \starttext&lt;br /&gt;
 മലയാളം \TeX ഉപയോഗിച്ച് ടൈപ്പ്സെറ്റ് ചെയ്തത്&lt;br /&gt;
 \stoptext&lt;br /&gt;
Generate the output using command&lt;br /&gt;
 texexec --xetex &amp;lt;file.tex&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;[https://savannah.nongnu.org/task/index.php?12559 Savannah Task]&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039; : Advanced&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Confirmed Mentor&#039;&#039;&#039; : &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;How to contact the mentor&#039;&#039;&#039;: IRC - rajeeshknambiar on #smc-project on Freenode&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;: Understanding of the TeX system, experience in either LaTeX or ConTeXt and basic understanding of Indic language rendering. MKIV uses Lua, familiarity with Lua, opentype specifications or Harfbuzz will be added advantage.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;What the students will learn&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Language model and Acoustic model for Malayalam language for speech recognition system in CMU Sphinx==&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Project&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
CMU Sphinx is a large vocabulary, speaker independent speech recognition codebase and suite of tools, which can be used to develop speech recognition system in any language. To develop an automatic speech recognition system in a language, acoustic model and language model has to framed for that particular language.  Acoustic models characterize how sound changes over time. It captures the characteristics of basic recognition units. The language model describes the likelihood, probability, or penalty taken when a sequence or collection of words is seen. It attempts to convey behavior of the language and tries to predict the occurrence of specific word sequences possible in the language. Once these two models are developed, it will be useful to every one doing research in speech processing. For Indian languages Hindi, Tamil, Telugu and Marati, ASR systems have been developed using sphinx engine. In this project work is aimed at developing acoustic model and language model for Malayalam.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Background Reading&#039;&#039;&#039;&lt;br /&gt;
* [http://www.cs.cmu.edu/~gopalakr/publications/spdatabases_specom05.pdf &#039;Development of Indian Language Speech Databases for Large Vocabulary Speech Recognition Systems&#039;], Gopalakrishna  Anumanchipalli, Rahul Chitturi, Sachin Joshi, Rohit Kumar, Satinder Pal Singh, R.N.V. Sitaram, S P Kishore&lt;br /&gt;
* [http://www.aclweb.org/anthology/W/W12/W12-5808.pdf &amp;quot;Automatic Pronunciation Evaluation And Mispronunciation Detection Using CMUSphinx&amp;quot;], Ronanki Srikanth, James Salsman&lt;br /&gt;
* http://www.speech.cs.cmu.edu/&lt;br /&gt;
* http://cmusphinx.sourceforge.net/wiki/tutorial&lt;br /&gt;
* [http://www.ijarcsse.com &amp;quot;HTK Based Telugu Speech Recognition&amp;quot;], P. Vijai Bhaskar, AVNIET ,Hyderabad, Prof. Dr. S. Rama Mohan Rao, A.Gopi &lt;br /&gt;
* [http://www.cs.cmu.edu/~araza/Automatic_Speech_Recognition_System_for_Urdu.PDF &amp;quot;Design and  Development of an Automatic Speech Recognition System for Urdu&amp;quot;], Agha Ali Raza,  M.Sc. Thesis, FAST‐National University of Computer and Emerging Sciences &lt;br /&gt;
* [http://www.ccis2k.org/iajit/PDF/vol.6,no.2/11IASRUCSS186.pdf &amp;quot;Investigation Arabic Speech Recognition Using CMU Sphinx System&amp;quot;], Hassan Satori1, 2, Hussein Hiyassat3, Mostafa Harti1, 2, and Noureddine Chenfour&lt;br /&gt;
* [http://www.try.idv.tw/static-resources/homework/pr/PR_Final_Report.pdf &amp;quot;Understanding the CMU Sphinx Speech Recognition System&amp;quot;], Chun-Feng Liao&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039; : &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Confirmed Mentor&#039;&#039;&#039; : &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;How to contact the mentor&#039;&#039;&#039;: IRC - deepagopinath on #smc-project on Freenode&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;: &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;What the students will learn&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==SILPA Project Based==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===SILPA Project Improvements===&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Project&#039;&#039;&#039;: &lt;br /&gt;
&lt;br /&gt;
This is set of ideas needed to improve the existing SILPA infrastructure. We have decided following tasks as part of this project&lt;br /&gt;
&lt;br /&gt;
# Provide REST API to SILPA without disturbing existing JSONRPC API&lt;br /&gt;
# Improve the Transliteration module&lt;br /&gt;
# Integrate [https://github.com/Project-SILPA/flask-webfonts Flask Webfonts] extension with SILPA to provide Webfonts support.&lt;br /&gt;
&lt;br /&gt;
==== Provide REST like API for SILPA ====&lt;br /&gt;
&lt;br /&gt;
SILPA provides JSONRPC API currently which is also utilized by the templates of framework. JSONRPC is not well supported in all languages and results in [https://en.wikipedia.org/wiki/Not_invented_here NIH code]. So we would like to provide REST like HTTP based API&#039;s for SILPA and at the same time leave the current JSONRPC code untouched for backward compatibility reasons.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Objectives&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
* Develop module or use existing module to provide REST like API&#039;s&lt;br /&gt;
* API should support GET and POST. [http://www.w3.org/2001/tag/doc/whenToUseGet.html When to use GET?].&lt;br /&gt;
&lt;br /&gt;
Many people have doubt on how the API should look like. We can give twitter API (https://dev.twitter.com/docs/api) as example &lt;br /&gt;
Sample API calls :&lt;br /&gt;
-------------------------------------------------------------&lt;br /&gt;
    POST api.silpa.org.in/payyans/ASCII2Unicode&lt;br /&gt;
    Paramets: text, font&lt;br /&gt;
    Response: JSON data&lt;br /&gt;
-------------------------------------------------------------&lt;br /&gt;
    POST api.silpa.org.in/payyans/Unicode2ASCII&lt;br /&gt;
    Paramets: text, font&lt;br /&gt;
    Response: JSON data&lt;br /&gt;
-------------------------------------------------------------&lt;br /&gt;
Generic: &lt;br /&gt;
    GET/POST (http://api.silpa.org.in/module/function_name or http://silpa.org.in/api/module/function_name)&lt;br /&gt;
    Parameters: function parameters&lt;br /&gt;
    Response: JSON encoded return value from function&lt;br /&gt;
&lt;br /&gt;
====  Improve Transliteration module ====&lt;br /&gt;
&lt;br /&gt;
We have a Transliteration module which supports transliteration from any Indic language to other Indic language and also support to English to Indic and Indic to English transliteration. Also we support IPA and ISO15919 transliteration system. But the module isn&#039;t in perfect shape and has lot of bugs. With this idea we would like to improve the following parts&lt;br /&gt;
&lt;br /&gt;
# Improve cross indic language transliteration system. Currently only Malayalam and Kannada are working without any external language support, all other Indian languages are first transliterated to Malayalam and then transliterated to target Indic language. We want to remove this cycle from source -&amp;gt; Malayalam -&amp;gt; target.&lt;br /&gt;
# English to IPA transliteration is currently broken and this needs to be fixed. See [https://github.com/Project-SILPA/Transliteration/issues/3 IPA transliteration bug].&lt;br /&gt;
# Once the IPA transliteration issue above is fixed, imporve English to Indic transliteration system using IPA. Currently English to Indic transliteration system is done using CMU Sphinx dictionary which is having limited set of words which inturn limits the output of English to Indic transliteration system.&lt;br /&gt;
# Improve IS015919 to Indic transliteration system see [https://github.com/Project-SILPA/Transliteration/issues/4 IS015919 to Indic transliteration].&lt;br /&gt;
&lt;br /&gt;
CLDR has transliteration data for Indic languages. We can explore it and see the feasibility. For an intermediate representation of the scripts either IPA can be used or ISO 15919 standard can be used. All these must be supplemented with exception rules and special case handling to achieve more perfect result.&lt;br /&gt;
&lt;br /&gt;
==== Integrating flask-webfonts extension with SILPA ====&lt;br /&gt;
&lt;br /&gt;
SILPA used to have a Webfonts module for serving Indian language fonts as Webfonts for browsers. During GSOC 2013 it was separated as an extension to Flask framework which can be generally used with any Flask powered app. The current code can be found at [https://github.com/Project-SILPA/flask-webfonts]. The module is not fine tuned yet so below are the objectives.&lt;br /&gt;
&lt;br /&gt;
# The module is not yet fine tuned and using it will make other modules break. This needs to be fixed (Can be checked with &#039;webfonts&#039; branch of SILPA code on github.&lt;br /&gt;
# Write tests to check the functionalities.&lt;br /&gt;
# Adhere to Flask extension guidelines and submit the modules to Flask extensions directory.&lt;br /&gt;
# Write a tool which can take a directory containing fonts file or single font file and generate configuration file needed by the extension. (A possible such tool which is outdated can be found at [https://github.com/copyninja/fontinfo])&lt;br /&gt;
# Provide HTTP api&#039;s through flask extension which can expose the CSS for applications.&lt;br /&gt;
&lt;br /&gt;
For all tasks above we expect documentation, test cases from the students as deliverable. &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039; : Intermediate&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Confirmed Mentors&#039;&#039;&#039; : &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;How to contact the mentors&#039;&#039;&#039;: IRC -&lt;br /&gt;
*Vasudev Kamath - copyninja on #smc-project and #silpa on Freenode&lt;br /&gt;
*Jishnu Mohan - jishnu7 on #smc-project and #silpa on Freenode&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Mailing List&#039;&#039;&#039;: silpa-discuss@nongnu.org &amp;lt;preferred&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;: Python , Flask , Jinja , HTML, Javascript&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;What the students will learn&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
# Writing applications using Flask&lt;br /&gt;
# Various Transliteration system knolwedge&lt;br /&gt;
# Webfonts knowledge and writing extensions for Flask&lt;br /&gt;
# Test drive development.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Converting indic processing modules currently in SILPA into javascript modules library===&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Project&#039;&#039;&#039;: &lt;br /&gt;
&lt;br /&gt;
Port some of the silpa algorithms to node modules. Several modules, alogorithms in SILPA project is done in python now. But porting them to javascript helps developers. For example, cross language transliteration can be done javascript too if we port the algorithm and transliteration rules. Similarly the approximate search can be ported. A flexibile fuzzy search on the web pages will be possible if we have the algorithm in javascript.&lt;br /&gt;
&lt;br /&gt;
Proposed javascript module pattern is https://github.com/umdjs/umd&lt;br /&gt;
&lt;br /&gt;
Student proposals should have a list of alogorithms planning to port, planned demo applications, planned documentation details, and publishing details(Example: npm registry)&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039; : &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Confirmed Mentor&#039;&#039;&#039; : &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;How to contact the mentor&#039;&#039;&#039;: IRC - jishnu7 santhosh on #smc-project and #silpa on Freenode&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039; Mailing List&#039;&#039;&#039;: silpa-discuss@nongnu.org&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;: javascript, python&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;What the students will learn&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
===Integrate Varnam into Silpa===&lt;br /&gt;
&lt;br /&gt;
Create a Silpa module which hosts [http://www.varnamproject.com varnam]. This includes making a python port for libvarnam and making a Silpa module which uses the python port. &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039; : Medium&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Confirmed Mentor&#039;&#039;&#039; : &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;How to contact the mentor&#039;&#039;&#039;: IRC - nkn__ on #smc-project and #silpa on Freenode&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039; Mailing List&#039;&#039;&#039;: silpa-discuss@nongnu.org&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;: C, Python&lt;br /&gt;
&lt;br /&gt;
==Varnam Based==&lt;br /&gt;
&lt;br /&gt;
Varnam is a cross-platform predictive transliterator for Indian languages. It works mostly like Google&#039;s transliterate, but shows key differences in the way word tokenization is done. It has a learning system built in which allows Varnam to make smart predictions. &lt;br /&gt;
&lt;br /&gt;
There are varnam clients available as [https://addons.mozilla.org/en-US/firefox/addon/varnam-transliteration-base/ Firefox]] &amp;amp; [https://chrome.google.com/webstore/detail/varnam-ime/abcfkeabpcanobhdmcmdabejaamephaf Chrome addon] and an [https://gitorious.org/varnamproject/libvarnam-ibus/source/d939adf50024013902c27310c03ef21a9210cdcb IBus engine].&lt;br /&gt;
&lt;br /&gt;
To try out Varnam, navigate to [http://varnamproject.com/editor[http://varnamproject.com/editor]]. Currently it support Hindi and Malayalam.&lt;br /&gt;
&lt;br /&gt;
* [http://www.varnamproject.com/docs/faq FAQ]&lt;br /&gt;
* [http://www.varnamproject.com/docs Documentation]&lt;br /&gt;
* [http://www.varnamproject.com/docs/contributing Contributors guide &amp;amp; ideas to work on]&lt;br /&gt;
&lt;br /&gt;
Apart from the following ideas, you can propose your own idea. &lt;br /&gt;
&lt;br /&gt;
===Programming language bindings &amp;amp; varnam-daemon===&lt;br /&gt;
&lt;br /&gt;
Varnam is written on C which makes interoperability with other languages easy. There are language bindings available for `NodeJs` and `Ruby`. Supporting Varnam in multiple languages allows projects to use varnam easily to enable Indian language input.&lt;br /&gt;
&lt;br /&gt;
To make using varnam from different languages easier, make a cross platform standalone process which uses `libvarnam` shared library and exposes a RPC API over network. This allows any programming language with a socket support can be used with libvarnam. This also makes language bindings fairly easy because they don&#039;t have to work with the native interoperability support. The protocol can be a simple text based protocol for all the commands that `libvarnam` supports. &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039; : Advanced&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Confirmed Mentor&#039;&#039;&#039; : &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;How to contact the mentor&#039;&#039;&#039;: IRC - nkn__ on #smc-project on Freenode&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;: C&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Improvements to the REST API===&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Project&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
This includes rewrite of the current implementation in `golang` and add support for WebSockets to improve the input experience. This also&lt;br /&gt;
includes making scripts that would ease embedding input on any webpage. All the changes done will go live on[1]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039; : Advanced&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Confirmed Mentor&#039;&#039;&#039; : &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;How to contact the mentor&#039;&#039;&#039;: IRC - nkn__ on #smc-project on Freenode&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;: Basic understanding of golang and C&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;What the students will learn&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
===Create an Android IME===&lt;br /&gt;
&lt;br /&gt;
Varnam will be ported as a Silpa module and it will be available on Android as part of the android SDK project which Silpa has proposed. This idea is merged to the [http://wiki.smc.org.in/SoC/2014/Project_ideas#Android_SDK_for_Silpa Silpa] project ideas.&lt;br /&gt;
&lt;br /&gt;
===Enable varnam&#039;s suggestions system to be used from Inscript or any other input system===&lt;br /&gt;
&lt;br /&gt;
Varnam has knowledge about lot of words. This idea proposes a method to use these words and provide suggestions for other input systems. Basically, in Varnam, the API call will be something like,&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;&amp;lt;pre&amp;gt;&lt;br /&gt;
varnam_get_suggestions (handle, &amp;quot;भारत&amp;quot;);&lt;br /&gt;
&amp;lt;/pre&amp;gt;&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This will fetch all the suggestions which has the given prefix. &lt;br /&gt;
&lt;br /&gt;
`varnam_get_suggestions` needs to keep track of the previous words and use [http://en.wikipedia.org/wiki/N-gram n-gram] based dataset to filter the results. This should also learn the words back into the word corpus that varnam is using. Filtering suggestions won&#039;t be just a prefix search, but it will have knowledge about how text can be written in the target language and provide smart filtering. Searching in a large corpus and providing real-time suggestions makes this a challenging task. &lt;br /&gt;
&lt;br /&gt;
Once this is implemented in `libvarnam`, it can be used in the ibus-engine.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039; : Advanced&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;:  C, Unicode &amp;amp; encodings&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Confirmed Mentor&#039;&#039;&#039; : &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;How to contact the mentor&#039;&#039;&#039;: IRC - nkn__ on #smc-project on Freenode&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Word corpus synchronization ===&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Project&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
Create a cross-platform synchronization tool which can upload/download the word corpus from offline IMEs like varnam-ibus[2]. This helps to build the online words corpus easily.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039; : Medium&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Confirmed Mentor&#039;&#039;&#039; : &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;How to contact the mentor&#039;&#039;&#039;: IRC - nkn__ on #smc-project on Freenode&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;:  Knowledge in C/golang&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;What the students will learn&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [1]: http://www.varnamproject.com&lt;br /&gt;
* [2]: https://gitorious.org/varnamproject/libvarnam-ibus/&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Grandham ==&lt;br /&gt;
&lt;br /&gt;
=== Adding MARC21 import/export feature in Grandham ===&lt;br /&gt;
&lt;br /&gt;
We need a feature in Grandham to import and parse data from MARC21 documents. We should also be able to export existing data in MARC21.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039; : High&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Confirmed Mentor&#039;&#039;&#039; :&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;How to contact the mentor&#039;&#039;&#039;: IRC - ershad on #smc-project on Freenode&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;: Knowledge in Ruby/Ruby on Rails&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;What the students will learn&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [1]: http://dev.grandham.org&lt;br /&gt;
* [2]: https://github.com/smc/grandham&lt;/div&gt;</summary>
		<author><name>Nandaja</name></author>
	</entry>
	<entry>
		<id>https://wiki.smc.org.in/index.php?title=GSoC/2014&amp;diff=4700</id>
		<title>GSoC/2014</title>
		<link rel="alternate" type="text/html" href="https://wiki.smc.org.in/index.php?title=GSoC/2014&amp;diff=4700"/>
		<updated>2014-03-10T16:22:49Z</updated>

		<summary type="html">&lt;p&gt;Nandaja: /* FAQ */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;div class=&#039;grid&#039;&amp;gt;&lt;br /&gt;
&amp;lt;span class=&#039;row highlight&#039;&amp;gt;SMC is participating in Google Summer of Code 2014&amp;lt;/span&amp;gt;&lt;br /&gt;
&amp;lt;div class=&#039;toc row&#039;&amp;gt;&lt;br /&gt;
&amp;lt;div class=&#039;three columns&#039;&amp;gt;&lt;br /&gt;
[[SoC/2014/Project_ideas|&#039;&#039;&#039;Project ideas&#039;&#039;&#039;]]&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;div class=&#039;three columns&#039;&amp;gt;&lt;br /&gt;
[[SoC/2014/application-template|&#039;&#039;&#039;Student application Template&#039;&#039;&#039;]]&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
[[file:Gsoc2014.png|right|thumb]]&lt;br /&gt;
==Status Updates==&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;February 25 , 2014&#039;&#039;&#039;&lt;br /&gt;
&amp;lt;div class=&#039;row&#039;&amp;gt;&lt;br /&gt;
&amp;lt;div class=&#039;six columns&#039;&amp;gt;&lt;br /&gt;
Really Happy to announce that We are selected for Google Summer of Code 2014. Google Summer of Code (GSoC) is a program that offers student developers stipends to write code for various open source projects. and this is the third time we are being selected as a mentoring organization.&lt;br /&gt;
&lt;br /&gt;
If you are a student and would be interested in participating in GSoC with Swathanthra Malayalam Computing as your mentoring organization, please take a look at our [http://wiki.smc.org.in/SoC/2014/Project_ideas GSoC Ideas] page:&lt;br /&gt;
&lt;br /&gt;
If you want to propose an idea, please do it in [http://lists.smc.org.in/listinfo.cgi/student-projects-smc.org.in student projects mailing list]&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;February 4 , 2014&#039;&#039;&#039;&lt;br /&gt;
&amp;lt;div class=&#039;row&#039;&amp;gt;&lt;br /&gt;
&amp;lt;div class=&#039;six columns&#039;&amp;gt;&lt;br /&gt;
* Mentoring Organization Applications Now Being Accepted for Google Summer of Code 2014! -  [http://google-opensource.blogspot.in/2014/02/mentoring-organization-applications-now.html Read More]&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==FAQ==&lt;br /&gt;
* &#039;&#039;&#039;Is it a requirement to know Malayalam to participate in GSoC as part of SMC?&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
It is not a requirement to know Malayalam to participated in GSoc&lt;br /&gt;
as part of SMC. But it will be good if you are good in some Indian&lt;br /&gt;
language along with listed technologies.&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;I have a project idea that is not listed in SMC project ideas. Can I propose new projects?&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Of course. You are encouraged to propose any fresh project ideas with as much as details you can give. If the idea matches with the objectives of SMC, we will be happy to evaluate it for GSOC. SMC is umbrella project for Project Silpa - an Indian language computing project. So you are welcome to submit proposals for other languages too. Be aware that availability of mentors for Non-Malayalam languages is limited.&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;I&#039;m interested in SILPA project ideas what I should do?&#039;&#039;&#039;&lt;br /&gt;
Glad to know, first thing is to clone code read the code try to deploy it and read the documentation [2] if you face problem try to ask us on IRC or here on this list or SILPA mailing list [3]&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;I&#039;ve set up the SILPA locally and read the code, now what?&#039;&#039;&#039;&lt;br /&gt;
Good now try to read tasks we have mentioned under ideas list, try to see which module we are talking about and understand the code. Show us Proof of concepts and what you worked on propose your own improvements to code.&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;I saw several ideas for SILPA project but now I see it has been clubbed into single one. So is it single idea now or multiple?&#039;&#039;&#039;&lt;br /&gt;
Its now clubbed as single idea because we felt individual ideas are pretty simple to implement so we made them into single. So now collective ideas are together called *SILPA improvements*. There is Varnam and other Javscript Android SDK ideas they are still independent ideas.&lt;br /&gt;
&lt;br /&gt;
[1] http://wiki.smc.org.in/SoC/2014/Project_ideas#SILPA_Project_Based&lt;br /&gt;
&lt;br /&gt;
[2] http://silpa.readthedocs.org&lt;br /&gt;
&lt;br /&gt;
[3] silpa-discuss at nongnu.org&lt;br /&gt;
&lt;br /&gt;
==Links==&lt;br /&gt;
* [https://www.google-melange.com/gsoc/homepage/google/gsoc2014 Google Summer of Code 2014 official website]&lt;br /&gt;
* [https://developers.google.com/open-source/soc/ GSoC page in Google Developers Website]&lt;br /&gt;
* [http://google-opensource.blogspot.in/search/label/gsoc GSoC News in Google Opensource Blog]&lt;br /&gt;
* If you want to propose an idea, please do it in [http://lists.smc.org.in/listinfo.cgi/student-projects-smc.org.in student projects mailing list]&lt;br /&gt;
* [https://www.youtube.com/watch?v=xQyyr_a9rQ4 Student application process]&lt;br /&gt;
* [http://www.google-melange.com/gsoc/events/google/gsoc2014 GSOC 2014 timeline]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== In news ==&lt;br /&gt;
* http://beta.mangalam.com/tech/tech-news/153590&lt;br /&gt;
* http://news.keralakaumudi.com/news.php?nid=5e08ab8bd979a8b12cf8acbbec7835b8&lt;br /&gt;
* http://www.mathrubhumi.com/technology/others/google-summer-of-code-2014-smc-swathanthra-malayalam-computing-malayalam-computing-433388/&lt;br /&gt;
* http://www.mediaonetv.in/news/22571/fri-02282014-1932&lt;br /&gt;
* http://digitalpaper.mathrubhumi.com/c/2477711&lt;/div&gt;</summary>
		<author><name>Nandaja</name></author>
	</entry>
	<entry>
		<id>https://wiki.smc.org.in/index.php?title=GSoC/2014&amp;diff=4699</id>
		<title>GSoC/2014</title>
		<link rel="alternate" type="text/html" href="https://wiki.smc.org.in/index.php?title=GSoC/2014&amp;diff=4699"/>
		<updated>2014-03-10T16:22:04Z</updated>

		<summary type="html">&lt;p&gt;Nandaja: /* FAQ */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;div class=&#039;grid&#039;&amp;gt;&lt;br /&gt;
&amp;lt;span class=&#039;row highlight&#039;&amp;gt;SMC is participating in Google Summer of Code 2014&amp;lt;/span&amp;gt;&lt;br /&gt;
&amp;lt;div class=&#039;toc row&#039;&amp;gt;&lt;br /&gt;
&amp;lt;div class=&#039;three columns&#039;&amp;gt;&lt;br /&gt;
[[SoC/2014/Project_ideas|&#039;&#039;&#039;Project ideas&#039;&#039;&#039;]]&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;div class=&#039;three columns&#039;&amp;gt;&lt;br /&gt;
[[SoC/2014/application-template|&#039;&#039;&#039;Student application Template&#039;&#039;&#039;]]&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
[[file:Gsoc2014.png|right|thumb]]&lt;br /&gt;
==Status Updates==&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;February 25 , 2014&#039;&#039;&#039;&lt;br /&gt;
&amp;lt;div class=&#039;row&#039;&amp;gt;&lt;br /&gt;
&amp;lt;div class=&#039;six columns&#039;&amp;gt;&lt;br /&gt;
Really Happy to announce that We are selected for Google Summer of Code 2014. Google Summer of Code (GSoC) is a program that offers student developers stipends to write code for various open source projects. and this is the third time we are being selected as a mentoring organization.&lt;br /&gt;
&lt;br /&gt;
If you are a student and would be interested in participating in GSoC with Swathanthra Malayalam Computing as your mentoring organization, please take a look at our [http://wiki.smc.org.in/SoC/2014/Project_ideas GSoC Ideas] page:&lt;br /&gt;
&lt;br /&gt;
If you want to propose an idea, please do it in [http://lists.smc.org.in/listinfo.cgi/student-projects-smc.org.in student projects mailing list]&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;February 4 , 2014&#039;&#039;&#039;&lt;br /&gt;
&amp;lt;div class=&#039;row&#039;&amp;gt;&lt;br /&gt;
&amp;lt;div class=&#039;six columns&#039;&amp;gt;&lt;br /&gt;
* Mentoring Organization Applications Now Being Accepted for Google Summer of Code 2014! -  [http://google-opensource.blogspot.in/2014/02/mentoring-organization-applications-now.html Read More]&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==FAQ==&lt;br /&gt;
* &#039;&#039;&#039;Is it a requirement to know Malayalam to participate in GSoC as part of SMC?&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
It is not a requirement to know Malayalam to participated in GSoc&lt;br /&gt;
as part of SMC. But it will be good if you are good in some Indian&lt;br /&gt;
language along with listed technologies.&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;I have a project idea that is not listed in SMC project ideas. Can I propose new projects?&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Of course. You are encouraged to propose any fresh project ideas with as much as details you can give. If the idea matches with the objectives of SMC, we will be happy to evaluate it for GSOC. SMC is umbrella project for Project Silpa - an Indian language computing project. So you are welcome to submit proposals for other languages too. Be aware that availability of mentors for Non-Malayalam languages is limited.&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;I&#039;m interested in SILPA project ideas what I should do?&#039;&#039;&#039;&lt;br /&gt;
Glad to know, first thing is to clone code read the code try to deploy it and read the documentation [2] if you face problem try to ask us on IRC or here on this list or SILPA mailing list [3]&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;I&#039;ve set up the SILPA locally and read the code, now what?&#039;&#039;&#039;&lt;br /&gt;
Good now try to read tasks we have mentioned under ideas list, try to see which module we are talking about and understand the code. Show us Proof of concepts and what you worked on propose your own improvements to code.&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;I saw several ideas for SILPA project but now I see it has been clubbed into single one. So is it single idea now or multiple?&#039;&#039;&#039;&lt;br /&gt;
Its now clubbed as single idea because we felt individual ideas are pretty simple to implement so we made them into single. So now collective ideas are together called *SILPA improvements*. There is Varnam and other Javscript Android SDK ideas they are still independent ideas.&lt;br /&gt;
&lt;br /&gt;
[1] http://wiki.smc.org.in/SoC/2014/Project_ideas#SILPA_Project_Based&lt;br /&gt;
[2] http://silpa.readthedocs.org&lt;br /&gt;
[3] silpa-discuss at nongnu.org&lt;br /&gt;
&lt;br /&gt;
==Links==&lt;br /&gt;
* [https://www.google-melange.com/gsoc/homepage/google/gsoc2014 Google Summer of Code 2014 official website]&lt;br /&gt;
* [https://developers.google.com/open-source/soc/ GSoC page in Google Developers Website]&lt;br /&gt;
* [http://google-opensource.blogspot.in/search/label/gsoc GSoC News in Google Opensource Blog]&lt;br /&gt;
* If you want to propose an idea, please do it in [http://lists.smc.org.in/listinfo.cgi/student-projects-smc.org.in student projects mailing list]&lt;br /&gt;
* [https://www.youtube.com/watch?v=xQyyr_a9rQ4 Student application process]&lt;br /&gt;
* [http://www.google-melange.com/gsoc/events/google/gsoc2014 GSOC 2014 timeline]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== In news ==&lt;br /&gt;
* http://beta.mangalam.com/tech/tech-news/153590&lt;br /&gt;
* http://news.keralakaumudi.com/news.php?nid=5e08ab8bd979a8b12cf8acbbec7835b8&lt;br /&gt;
* http://www.mathrubhumi.com/technology/others/google-summer-of-code-2014-smc-swathanthra-malayalam-computing-malayalam-computing-433388/&lt;br /&gt;
* http://www.mediaonetv.in/news/22571/fri-02282014-1932&lt;br /&gt;
* http://digitalpaper.mathrubhumi.com/c/2477711&lt;/div&gt;</summary>
		<author><name>Nandaja</name></author>
	</entry>
	<entry>
		<id>https://wiki.smc.org.in/index.php?title=GSoC/2014/Project_ideas&amp;diff=4638</id>
		<title>GSoC/2014/Project ideas</title>
		<link rel="alternate" type="text/html" href="https://wiki.smc.org.in/index.php?title=GSoC/2014/Project_ideas&amp;diff=4638"/>
		<updated>2014-02-28T12:57:36Z</updated>

		<summary type="html">&lt;p&gt;Nandaja: /* Provide REST API for new flask based Silpa, including conversion of templates to this REST API from JSON RPC */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;center&amp;gt; &lt;br /&gt;
&amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt; &amp;lt;big&amp;gt;&#039;&#039;&#039;Apart from the following ideas , you can propose your own ideas&#039;&#039;&#039;&amp;lt;/big&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Potential Mentors=&lt;br /&gt;
# Santhosh Thottingal (&#039;&#039;&#039;santhosh&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Baiju M (&#039;&#039;&#039;baijum&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Praveen A (&#039;&#039;&#039;j4v4m4n&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Rajeesh K Nambiar (&#039;&#039;&#039;rajeeshknambiar&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Vasudev Kammath (&#039;&#039;&#039;copyninja&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Jishnu Mohan (&#039;&#039;&#039;jishnu7&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Hrishikesh K.B (&#039;&#039;&#039;stultus&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Anivar Aravind (&#039;&#039;&#039;anivar&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Anilkumar K V (&#039;&#039;&#039;anilkumar&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Sajjad Anwar (&#039;&#039;&#039;geohacker&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Deepa V Gopinath (&#039;&#039;&#039;deepagopinath&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# jain Basil  (&#039;&#039;&#039;jainbasil&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Ershad K (&#039;&#039;&#039;ershad&#039;&#039;&#039; on irc.freenode.net&lt;br /&gt;
# Navaneeth (&#039;&#039;&#039;nkn__&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Nishan Naseer (&#039;&#039;&#039;nishan&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Nandaja Varma (&#039;&#039;&#039;gem&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
&lt;br /&gt;
=Ideas for Google Summer of Code 2014=&lt;br /&gt;
* Please Read the [http://wiki.smc.org.in/SoC/2014#FAQ FAQ]&lt;br /&gt;
* If you want to propose an idea, please do it in [http://lists.smc.org.in/listinfo.cgi/student-projects-smc.org.in student projects mailing list]&lt;br /&gt;
&lt;br /&gt;
=Projects with confirmed mentors=&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== A spell checker for Indic language that understands inflections ==&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Project&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
SILPA project has a spellchecker written using python with a not so simple algorithm. But still it is not capable of handling inflection and agglutination occurring in Indian languages especially south Indian languages. The dictionary we have for Malayalam spellchecker have about 150000 words. Of course we can expand the dictionary, but that doesn&#039;t have much value since words can be formed in Malayalam or Tamil etc by joining multiple words. In addition to that, words get inflected based on grammar forms(sandhi), plural, gender etc. Hunspell has a system to handle this, but so far nobody succeeded in getting it working for multi level suffix stripping as required for Malayalam. Some times a Malayalam word can be formed by more than 5 words joining together. We will need a word splitting logic or a table taking care of all patterns. The project is to attempt solving this with hunspell. If that is not feasible(hunspell upstream is not active), develop an algorithm and implement it.&lt;br /&gt;
&lt;br /&gt;
Recently Tamil attempted developing a spellchecker using Hunspell with multi level suffix stripping. You can see the result here https://github.com/thamizha/solthiruthi. &lt;br /&gt;
Our attempt should be first to use Hunspell to achieve spellchecking with agglutination and inflection. Probably it will require lot of scripting to generate suffix patterns, we can ask help from existing language communities too. If Hunspell has limitation with multi level suffxes- sometimes Indian languages require more than 5 levels of suffix stripping, we need to document it(bug and documentation) and try to attempt python based solution on top of SILPA framework.&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;[https://savannah.nongnu.org/task/index.php?12558 Savannah Task]&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039;: Advanced&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Confirmed Mentor&#039;&#039;&#039;: Santhosh Thottingal&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;How to contact the mentor&#039;&#039;&#039;: IRC - santhosh on #smc-project on Freenode&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;: Average level understanding of grammar system of at least one Indian language&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;What the student will learn&#039;&#039;&#039;: &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Indic rendering support in ConTeXt==&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Project&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
ConTeXt is another TeX macro system similar to LaTeX but much more suitable for design. To find more information about ConTeXt, see the wiki http://wiki.contextgarden.net/Main_Page. ConTeXt MKII  have Indic language rendering support using XeTeX. but MKII is deprecated, and the new MKIV backend doesn&#039;t support Indic rendering yet. The aim of this project is to add support to Inidic rendering to ConTeXt MKIV. XeTeX is using Harfbuzz to do correct Indic rendering.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;More Details&#039;&#039;&#039;: A partially working patch by Rajeesh for MKIV lua code is available. ConTeXt mkii (deprecated) can work with XeTeX backend for Indic rendering. Here is a sample file:&lt;br /&gt;
 \usemodule[simplefonts]&lt;br /&gt;
 \definefontfeature[malayalam][script=mlym]&lt;br /&gt;
 \setmainfont[Rachana][features=malayalam]&lt;br /&gt;
 \starttext&lt;br /&gt;
 മലയാളം \TeX ഉപയോഗിച്ച് ടൈപ്പ്സെറ്റ് ചെയ്തത്&lt;br /&gt;
 \stoptext&lt;br /&gt;
Generate the output using command&lt;br /&gt;
 texexec --xetex &amp;lt;file.tex&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;[https://savannah.nongnu.org/task/index.php?12559 Savannah Task]&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039; : Advanced&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Confirmed Mentor&#039;&#039;&#039; : Rajeesh K Nambiar&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;How to contact the mentor&#039;&#039;&#039;: IRC - rajeeshknambiar on #smc-project on Freenode&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;: Understanding of the TeX system, experience in either LaTeX or ConTeXt and basic understanding of Indic language rendering. MKIV uses Lua, familiarity with Lua, opentype specifications or Harfbuzz will be added advantage.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;What the students will learn&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Language model and Acoustic model for Malayalam language for speech recognition system in CMU Sphinx==&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Project&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
CMU Sphinx is a large vocabulary, speaker independent speech recognition codebase and suite of tools, which can be used to develop speech recognition system in any language. To develop an automatic speech recognition system in a language, acoustic model and language model has to framed for that particular language.  Acoustic models characterize how sound changes over time. It captures the characteristics of basic recognition units. The language model describes the likelihood, probability, or penalty taken when a sequence or collection of words is seen. It attempts to convey behavior of the language and tries to predict the occurrence of specific word sequences possible in the language. Once these two models are developed, it will be useful to every one doing research in speech processing. For Indian languages Hindi, Tamil, Telugu and Marati, ASR systems have been developed using sphinx engine. In this project work is aimed at developing acoustic model and language model for Malayalam.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Background Reading&#039;&#039;&#039;&lt;br /&gt;
* [http://www.cs.cmu.edu/~gopalakr/publications/spdatabases_specom05.pdf &#039;Development of Indian Language Speech Databases for Large Vocabulary Speech Recognition Systems&#039;], Gopalakrishna  Anumanchipalli, Rahul Chitturi, Sachin Joshi, Rohit Kumar, Satinder Pal Singh, R.N.V. Sitaram, S P Kishore&lt;br /&gt;
* [http://www.aclweb.org/anthology/W/W12/W12-5808.pdf &amp;quot;Automatic Pronunciation Evaluation And Mispronunciation Detection Using CMUSphinx&amp;quot;], Ronanki Srikanth, James Salsman&lt;br /&gt;
* http://www.speech.cs.cmu.edu/&lt;br /&gt;
* http://cmusphinx.sourceforge.net/wiki/tutorial&lt;br /&gt;
* [http://www.ijarcsse.com &amp;quot;HTK Based Telugu Speech Recognition&amp;quot;], P. Vijai Bhaskar, AVNIET ,Hyderabad, Prof. Dr. S. Rama Mohan Rao, A.Gopi &lt;br /&gt;
* [http://www.cs.cmu.edu/~araza/Automatic_Speech_Recognition_System_for_Urdu.PDF &amp;quot;Design and  Development of an Automatic Speech Recognition System for Urdu&amp;quot;], Agha Ali Raza,  M.Sc. Thesis, FAST‐National University of Computer and Emerging Sciences &lt;br /&gt;
* [http://www.ccis2k.org/iajit/PDF/vol.6,no.2/11IASRUCSS186.pdf &amp;quot;Investigation Arabic Speech Recognition Using CMU Sphinx System&amp;quot;], Hassan Satori1, 2, Hussein Hiyassat3, Mostafa Harti1, 2, and Noureddine Chenfour&lt;br /&gt;
* [http://www.try.idv.tw/static-resources/homework/pr/PR_Final_Report.pdf &amp;quot;Understanding the CMU Sphinx Speech Recognition System&amp;quot;], Chun-Feng Liao&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039; : &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Confirmed Mentor&#039;&#039;&#039; : Deepa P Gopinath&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;How to contact the mentor&#039;&#039;&#039;: IRC - deepagopinath on #smc-project on Freenode&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;: &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;What the students will learn&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Silpa based==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Provide REST API for new flask based Silpa, including conversion of templates to this REST API from JSON RPC===&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Project&#039;&#039;&#039;: &lt;br /&gt;
&lt;br /&gt;
Silpa is now relying on JSONRPC. We need to, either completely move to REST API or provide REST API as an additional feature.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Objectives&#039;&#039;&#039;:&lt;br /&gt;
*Use Flask-Restuful and write separate module without modifying existing  JSONRPC. JSONRPC need to be present to allow backward compatibility&lt;br /&gt;
*Both GET and POST should be supported. Deverloper can decide on what to use. (Do we need this?)&lt;br /&gt;
Many people have doubt on how the API should look like. We can give twitter API (https://dev.twitter.com/docs/api) as example &lt;br /&gt;
Sample API calls :&lt;br /&gt;
-------------------------------------------------------------&lt;br /&gt;
    POST api.silpa.org.in/payyans/ASCII2Unicode&lt;br /&gt;
    Paramets: text, font&lt;br /&gt;
    Response: JSON data&lt;br /&gt;
-------------------------------------------------------------&lt;br /&gt;
    POST api.silpa.org.in/payyans/Unicode2ASCII&lt;br /&gt;
    Paramets: text, font&lt;br /&gt;
    Response: JSON data&lt;br /&gt;
-------------------------------------------------------------&lt;br /&gt;
Generic: &lt;br /&gt;
    GET/POST (http://api.silpa.org.in/module/function_name or http://silpa.org.in/api/module/function_name)&lt;br /&gt;
    Parameters: function parameters&lt;br /&gt;
    Response: JSON encoded return value from function&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039; : Easy&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Confirmed Mentors&#039;&#039;&#039; : Vasudev Kamath, Jishnu Mohan&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;How to contact the mentors&#039;&#039;&#039;: IRC -&lt;br /&gt;
*Vasudev Kamath - copyninja on #smc-project and #silpa on Freenode&lt;br /&gt;
*Jishnu Mohan - jishnu7 on #smc-project and #silpa on Freenode&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;: Python , Flask , Jinja , HTML, Javascript&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;What the students will learn&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
===Android SDK for Silpa===&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Project&#039;&#039;&#039;: &lt;br /&gt;
&lt;br /&gt;
Port possible Silpa modules to java and create SDK so that other developers can use this for their apps. Modules like Indic Render, Transliteration, Payyas has really good potential in android because of the fragmentation exists in Android and lack for proper Indic support. This SDK will help developers to support their Indic app in wide range of android devices.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Objectives&#039;&#039;&#039;:&lt;br /&gt;
&amp;lt;Please note this idea is for a SDK, not an app or just a java port&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*All modules need to be ported to java so that it can be used inside an Android Project.&lt;br /&gt;
*Other applications should be able to use this Silpa library to easy integrate features (as a SDK) from our modules. Eg.&lt;br /&gt;
**Transliteration - Developer can specify a text input inside the  application needs transliteration, and our SDK should take care of the  transliteration process whenever user inputs text to that field.&lt;br /&gt;
**Render module - Detect whether necessary font is available in the  system, if it is not, render text as image and replace text with this.&lt;br /&gt;
**All modules can be explained like this.&lt;br /&gt;
*Investigate whether image rendering part of render module can be done in device, inside application itself. Few ways to implement that are&lt;br /&gt;
**Compiling cairo/pango with ndk&lt;br /&gt;
**Compiling Harffbuzz from AOSP tree with ndk&lt;br /&gt;
**Based on the result of rendering module investigation, we can device on whether to use server side rendering or not.&lt;br /&gt;
**Pack popular fonts with the SDK, Use it to display text if device doesn&#039;t have required font. (there are few hacks to get better rendering in older versions of android). Developer should be able to force rendering using packaged font, to get consistency across devices.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;Better to prepare SDK with helper than preparing application itself. SDK aka library&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039; : Advanced&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Confirmed Mentors&#039;&#039;&#039; : Hrishikesh K. B, Jishnu Mohan, Aashik S&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;How to contact the mentor&#039;&#039;&#039;: IRC -&lt;br /&gt;
*Hrishikesh K B - stultus on on #smc-project and #silpa on Freenode&lt;br /&gt;
*Jishnu Mohan - jishnu7 on #smc-project and #silpa on Freenode&lt;br /&gt;
*Aashik S - irumbumoideen on #smc-project on Freenode&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;: Java, Android, Python&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;What the students will learn&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
===Converting indic processing modules currently in SILPA into javascript modules library===&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Project&#039;&#039;&#039;: &lt;br /&gt;
&lt;br /&gt;
Port some of the silpa algorithms to node modules. Several modules, alogorithms in SILPA project is done in python now. But porting them to javascript helps developers. For example, cross language transliteration can be done javascript too if we port the algorithm and transliteration rules. Similarly the approximate search can be ported. A flexibile fuzzy search on the web pages will be possible if we have the algorithm in javascript.&lt;br /&gt;
&lt;br /&gt;
Proposed javascript module pattern is https://github.com/umdjs/umd&lt;br /&gt;
&lt;br /&gt;
Student proposals should have a list of alogorithms planning to port, planned demo applications, planned documentation details, and publishing details(Example: npm registry)&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039; : &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Confirmed Mentor&#039;&#039;&#039; : Jishnu Mohan&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;How to contact the mentor&#039;&#039;&#039;: IRC - jishnu7 on #smc-project and #silpa on Freenode&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;: javascript, python&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;What the students will learn&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===  Improving cross language transliteration system.  ===&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Project&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
Currently only Kannada and Malayalam are perfect rest all are first converted to Malayalam then to English due to lack of language internal. Also currently for English to Indic we use CMUDict so transliteration capability is limited to words in CMUDict only probably we could develop better method for English to Indic transliteration. Current Indic to English and vice versa transliteration depends on CMUSphinx dictionary which is having limited set of words which will result in some words being left in native text.&lt;br /&gt;
&lt;br /&gt;
CLDR has transliteration data for Indic languages. We can explore it and see the feasibility. For an intermediate representation of the scripts either IPA can be used or ISO 15919 standard can be used. All these must be supplemented with exception rules and special case handling to achieve more perfect result.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039; : Easy&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Confirmed Mentors&#039;&#039;&#039; : Vasudev Kamath, Jishnu Mohan&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;How to contact the mentor&#039;&#039;&#039;: IRC -&lt;br /&gt;
*Vasudev Kamath - copyninja on #smc-project and #silpa on Freenode&lt;br /&gt;
*Jishnu Mohan - jishnu7 on #smc-project and #silpa on Freenode&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;: Python&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;What the students will learn&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
=== Internationalize SILPA project with Wikimedia jquery projects ,  Improve  the webfonts module in Silpa using jquery.webfonts and provide more Indic and complex fonts as part of it ===&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Project&#039;&#039;&#039;: &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Internationalize SILPA&#039;&#039;&#039; :-  &lt;br /&gt;
SILPA project has many Indic language applications, but as of now, if somebody want to input in Indian languages, there is no built in tool in it. Similarly, the application is not internationalized. Both of these can be achieved by using the [//github.com/wikimedia/jquery.ime jquery.ime] and [//github.com/wikimedia/jquery.ime jquery.i18n] libraries from Wikimedia. A sample implementation is avaliable in our [http://smc.org.in website]. The i18n should be in the SILPA flask framework with a nice templating system. Similarly the interface should have webfonts using [https://github.com/wikimedia/jquery.webfonts jquery.webfonts] library.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Improve  the webfonts &#039;&#039;&#039; :- &lt;br /&gt;
* Currently Silpa provides 36 webfonts. add more fonts to this collection.&lt;br /&gt;
* Rewrote webfonts module to use the features of jquery.webfonts&lt;br /&gt;
* Create a repo as per jquery.webfonts specification&lt;br /&gt;
* Provide a clean api so that other websites can use our webfonts in their websites&lt;br /&gt;
* Document the usage&lt;br /&gt;
* Provide font preview and download options  &lt;br /&gt;
* **This is partly done**(Task from last GSoC)&lt;br /&gt;
* flask-webfonts needs further improvements and fine tuning&lt;br /&gt;
* This should be integrated into our SILPA and submitted to Flask&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;More Details&#039;&#039;&#039;&lt;br /&gt;
* [https://github.com/wikimedia/jquery.i18n jquery.i18n]&lt;br /&gt;
* [https://github.com/wikimedia/jquery.ime jquery.ime]&lt;br /&gt;
* [https://github.com/wikimedia/jquery.webfonts jquery.webfonts]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039; : Medium&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Confirmed Mentors&#039;&#039;&#039; : Vasudev Kamath, Jishnu Mohan&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;How to contact the mentor&#039;&#039;&#039;: IRC&lt;br /&gt;
*Vasudev Kamath - copyninja on #smc-project and #silpa on Freenode&lt;br /&gt;
*Jishnu Mohan - jishnu7 on #smc-project and #silpa on Freenode&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;: jQuery, css, html5, Python , flask , technical understanding about fonts&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;What the students will learn&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
==Language filter for diaspora==&lt;br /&gt;
&lt;br /&gt;
Diaspora is a Free Software, federated social networking platform. Diaspora users post in many languages. When people use more than one language in their posts, it is inconvenient for people who don&#039;t understand a language. This task is to tag every post with languages used in the post, ideally detected automatically, but with an option to override it. Once each post has a language tag, people should be able to choose their preferred language and posts in other languages should be hidden by default. Also provide an option to translate posts and comments.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039; : &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Confirmed Mentors&#039;&#039;&#039; : Pirate Praveen, Ershad K&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;How to contact the mentors&#039;&#039;&#039;: IRC  &lt;br /&gt;
*Pirate Praveen - j4v4m4n on #smc-project on Freenode&lt;br /&gt;
*Ershad K - ershad on #smc-project on Freenode&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;: Ruby on Rails&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;What the students will learn&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Varnam Based==&lt;br /&gt;
&lt;br /&gt;
Varnam is a cross-platform predictive transliterator for Indian languages. It works mostly like Google&#039;s transliterate, but shows key differences in the way word tokenization is done. It has a learning system built in which allows Varnam to make smart predictions. &lt;br /&gt;
&lt;br /&gt;
There are varnam clients available as [https://addons.mozilla.org/en-US/firefox/addon/varnam-transliteration-base/ Firefox]] &amp;amp; [https://chrome.google.com/webstore/detail/varnam-ime/abcfkeabpcanobhdmcmdabejaamephaf Chrome addon] and an [https://gitorious.org/varnamproject/libvarnam-ibus/source/d939adf50024013902c27310c03ef21a9210cdcb IBus engine].&lt;br /&gt;
&lt;br /&gt;
To try out Varnam, navigate to [http://varnamproject.com/editor[http://varnamproject.com/editor]]. Currently it support Hindi and Malayalam.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Improvements to the REST API===&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Project&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
This includes rewrite of the current implementation in `golang` and add support for WebSockets to improve the input experience. This also&lt;br /&gt;
includes making scripts that would ease embedding input on any webpage. All the changes done will go live on[1]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039; : Advanced&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Confirmed Mentor&#039;&#039;&#039; : Navaneeth K N&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;How to contact the mentor&#039;&#039;&#039;: IRC - nkn__ on #smc-project on Freenode&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;: Basic understanding of golang and C&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;What the students will learn&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Improve the learning system===&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Project&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
The main goal of this is to improve how varnam tokenizes when learning words. Today, when a word is learned, varnam takes all the possible prefixes into account and learn all of them to improve future suggestions. But sometimes, this is not enough to predict good suggestions. An improvement is suggested which will try to infer the base form of the word under learning.&lt;br /&gt;
&lt;br /&gt;
Varnam has a learning system built-in which can learn words and it can also learn possible other ways to write a word. Consider the following example. &lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
learn(&amp;quot;भारत&amp;quot;) = [bharat, bhaarath, bharath]&lt;br /&gt;
transliterate(&amp;quot;bharat&amp;quot;) = भारत&lt;br /&gt;
transliterate(&amp;quot;bhaarath&amp;quot;) = भारत&lt;br /&gt;
transliterate(&amp;quot;bharath&amp;quot;) = भारत&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Varnam also learns a word&#039;s prefixes so that it can produce better predictions for any word which has the same prefix. So in this case, with just learning the word &amp;quot;भारत&amp;quot;, varnam can predict &amp;quot;bharateey&amp;quot; = &amp;quot;भारतीय&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
The proposed idea talks about making this learn better. One example is infer the word &amp;quot;भारत&amp;quot; when learning भारतीय. Something like a porter stemmer implementation but integrated into the varnam framework so that&lt;br /&gt;
new language support can be added easily.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039; : Medium&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Confirmed Mentor&#039;&#039;&#039; : Navaneeth K N&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;How to contact the mentor&#039;&#039;&#039;: IRC - nkn__ on #smc-project on Freenode&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;:  Knowledge in C, Ruby (basics)&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;What the students will learn&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Word corpus synchronization ===&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Project&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
Create a cross-platform synchronization tool which can upload/download the word corpus from offline IMEs like varnam-ibus[2]. This helps to build the online words corpus easily.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039; : Medium&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Confirmed Mentor&#039;&#039;&#039; : Navaneeth K N&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;How to contact the mentor&#039;&#039;&#039;: IRC - nkn__ on #smc-project on Freenode&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;:  Knowledge in C/golang&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;What the students will learn&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [1]: http://www.varnamproject.com&lt;br /&gt;
* [2]: https://gitorious.org/varnamproject/libvarnam-ibus/&lt;br /&gt;
&lt;br /&gt;
==Adding Braille Keyboard layouts for Indian Languages to m17n Library==&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Project&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
Project is building support for Bharati Braille keyboard layouts in GNU/Linux systemes.  Bharati Braille standard is the official Braille standard in India. A regular QWERTY keyboard is used for data entry. SDF-JKL keys are used for six dots of Braille. This support need to be built as m17n layouts. This will enable visually challenged people who studied braille layouts to use GNU/Linux systems easily with the help of Audio feedback from TTS&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;More Details&#039;&#039;&#039;&lt;br /&gt;
* http://www.acharya.gen.in:8080/disabilities/bh_brl.php&lt;br /&gt;
* http://en.wikipedia.org/wiki/Bharati_Braille&lt;br /&gt;
* http://www.nongnu.org/m17n/&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039; : &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Confirmed Mentor&#039;&#039;&#039; : Anivar Aravind&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;How to contact the mentor&#039;&#039;&#039;: IRC - anivar on #smc-project on Freenode&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;: &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;What the students will learn&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Grandham ==&lt;br /&gt;
&lt;br /&gt;
=== Adding MARC21 import/export feature in Grandham ===&lt;br /&gt;
&lt;br /&gt;
We need a feature in Grandham to import and parse data from MARC21 documents. We should also be able to export existing data in MARC21.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039; : High&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Confirmed Mentor&#039;&#039;&#039; : Ershad K&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;How to contact the mentor&#039;&#039;&#039;: IRC - ershad on #smc-project on Freenode&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;: Knowledge in Ruby/Ruby on Rails&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;What the students will learn&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [1]: http://dev.grandham.org&lt;br /&gt;
* [2]: https://github.com/smc/grandham&lt;br /&gt;
&lt;br /&gt;
=Projects with unconfirmed mentors=&lt;/div&gt;</summary>
		<author><name>Nandaja</name></author>
	</entry>
	<entry>
		<id>https://wiki.smc.org.in/index.php?title=GSoC/2014/Project_ideas&amp;diff=4637</id>
		<title>GSoC/2014/Project ideas</title>
		<link rel="alternate" type="text/html" href="https://wiki.smc.org.in/index.php?title=GSoC/2014/Project_ideas&amp;diff=4637"/>
		<updated>2014-02-28T12:50:15Z</updated>

		<summary type="html">&lt;p&gt;Nandaja: /* Improving cross language transliteration system. */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;center&amp;gt; &lt;br /&gt;
&amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt; &amp;lt;big&amp;gt;&#039;&#039;&#039;Apart from the following ideas , you can propose your own ideas&#039;&#039;&#039;&amp;lt;/big&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Potential Mentors=&lt;br /&gt;
# Santhosh Thottingal (&#039;&#039;&#039;santhosh&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Baiju M (&#039;&#039;&#039;baijum&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Praveen A (&#039;&#039;&#039;j4v4m4n&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Rajeesh K Nambiar (&#039;&#039;&#039;rajeeshknambiar&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Vasudev Kammath (&#039;&#039;&#039;copyninja&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Jishnu Mohan (&#039;&#039;&#039;jishnu7&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Hrishikesh K.B (&#039;&#039;&#039;stultus&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Anivar Aravind (&#039;&#039;&#039;anivar&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Anilkumar K V (&#039;&#039;&#039;anilkumar&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Sajjad Anwar (&#039;&#039;&#039;geohacker&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Deepa V Gopinath (&#039;&#039;&#039;deepagopinath&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# jain Basil  (&#039;&#039;&#039;jainbasil&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Ershad K (&#039;&#039;&#039;ershad&#039;&#039;&#039; on irc.freenode.net&lt;br /&gt;
# Navaneeth (&#039;&#039;&#039;nkn__&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Nishan Naseer (&#039;&#039;&#039;nishan&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Nandaja Varma (&#039;&#039;&#039;gem&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
&lt;br /&gt;
=Ideas for Google Summer of Code 2014=&lt;br /&gt;
* Please Read the [http://wiki.smc.org.in/SoC/2014#FAQ FAQ]&lt;br /&gt;
* If you want to propose an idea, please do it in [http://lists.smc.org.in/listinfo.cgi/student-projects-smc.org.in student projects mailing list]&lt;br /&gt;
&lt;br /&gt;
=Projects with confirmed mentors=&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== A spell checker for Indic language that understands inflections ==&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Project&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
SILPA project has a spellchecker written using python with a not so simple algorithm. But still it is not capable of handling inflection and agglutination occurring in Indian languages especially south Indian languages. The dictionary we have for Malayalam spellchecker have about 150000 words. Of course we can expand the dictionary, but that doesn&#039;t have much value since words can be formed in Malayalam or Tamil etc by joining multiple words. In addition to that, words get inflected based on grammar forms(sandhi), plural, gender etc. Hunspell has a system to handle this, but so far nobody succeeded in getting it working for multi level suffix stripping as required for Malayalam. Some times a Malayalam word can be formed by more than 5 words joining together. We will need a word splitting logic or a table taking care of all patterns. The project is to attempt solving this with hunspell. If that is not feasible(hunspell upstream is not active), develop an algorithm and implement it.&lt;br /&gt;
&lt;br /&gt;
Recently Tamil attempted developing a spellchecker using Hunspell with multi level suffix stripping. You can see the result here https://github.com/thamizha/solthiruthi. &lt;br /&gt;
Our attempt should be first to use Hunspell to achieve spellchecking with agglutination and inflection. Probably it will require lot of scripting to generate suffix patterns, we can ask help from existing language communities too. If Hunspell has limitation with multi level suffxes- sometimes Indian languages require more than 5 levels of suffix stripping, we need to document it(bug and documentation) and try to attempt python based solution on top of SILPA framework.&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;[https://savannah.nongnu.org/task/index.php?12558 Savannah Task]&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039;: Advanced&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Confirmed Mentor&#039;&#039;&#039;: Santhosh Thottingal&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;How to contact the mentor&#039;&#039;&#039;: IRC - santhosh on #smc-project on Freenode&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;: Average level understanding of grammar system of at least one Indian language&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;What the student will learn&#039;&#039;&#039;: &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Indic rendering support in ConTeXt==&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Project&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
ConTeXt is another TeX macro system similar to LaTeX but much more suitable for design. To find more information about ConTeXt, see the wiki http://wiki.contextgarden.net/Main_Page. ConTeXt MKII  have Indic language rendering support using XeTeX. but MKII is deprecated, and the new MKIV backend doesn&#039;t support Indic rendering yet. The aim of this project is to add support to Inidic rendering to ConTeXt MKIV. XeTeX is using Harfbuzz to do correct Indic rendering.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;More Details&#039;&#039;&#039;: A partially working patch by Rajeesh for MKIV lua code is available. ConTeXt mkii (deprecated) can work with XeTeX backend for Indic rendering. Here is a sample file:&lt;br /&gt;
 \usemodule[simplefonts]&lt;br /&gt;
 \definefontfeature[malayalam][script=mlym]&lt;br /&gt;
 \setmainfont[Rachana][features=malayalam]&lt;br /&gt;
 \starttext&lt;br /&gt;
 മലയാളം \TeX ഉപയോഗിച്ച് ടൈപ്പ്സെറ്റ് ചെയ്തത്&lt;br /&gt;
 \stoptext&lt;br /&gt;
Generate the output using command&lt;br /&gt;
 texexec --xetex &amp;lt;file.tex&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;[https://savannah.nongnu.org/task/index.php?12559 Savannah Task]&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039; : Advanced&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Confirmed Mentor&#039;&#039;&#039; : Rajeesh K Nambiar&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;How to contact the mentor&#039;&#039;&#039;: IRC - rajeeshknambiar on #smc-project on Freenode&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;: Understanding of the TeX system, experience in either LaTeX or ConTeXt and basic understanding of Indic language rendering. MKIV uses Lua, familiarity with Lua, opentype specifications or Harfbuzz will be added advantage.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;What the students will learn&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Language model and Acoustic model for Malayalam language for speech recognition system in CMU Sphinx==&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Project&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
CMU Sphinx is a large vocabulary, speaker independent speech recognition codebase and suite of tools, which can be used to develop speech recognition system in any language. To develop an automatic speech recognition system in a language, acoustic model and language model has to framed for that particular language.  Acoustic models characterize how sound changes over time. It captures the characteristics of basic recognition units. The language model describes the likelihood, probability, or penalty taken when a sequence or collection of words is seen. It attempts to convey behavior of the language and tries to predict the occurrence of specific word sequences possible in the language. Once these two models are developed, it will be useful to every one doing research in speech processing. For Indian languages Hindi, Tamil, Telugu and Marati, ASR systems have been developed using sphinx engine. In this project work is aimed at developing acoustic model and language model for Malayalam.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Background Reading&#039;&#039;&#039;&lt;br /&gt;
* [http://www.cs.cmu.edu/~gopalakr/publications/spdatabases_specom05.pdf &#039;Development of Indian Language Speech Databases for Large Vocabulary Speech Recognition Systems&#039;], Gopalakrishna  Anumanchipalli, Rahul Chitturi, Sachin Joshi, Rohit Kumar, Satinder Pal Singh, R.N.V. Sitaram, S P Kishore&lt;br /&gt;
* [http://www.aclweb.org/anthology/W/W12/W12-5808.pdf &amp;quot;Automatic Pronunciation Evaluation And Mispronunciation Detection Using CMUSphinx&amp;quot;], Ronanki Srikanth, James Salsman&lt;br /&gt;
* http://www.speech.cs.cmu.edu/&lt;br /&gt;
* http://cmusphinx.sourceforge.net/wiki/tutorial&lt;br /&gt;
* [http://www.ijarcsse.com &amp;quot;HTK Based Telugu Speech Recognition&amp;quot;], P. Vijai Bhaskar, AVNIET ,Hyderabad, Prof. Dr. S. Rama Mohan Rao, A.Gopi &lt;br /&gt;
* [http://www.cs.cmu.edu/~araza/Automatic_Speech_Recognition_System_for_Urdu.PDF &amp;quot;Design and  Development of an Automatic Speech Recognition System for Urdu&amp;quot;], Agha Ali Raza,  M.Sc. Thesis, FAST‐National University of Computer and Emerging Sciences &lt;br /&gt;
* [http://www.ccis2k.org/iajit/PDF/vol.6,no.2/11IASRUCSS186.pdf &amp;quot;Investigation Arabic Speech Recognition Using CMU Sphinx System&amp;quot;], Hassan Satori1, 2, Hussein Hiyassat3, Mostafa Harti1, 2, and Noureddine Chenfour&lt;br /&gt;
* [http://www.try.idv.tw/static-resources/homework/pr/PR_Final_Report.pdf &amp;quot;Understanding the CMU Sphinx Speech Recognition System&amp;quot;], Chun-Feng Liao&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039; : &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Confirmed Mentor&#039;&#039;&#039; : Deepa P Gopinath&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;How to contact the mentor&#039;&#039;&#039;: IRC - deepagopinath on #smc-project on Freenode&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;: &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;What the students will learn&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Silpa based==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Provide REST API for new flask based Silpa, including conversion of templates to this REST API from JSON RPC===&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Project&#039;&#039;&#039;: &lt;br /&gt;
&lt;br /&gt;
Silpa is now relying on JSONRPC. We need to, either completely move to REST API or provide REST API as an additional feature.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039; : &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Confirmed Mentors&#039;&#039;&#039; : Vasudev Kamath, Jishnu Mohan&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;How to contact the mentors&#039;&#039;&#039;: IRC -&lt;br /&gt;
*Vasudev Kamath - copyninja on #smc-project and #silpa on Freenode&lt;br /&gt;
*Jishnu Mohan - jishnu7 on #smc-project and #silpa on Freenode&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;: Python , Flask , Jinja , HTML, Javascript&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;What the students will learn&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Android SDK for Silpa===&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Project&#039;&#039;&#039;: &lt;br /&gt;
&lt;br /&gt;
Port possible Silpa modules to java and create SDK so that other developers can use this for their apps. Modules like Indic Render, Transliteration, Payyas has really good potential in android because of the fragmentation exists in Android and lack for proper Indic support. This SDK will help developers to support their Indic app in wide range of android devices.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Objectives&#039;&#039;&#039;:&lt;br /&gt;
&amp;lt;Please note this idea is for a SDK, not an app or just a java port&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*All modules need to be ported to java so that it can be used inside an Android Project.&lt;br /&gt;
*Other applications should be able to use this Silpa library to easy integrate features (as a SDK) from our modules. Eg.&lt;br /&gt;
**Transliteration - Developer can specify a text input inside the  application needs transliteration, and our SDK should take care of the  transliteration process whenever user inputs text to that field.&lt;br /&gt;
**Render module - Detect whether necessary font is available in the  system, if it is not, render text as image and replace text with this.&lt;br /&gt;
**All modules can be explained like this.&lt;br /&gt;
*Investigate whether image rendering part of render module can be done in device, inside application itself. Few ways to implement that are&lt;br /&gt;
**Compiling cairo/pango with ndk&lt;br /&gt;
**Compiling Harffbuzz from AOSP tree with ndk&lt;br /&gt;
**Based on the result of rendering module investigation, we can device on whether to use server side rendering or not.&lt;br /&gt;
**Pack popular fonts with the SDK, Use it to display text if device doesn&#039;t have required font. (there are few hacks to get better rendering in older versions of android). Developer should be able to force rendering using packaged font, to get consistency across devices.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;Better to prepare SDK with helper than preparing application itself. SDK aka library&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039; : Advanced&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Confirmed Mentors&#039;&#039;&#039; : Hrishikesh K. B, Jishnu Mohan, Aashik S&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;How to contact the mentor&#039;&#039;&#039;: IRC -&lt;br /&gt;
*Hrishikesh K B - stultus on on #smc-project and #silpa on Freenode&lt;br /&gt;
*Jishnu Mohan - jishnu7 on #smc-project and #silpa on Freenode&lt;br /&gt;
*Aashik S - irumbumoideen on #smc-project on Freenode&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;: Java, Android, Python&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;What the students will learn&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
===Converting indic processing modules currently in SILPA into javascript modules library===&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Project&#039;&#039;&#039;: &lt;br /&gt;
&lt;br /&gt;
Port some of the silpa algorithms to node modules. Several modules, alogorithms in SILPA project is done in python now. But porting them to javascript helps developers. For example, cross language transliteration can be done javascript too if we port the algorithm and transliteration rules. Similarly the approximate search can be ported. A flexibile fuzzy search on the web pages will be possible if we have the algorithm in javascript.&lt;br /&gt;
&lt;br /&gt;
Proposed javascript module pattern is https://github.com/umdjs/umd&lt;br /&gt;
&lt;br /&gt;
Student proposals should have a list of alogorithms planning to port, planned demo applications, planned documentation details, and publishing details(Example: npm registry)&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039; : &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Confirmed Mentor&#039;&#039;&#039; : Jishnu Mohan&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;How to contact the mentor&#039;&#039;&#039;: IRC - jishnu7 on #smc-project and #silpa on Freenode&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;: javascript, python&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;What the students will learn&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===  Improving cross language transliteration system.  ===&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Project&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
Currently only Kannada and Malayalam are perfect rest all are first converted to Malayalam then to English due to lack of language internal. Also currently for English to Indic we use CMUDict so transliteration capability is limited to words in CMUDict only probably we could develop better method for English to Indic transliteration. Current Indic to English and vice versa transliteration depends on CMUSphinx dictionary which is having limited set of words which will result in some words being left in native text.&lt;br /&gt;
&lt;br /&gt;
CLDR has transliteration data for Indic languages. We can explore it and see the feasibility. For an intermediate representation of the scripts either IPA can be used or ISO 15919 standard can be used. All these must be supplemented with exception rules and special case handling to achieve more perfect result.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039; : Easy&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Confirmed Mentors&#039;&#039;&#039; : Vasudev Kamath, Jishnu Mohan&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;How to contact the mentor&#039;&#039;&#039;: IRC -&lt;br /&gt;
*Vasudev Kamath - copyninja on #smc-project and #silpa on Freenode&lt;br /&gt;
*Jishnu Mohan - jishnu7 on #smc-project and #silpa on Freenode&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;: Python&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;What the students will learn&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
=== Internationalize SILPA project with Wikimedia jquery projects ,  Improve  the webfonts module in Silpa using jquery.webfonts and provide more Indic and complex fonts as part of it ===&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Project&#039;&#039;&#039;: &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Internationalize SILPA&#039;&#039;&#039; :-  &lt;br /&gt;
SILPA project has many Indic language applications, but as of now, if somebody want to input in Indian languages, there is no built in tool in it. Similarly, the application is not internationalized. Both of these can be achieved by using the [//github.com/wikimedia/jquery.ime jquery.ime] and [//github.com/wikimedia/jquery.ime jquery.i18n] libraries from Wikimedia. A sample implementation is avaliable in our [http://smc.org.in website]. The i18n should be in the SILPA flask framework with a nice templating system. Similarly the interface should have webfonts using [https://github.com/wikimedia/jquery.webfonts jquery.webfonts] library.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Improve  the webfonts &#039;&#039;&#039; :- &lt;br /&gt;
* Currently Silpa provides 36 webfonts. add more fonts to this collection.&lt;br /&gt;
* Rewrote webfonts module to use the features of jquery.webfonts&lt;br /&gt;
* Create a repo as per jquery.webfonts specification&lt;br /&gt;
* Provide a clean api so that other websites can use our webfonts in their websites&lt;br /&gt;
* Document the usage&lt;br /&gt;
* Provide font preview and download options  &lt;br /&gt;
* **This is partly done**(Task from last GSoC)&lt;br /&gt;
* flask-webfonts needs further improvements and fine tuning&lt;br /&gt;
* This should be integrated into our SILPA and submitted to Flask&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;More Details&#039;&#039;&#039;&lt;br /&gt;
* [https://github.com/wikimedia/jquery.i18n jquery.i18n]&lt;br /&gt;
* [https://github.com/wikimedia/jquery.ime jquery.ime]&lt;br /&gt;
* [https://github.com/wikimedia/jquery.webfonts jquery.webfonts]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039; : Medium&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Confirmed Mentors&#039;&#039;&#039; : Vasudev Kamath, Jishnu Mohan&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;How to contact the mentor&#039;&#039;&#039;: IRC&lt;br /&gt;
*Vasudev Kamath - copyninja on #smc-project and #silpa on Freenode&lt;br /&gt;
*Jishnu Mohan - jishnu7 on #smc-project and #silpa on Freenode&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;: jQuery, css, html5, Python , flask , technical understanding about fonts&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;What the students will learn&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
==Language filter for diaspora==&lt;br /&gt;
&lt;br /&gt;
Diaspora is a Free Software, federated social networking platform. Diaspora users post in many languages. When people use more than one language in their posts, it is inconvenient for people who don&#039;t understand a language. This task is to tag every post with languages used in the post, ideally detected automatically, but with an option to override it. Once each post has a language tag, people should be able to choose their preferred language and posts in other languages should be hidden by default. Also provide an option to translate posts and comments.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039; : &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Confirmed Mentors&#039;&#039;&#039; : Pirate Praveen, Ershad K&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;How to contact the mentors&#039;&#039;&#039;: IRC  &lt;br /&gt;
*Pirate Praveen - j4v4m4n on #smc-project on Freenode&lt;br /&gt;
*Ershad K - ershad on #smc-project on Freenode&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;: Ruby on Rails&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;What the students will learn&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Varnam Based==&lt;br /&gt;
&lt;br /&gt;
Varnam is a cross-platform predictive transliterator for Indian languages. It works mostly like Google&#039;s transliterate, but shows key differences in the way word tokenization is done. It has a learning system built in which allows Varnam to make smart predictions. &lt;br /&gt;
&lt;br /&gt;
There are varnam clients available as [https://addons.mozilla.org/en-US/firefox/addon/varnam-transliteration-base/ Firefox]] &amp;amp; [https://chrome.google.com/webstore/detail/varnam-ime/abcfkeabpcanobhdmcmdabejaamephaf Chrome addon] and an [https://gitorious.org/varnamproject/libvarnam-ibus/source/d939adf50024013902c27310c03ef21a9210cdcb IBus engine].&lt;br /&gt;
&lt;br /&gt;
To try out Varnam, navigate to [http://varnamproject.com/editor[http://varnamproject.com/editor]]. Currently it support Hindi and Malayalam.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Improvements to the REST API===&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Project&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
This includes rewrite of the current implementation in `golang` and add support for WebSockets to improve the input experience. This also&lt;br /&gt;
includes making scripts that would ease embedding input on any webpage. All the changes done will go live on[1]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039; : Advanced&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Confirmed Mentor&#039;&#039;&#039; : Navaneeth K N&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;How to contact the mentor&#039;&#039;&#039;: IRC - nkn__ on #smc-project on Freenode&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;: Basic understanding of golang and C&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;What the students will learn&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Improve the learning system===&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Project&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
The main goal of this is to improve how varnam tokenizes when learning words. Today, when a word is learned, varnam takes all the possible prefixes into account and learn all of them to improve future suggestions. But sometimes, this is not enough to predict good suggestions. An improvement is suggested which will try to infer the base form of the word under learning.&lt;br /&gt;
&lt;br /&gt;
Varnam has a learning system built-in which can learn words and it can also learn possible other ways to write a word. Consider the following example. &lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
learn(&amp;quot;भारत&amp;quot;) = [bharat, bhaarath, bharath]&lt;br /&gt;
transliterate(&amp;quot;bharat&amp;quot;) = भारत&lt;br /&gt;
transliterate(&amp;quot;bhaarath&amp;quot;) = भारत&lt;br /&gt;
transliterate(&amp;quot;bharath&amp;quot;) = भारत&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Varnam also learns a word&#039;s prefixes so that it can produce better predictions for any word which has the same prefix. So in this case, with just learning the word &amp;quot;भारत&amp;quot;, varnam can predict &amp;quot;bharateey&amp;quot; = &amp;quot;भारतीय&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
The proposed idea talks about making this learn better. One example is infer the word &amp;quot;भारत&amp;quot; when learning भारतीय. Something like a porter stemmer implementation but integrated into the varnam framework so that&lt;br /&gt;
new language support can be added easily.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039; : Medium&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Confirmed Mentor&#039;&#039;&#039; : Navaneeth K N&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;How to contact the mentor&#039;&#039;&#039;: IRC - nkn__ on #smc-project on Freenode&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;:  Knowledge in C, Ruby (basics)&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;What the students will learn&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Word corpus synchronization ===&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Project&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
Create a cross-platform synchronization tool which can upload/download the word corpus from offline IMEs like varnam-ibus[2]. This helps to build the online words corpus easily.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039; : Medium&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Confirmed Mentor&#039;&#039;&#039; : Navaneeth K N&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;How to contact the mentor&#039;&#039;&#039;: IRC - nkn__ on #smc-project on Freenode&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;:  Knowledge in C/golang&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;What the students will learn&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [1]: http://www.varnamproject.com&lt;br /&gt;
* [2]: https://gitorious.org/varnamproject/libvarnam-ibus/&lt;br /&gt;
&lt;br /&gt;
==Adding Braille Keyboard layouts for Indian Languages to m17n Library==&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Project&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
Project is building support for Bharati Braille keyboard layouts in GNU/Linux systemes.  Bharati Braille standard is the official Braille standard in India. A regular QWERTY keyboard is used for data entry. SDF-JKL keys are used for six dots of Braille. This support need to be built as m17n layouts. This will enable visually challenged people who studied braille layouts to use GNU/Linux systems easily with the help of Audio feedback from TTS&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;More Details&#039;&#039;&#039;&lt;br /&gt;
* http://www.acharya.gen.in:8080/disabilities/bh_brl.php&lt;br /&gt;
* http://en.wikipedia.org/wiki/Bharati_Braille&lt;br /&gt;
* http://www.nongnu.org/m17n/&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039; : &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Confirmed Mentor&#039;&#039;&#039; : Anivar Aravind&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;How to contact the mentor&#039;&#039;&#039;: IRC - anivar on #smc-project on Freenode&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;: &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;What the students will learn&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Grandham ==&lt;br /&gt;
&lt;br /&gt;
=== Adding MARC21 import/export feature in Grandham ===&lt;br /&gt;
&lt;br /&gt;
We need a feature in Grandham to import and parse data from MARC21 documents. We should also be able to export existing data in MARC21.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039; : High&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Confirmed Mentor&#039;&#039;&#039; : Ershad K&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;How to contact the mentor&#039;&#039;&#039;: IRC - ershad on #smc-project on Freenode&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;: Knowledge in Ruby/Ruby on Rails&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;What the students will learn&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [1]: http://dev.grandham.org&lt;br /&gt;
* [2]: https://github.com/smc/grandham&lt;br /&gt;
&lt;br /&gt;
=Projects with unconfirmed mentors=&lt;/div&gt;</summary>
		<author><name>Nandaja</name></author>
	</entry>
	<entry>
		<id>https://wiki.smc.org.in/index.php?title=GSoC/2014/Project_ideas&amp;diff=4636</id>
		<title>GSoC/2014/Project ideas</title>
		<link rel="alternate" type="text/html" href="https://wiki.smc.org.in/index.php?title=GSoC/2014/Project_ideas&amp;diff=4636"/>
		<updated>2014-02-28T12:47:04Z</updated>

		<summary type="html">&lt;p&gt;Nandaja: /* Android SDK for Silpa */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;center&amp;gt; &lt;br /&gt;
&amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt; &amp;lt;big&amp;gt;&#039;&#039;&#039;Apart from the following ideas , you can propose your own ideas&#039;&#039;&#039;&amp;lt;/big&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Potential Mentors=&lt;br /&gt;
# Santhosh Thottingal (&#039;&#039;&#039;santhosh&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Baiju M (&#039;&#039;&#039;baijum&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Praveen A (&#039;&#039;&#039;j4v4m4n&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Rajeesh K Nambiar (&#039;&#039;&#039;rajeeshknambiar&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Vasudev Kammath (&#039;&#039;&#039;copyninja&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Jishnu Mohan (&#039;&#039;&#039;jishnu7&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Hrishikesh K.B (&#039;&#039;&#039;stultus&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Anivar Aravind (&#039;&#039;&#039;anivar&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Anilkumar K V (&#039;&#039;&#039;anilkumar&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Sajjad Anwar (&#039;&#039;&#039;geohacker&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Deepa V Gopinath (&#039;&#039;&#039;deepagopinath&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# jain Basil  (&#039;&#039;&#039;jainbasil&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Ershad K (&#039;&#039;&#039;ershad&#039;&#039;&#039; on irc.freenode.net&lt;br /&gt;
# Navaneeth (&#039;&#039;&#039;nkn__&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Nishan Naseer (&#039;&#039;&#039;nishan&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Nandaja Varma (&#039;&#039;&#039;gem&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
&lt;br /&gt;
=Ideas for Google Summer of Code 2014=&lt;br /&gt;
* Please Read the [http://wiki.smc.org.in/SoC/2014#FAQ FAQ]&lt;br /&gt;
* If you want to propose an idea, please do it in [http://lists.smc.org.in/listinfo.cgi/student-projects-smc.org.in student projects mailing list]&lt;br /&gt;
&lt;br /&gt;
=Projects with confirmed mentors=&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== A spell checker for Indic language that understands inflections ==&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Project&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
SILPA project has a spellchecker written using python with a not so simple algorithm. But still it is not capable of handling inflection and agglutination occurring in Indian languages especially south Indian languages. The dictionary we have for Malayalam spellchecker have about 150000 words. Of course we can expand the dictionary, but that doesn&#039;t have much value since words can be formed in Malayalam or Tamil etc by joining multiple words. In addition to that, words get inflected based on grammar forms(sandhi), plural, gender etc. Hunspell has a system to handle this, but so far nobody succeeded in getting it working for multi level suffix stripping as required for Malayalam. Some times a Malayalam word can be formed by more than 5 words joining together. We will need a word splitting logic or a table taking care of all patterns. The project is to attempt solving this with hunspell. If that is not feasible(hunspell upstream is not active), develop an algorithm and implement it.&lt;br /&gt;
&lt;br /&gt;
Recently Tamil attempted developing a spellchecker using Hunspell with multi level suffix stripping. You can see the result here https://github.com/thamizha/solthiruthi. &lt;br /&gt;
Our attempt should be first to use Hunspell to achieve spellchecking with agglutination and inflection. Probably it will require lot of scripting to generate suffix patterns, we can ask help from existing language communities too. If Hunspell has limitation with multi level suffxes- sometimes Indian languages require more than 5 levels of suffix stripping, we need to document it(bug and documentation) and try to attempt python based solution on top of SILPA framework.&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;[https://savannah.nongnu.org/task/index.php?12558 Savannah Task]&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039;: Advanced&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Confirmed Mentor&#039;&#039;&#039;: Santhosh Thottingal&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;How to contact the mentor&#039;&#039;&#039;: IRC - santhosh on #smc-project on Freenode&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;: Average level understanding of grammar system of at least one Indian language&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;What the student will learn&#039;&#039;&#039;: &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Indic rendering support in ConTeXt==&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Project&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
ConTeXt is another TeX macro system similar to LaTeX but much more suitable for design. To find more information about ConTeXt, see the wiki http://wiki.contextgarden.net/Main_Page. ConTeXt MKII  have Indic language rendering support using XeTeX. but MKII is deprecated, and the new MKIV backend doesn&#039;t support Indic rendering yet. The aim of this project is to add support to Inidic rendering to ConTeXt MKIV. XeTeX is using Harfbuzz to do correct Indic rendering.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;More Details&#039;&#039;&#039;: A partially working patch by Rajeesh for MKIV lua code is available. ConTeXt mkii (deprecated) can work with XeTeX backend for Indic rendering. Here is a sample file:&lt;br /&gt;
 \usemodule[simplefonts]&lt;br /&gt;
 \definefontfeature[malayalam][script=mlym]&lt;br /&gt;
 \setmainfont[Rachana][features=malayalam]&lt;br /&gt;
 \starttext&lt;br /&gt;
 മലയാളം \TeX ഉപയോഗിച്ച് ടൈപ്പ്സെറ്റ് ചെയ്തത്&lt;br /&gt;
 \stoptext&lt;br /&gt;
Generate the output using command&lt;br /&gt;
 texexec --xetex &amp;lt;file.tex&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;[https://savannah.nongnu.org/task/index.php?12559 Savannah Task]&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039; : Advanced&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Confirmed Mentor&#039;&#039;&#039; : Rajeesh K Nambiar&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;How to contact the mentor&#039;&#039;&#039;: IRC - rajeeshknambiar on #smc-project on Freenode&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;: Understanding of the TeX system, experience in either LaTeX or ConTeXt and basic understanding of Indic language rendering. MKIV uses Lua, familiarity with Lua, opentype specifications or Harfbuzz will be added advantage.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;What the students will learn&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Language model and Acoustic model for Malayalam language for speech recognition system in CMU Sphinx==&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Project&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
CMU Sphinx is a large vocabulary, speaker independent speech recognition codebase and suite of tools, which can be used to develop speech recognition system in any language. To develop an automatic speech recognition system in a language, acoustic model and language model has to framed for that particular language.  Acoustic models characterize how sound changes over time. It captures the characteristics of basic recognition units. The language model describes the likelihood, probability, or penalty taken when a sequence or collection of words is seen. It attempts to convey behavior of the language and tries to predict the occurrence of specific word sequences possible in the language. Once these two models are developed, it will be useful to every one doing research in speech processing. For Indian languages Hindi, Tamil, Telugu and Marati, ASR systems have been developed using sphinx engine. In this project work is aimed at developing acoustic model and language model for Malayalam.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Background Reading&#039;&#039;&#039;&lt;br /&gt;
* [http://www.cs.cmu.edu/~gopalakr/publications/spdatabases_specom05.pdf &#039;Development of Indian Language Speech Databases for Large Vocabulary Speech Recognition Systems&#039;], Gopalakrishna  Anumanchipalli, Rahul Chitturi, Sachin Joshi, Rohit Kumar, Satinder Pal Singh, R.N.V. Sitaram, S P Kishore&lt;br /&gt;
* [http://www.aclweb.org/anthology/W/W12/W12-5808.pdf &amp;quot;Automatic Pronunciation Evaluation And Mispronunciation Detection Using CMUSphinx&amp;quot;], Ronanki Srikanth, James Salsman&lt;br /&gt;
* http://www.speech.cs.cmu.edu/&lt;br /&gt;
* http://cmusphinx.sourceforge.net/wiki/tutorial&lt;br /&gt;
* [http://www.ijarcsse.com &amp;quot;HTK Based Telugu Speech Recognition&amp;quot;], P. Vijai Bhaskar, AVNIET ,Hyderabad, Prof. Dr. S. Rama Mohan Rao, A.Gopi &lt;br /&gt;
* [http://www.cs.cmu.edu/~araza/Automatic_Speech_Recognition_System_for_Urdu.PDF &amp;quot;Design and  Development of an Automatic Speech Recognition System for Urdu&amp;quot;], Agha Ali Raza,  M.Sc. Thesis, FAST‐National University of Computer and Emerging Sciences &lt;br /&gt;
* [http://www.ccis2k.org/iajit/PDF/vol.6,no.2/11IASRUCSS186.pdf &amp;quot;Investigation Arabic Speech Recognition Using CMU Sphinx System&amp;quot;], Hassan Satori1, 2, Hussein Hiyassat3, Mostafa Harti1, 2, and Noureddine Chenfour&lt;br /&gt;
* [http://www.try.idv.tw/static-resources/homework/pr/PR_Final_Report.pdf &amp;quot;Understanding the CMU Sphinx Speech Recognition System&amp;quot;], Chun-Feng Liao&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039; : &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Confirmed Mentor&#039;&#039;&#039; : Deepa P Gopinath&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;How to contact the mentor&#039;&#039;&#039;: IRC - deepagopinath on #smc-project on Freenode&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;: &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;What the students will learn&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Silpa based==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Provide REST API for new flask based Silpa, including conversion of templates to this REST API from JSON RPC===&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Project&#039;&#039;&#039;: &lt;br /&gt;
&lt;br /&gt;
Silpa is now relying on JSONRPC. We need to, either completely move to REST API or provide REST API as an additional feature.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039; : &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Confirmed Mentors&#039;&#039;&#039; : Vasudev Kamath, Jishnu Mohan&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;How to contact the mentors&#039;&#039;&#039;: IRC -&lt;br /&gt;
*Vasudev Kamath - copyninja on #smc-project and #silpa on Freenode&lt;br /&gt;
*Jishnu Mohan - jishnu7 on #smc-project and #silpa on Freenode&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;: Python , Flask , Jinja , HTML, Javascript&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;What the students will learn&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Android SDK for Silpa===&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Project&#039;&#039;&#039;: &lt;br /&gt;
&lt;br /&gt;
Port possible Silpa modules to java and create SDK so that other developers can use this for their apps. Modules like Indic Render, Transliteration, Payyas has really good potential in android because of the fragmentation exists in Android and lack for proper Indic support. This SDK will help developers to support their Indic app in wide range of android devices.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Objectives&#039;&#039;&#039;:&lt;br /&gt;
&amp;lt;Please note this idea is for a SDK, not an app or just a java port&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*All modules need to be ported to java so that it can be used inside an Android Project.&lt;br /&gt;
*Other applications should be able to use this Silpa library to easy integrate features (as a SDK) from our modules. Eg.&lt;br /&gt;
**Transliteration - Developer can specify a text input inside the  application needs transliteration, and our SDK should take care of the  transliteration process whenever user inputs text to that field.&lt;br /&gt;
**Render module - Detect whether necessary font is available in the  system, if it is not, render text as image and replace text with this.&lt;br /&gt;
**All modules can be explained like this.&lt;br /&gt;
*Investigate whether image rendering part of render module can be done in device, inside application itself. Few ways to implement that are&lt;br /&gt;
**Compiling cairo/pango with ndk&lt;br /&gt;
**Compiling Harffbuzz from AOSP tree with ndk&lt;br /&gt;
**Based on the result of rendering module investigation, we can device on whether to use server side rendering or not.&lt;br /&gt;
**Pack popular fonts with the SDK, Use it to display text if device doesn&#039;t have required font. (there are few hacks to get better rendering in older versions of android). Developer should be able to force rendering using packaged font, to get consistency across devices.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;Better to prepare SDK with helper than preparing application itself. SDK aka library&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039; : Advanced&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Confirmed Mentors&#039;&#039;&#039; : Hrishikesh K. B, Jishnu Mohan, Aashik S&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;How to contact the mentor&#039;&#039;&#039;: IRC -&lt;br /&gt;
*Hrishikesh K B - stultus on on #smc-project and #silpa on Freenode&lt;br /&gt;
*Jishnu Mohan - jishnu7 on #smc-project and #silpa on Freenode&lt;br /&gt;
*Aashik S - irumbumoideen on #smc-project on Freenode&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;: Java, Android, Python&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;What the students will learn&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
===Converting indic processing modules currently in SILPA into javascript modules library===&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Project&#039;&#039;&#039;: &lt;br /&gt;
&lt;br /&gt;
Port some of the silpa algorithms to node modules. Several modules, alogorithms in SILPA project is done in python now. But porting them to javascript helps developers. For example, cross language transliteration can be done javascript too if we port the algorithm and transliteration rules. Similarly the approximate search can be ported. A flexibile fuzzy search on the web pages will be possible if we have the algorithm in javascript.&lt;br /&gt;
&lt;br /&gt;
Proposed javascript module pattern is https://github.com/umdjs/umd&lt;br /&gt;
&lt;br /&gt;
Student proposals should have a list of alogorithms planning to port, planned demo applications, planned documentation details, and publishing details(Example: npm registry)&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039; : &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Confirmed Mentor&#039;&#039;&#039; : Jishnu Mohan&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;How to contact the mentor&#039;&#039;&#039;: IRC - jishnu7 on #smc-project and #silpa on Freenode&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;: javascript, python&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;What the students will learn&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===  Improving cross language transliteration system.  ===&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Project&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
Currently only Kannada and Malayalam are perfect rest all are first converted to Malayalam then to English due to lack of language internal. Also currently for English to Indic we use CMUDict so transliteration capability is limited to words in CMUDict only probably we could develop better method for English to Indic transliteration&lt;br /&gt;
&lt;br /&gt;
CLDR has transliteration data for Indic languages. We can explore it and see the feasibility. For an intermediate representation of the scripts either IPA can be used or ISO 15919 standard can be used. All these must be supplemented with exception rules and special case handling to achieve more perfect result.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039; : &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Confirmed Mentors&#039;&#039;&#039; : Vasudev Kamath, Jishnu Mohan&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;How to contact the mentor&#039;&#039;&#039;: IRC -&lt;br /&gt;
*Vasudev Kamath - copyninja on #smc-project and #silpa on Freenode&lt;br /&gt;
*Jishnu Mohan - jishnu7 on #smc-project and #silpa on Freenode&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;: Python&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;What the students will learn&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
=== Internationalize SILPA project with Wikimedia jquery projects ,  Improve  the webfonts module in Silpa using jquery.webfonts and provide more Indic and complex fonts as part of it ===&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Project&#039;&#039;&#039;: &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Internationalize SILPA&#039;&#039;&#039; :-  &lt;br /&gt;
SILPA project has many Indic language applications, but as of now, if somebody want to input in Indian languages, there is no built in tool in it. Similarly, the application is not internationalized. Both of these can be achieved by using the [//github.com/wikimedia/jquery.ime jquery.ime] and [//github.com/wikimedia/jquery.ime jquery.i18n] libraries from Wikimedia. A sample implementation is avaliable in our [http://smc.org.in website]. The i18n should be in the SILPA flask framework with a nice templating system. Similarly the interface should have webfonts using [https://github.com/wikimedia/jquery.webfonts jquery.webfonts] library.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Improve  the webfonts &#039;&#039;&#039; :- &lt;br /&gt;
* Currently Silpa provides 36 webfonts. add more fonts to this collection.&lt;br /&gt;
* Rewrote webfonts module to use the features of jquery.webfonts&lt;br /&gt;
* Create a repo as per jquery.webfonts specification&lt;br /&gt;
* Provide a clean api so that other websites can use our webfonts in their websites&lt;br /&gt;
* Document the usage&lt;br /&gt;
* Provide font preview and download options  &lt;br /&gt;
* **This is partly done**(Task from last GSoC)&lt;br /&gt;
* flask-webfonts needs further improvements and fine tuning&lt;br /&gt;
* This should be integrated into our SILPA and submitted to Flask&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;More Details&#039;&#039;&#039;&lt;br /&gt;
* [https://github.com/wikimedia/jquery.i18n jquery.i18n]&lt;br /&gt;
* [https://github.com/wikimedia/jquery.ime jquery.ime]&lt;br /&gt;
* [https://github.com/wikimedia/jquery.webfonts jquery.webfonts]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039; : Medium&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Confirmed Mentors&#039;&#039;&#039; : Vasudev Kamath, Jishnu Mohan&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;How to contact the mentor&#039;&#039;&#039;: IRC&lt;br /&gt;
*Vasudev Kamath - copyninja on #smc-project and #silpa on Freenode&lt;br /&gt;
*Jishnu Mohan - jishnu7 on #smc-project and #silpa on Freenode&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;: jQuery, css, html5, Python , flask , technical understanding about fonts&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;What the students will learn&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
==Language filter for diaspora==&lt;br /&gt;
&lt;br /&gt;
Diaspora is a Free Software, federated social networking platform. Diaspora users post in many languages. When people use more than one language in their posts, it is inconvenient for people who don&#039;t understand a language. This task is to tag every post with languages used in the post, ideally detected automatically, but with an option to override it. Once each post has a language tag, people should be able to choose their preferred language and posts in other languages should be hidden by default. Also provide an option to translate posts and comments.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039; : &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Confirmed Mentors&#039;&#039;&#039; : Pirate Praveen, Ershad K&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;How to contact the mentors&#039;&#039;&#039;: IRC  &lt;br /&gt;
*Pirate Praveen - j4v4m4n on #smc-project on Freenode&lt;br /&gt;
*Ershad K - ershad on #smc-project on Freenode&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;: Ruby on Rails&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;What the students will learn&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Varnam Based==&lt;br /&gt;
&lt;br /&gt;
Varnam is a cross-platform predictive transliterator for Indian languages. It works mostly like Google&#039;s transliterate, but shows key differences in the way word tokenization is done. It has a learning system built in which allows Varnam to make smart predictions. &lt;br /&gt;
&lt;br /&gt;
There are varnam clients available as [https://addons.mozilla.org/en-US/firefox/addon/varnam-transliteration-base/ Firefox]] &amp;amp; [https://chrome.google.com/webstore/detail/varnam-ime/abcfkeabpcanobhdmcmdabejaamephaf Chrome addon] and an [https://gitorious.org/varnamproject/libvarnam-ibus/source/d939adf50024013902c27310c03ef21a9210cdcb IBus engine].&lt;br /&gt;
&lt;br /&gt;
To try out Varnam, navigate to [http://varnamproject.com/editor[http://varnamproject.com/editor]]. Currently it support Hindi and Malayalam.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Improvements to the REST API===&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Project&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
This includes rewrite of the current implementation in `golang` and add support for WebSockets to improve the input experience. This also&lt;br /&gt;
includes making scripts that would ease embedding input on any webpage. All the changes done will go live on[1]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039; : Advanced&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Confirmed Mentor&#039;&#039;&#039; : Navaneeth K N&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;How to contact the mentor&#039;&#039;&#039;: IRC - nkn__ on #smc-project on Freenode&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;: Basic understanding of golang and C&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;What the students will learn&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Improve the learning system===&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Project&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
The main goal of this is to improve how varnam tokenizes when learning words. Today, when a word is learned, varnam takes all the possible prefixes into account and learn all of them to improve future suggestions. But sometimes, this is not enough to predict good suggestions. An improvement is suggested which will try to infer the base form of the word under learning.&lt;br /&gt;
&lt;br /&gt;
Varnam has a learning system built-in which can learn words and it can also learn possible other ways to write a word. Consider the following example. &lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
learn(&amp;quot;भारत&amp;quot;) = [bharat, bhaarath, bharath]&lt;br /&gt;
transliterate(&amp;quot;bharat&amp;quot;) = भारत&lt;br /&gt;
transliterate(&amp;quot;bhaarath&amp;quot;) = भारत&lt;br /&gt;
transliterate(&amp;quot;bharath&amp;quot;) = भारत&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Varnam also learns a word&#039;s prefixes so that it can produce better predictions for any word which has the same prefix. So in this case, with just learning the word &amp;quot;भारत&amp;quot;, varnam can predict &amp;quot;bharateey&amp;quot; = &amp;quot;भारतीय&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
The proposed idea talks about making this learn better. One example is infer the word &amp;quot;भारत&amp;quot; when learning भारतीय. Something like a porter stemmer implementation but integrated into the varnam framework so that&lt;br /&gt;
new language support can be added easily.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039; : Medium&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Confirmed Mentor&#039;&#039;&#039; : Navaneeth K N&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;How to contact the mentor&#039;&#039;&#039;: IRC - nkn__ on #smc-project on Freenode&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;:  Knowledge in C, Ruby (basics)&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;What the students will learn&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Word corpus synchronization ===&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Project&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
Create a cross-platform synchronization tool which can upload/download the word corpus from offline IMEs like varnam-ibus[2]. This helps to build the online words corpus easily.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039; : Medium&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Confirmed Mentor&#039;&#039;&#039; : Navaneeth K N&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;How to contact the mentor&#039;&#039;&#039;: IRC - nkn__ on #smc-project on Freenode&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;:  Knowledge in C/golang&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;What the students will learn&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [1]: http://www.varnamproject.com&lt;br /&gt;
* [2]: https://gitorious.org/varnamproject/libvarnam-ibus/&lt;br /&gt;
&lt;br /&gt;
==Adding Braille Keyboard layouts for Indian Languages to m17n Library==&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Project&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
Project is building support for Bharati Braille keyboard layouts in GNU/Linux systemes.  Bharati Braille standard is the official Braille standard in India. A regular QWERTY keyboard is used for data entry. SDF-JKL keys are used for six dots of Braille. This support need to be built as m17n layouts. This will enable visually challenged people who studied braille layouts to use GNU/Linux systems easily with the help of Audio feedback from TTS&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;More Details&#039;&#039;&#039;&lt;br /&gt;
* http://www.acharya.gen.in:8080/disabilities/bh_brl.php&lt;br /&gt;
* http://en.wikipedia.org/wiki/Bharati_Braille&lt;br /&gt;
* http://www.nongnu.org/m17n/&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039; : &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Confirmed Mentor&#039;&#039;&#039; : Anivar Aravind&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;How to contact the mentor&#039;&#039;&#039;: IRC - anivar on #smc-project on Freenode&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;: &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;What the students will learn&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Grandham ==&lt;br /&gt;
&lt;br /&gt;
=== Adding MARC21 import/export feature in Grandham ===&lt;br /&gt;
&lt;br /&gt;
We need a feature in Grandham to import and parse data from MARC21 documents. We should also be able to export existing data in MARC21.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039; : High&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Confirmed Mentor&#039;&#039;&#039; : Ershad K&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;How to contact the mentor&#039;&#039;&#039;: IRC - ershad on #smc-project on Freenode&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;: Knowledge in Ruby/Ruby on Rails&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;What the students will learn&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [1]: http://dev.grandham.org&lt;br /&gt;
* [2]: https://github.com/smc/grandham&lt;br /&gt;
&lt;br /&gt;
=Projects with unconfirmed mentors=&lt;/div&gt;</summary>
		<author><name>Nandaja</name></author>
	</entry>
	<entry>
		<id>https://wiki.smc.org.in/index.php?title=GSoC/2014/Project_ideas&amp;diff=4635</id>
		<title>GSoC/2014/Project ideas</title>
		<link rel="alternate" type="text/html" href="https://wiki.smc.org.in/index.php?title=GSoC/2014/Project_ideas&amp;diff=4635"/>
		<updated>2014-02-28T12:45:59Z</updated>

		<summary type="html">&lt;p&gt;Nandaja: /* Android SDK for Silpa */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;center&amp;gt; &lt;br /&gt;
&amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt; &amp;lt;big&amp;gt;&#039;&#039;&#039;Apart from the following ideas , you can propose your own ideas&#039;&#039;&#039;&amp;lt;/big&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Potential Mentors=&lt;br /&gt;
# Santhosh Thottingal (&#039;&#039;&#039;santhosh&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Baiju M (&#039;&#039;&#039;baijum&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Praveen A (&#039;&#039;&#039;j4v4m4n&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Rajeesh K Nambiar (&#039;&#039;&#039;rajeeshknambiar&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Vasudev Kammath (&#039;&#039;&#039;copyninja&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Jishnu Mohan (&#039;&#039;&#039;jishnu7&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Hrishikesh K.B (&#039;&#039;&#039;stultus&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Anivar Aravind (&#039;&#039;&#039;anivar&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Anilkumar K V (&#039;&#039;&#039;anilkumar&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Sajjad Anwar (&#039;&#039;&#039;geohacker&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Deepa V Gopinath (&#039;&#039;&#039;deepagopinath&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# jain Basil  (&#039;&#039;&#039;jainbasil&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Ershad K (&#039;&#039;&#039;ershad&#039;&#039;&#039; on irc.freenode.net&lt;br /&gt;
# Navaneeth (&#039;&#039;&#039;nkn__&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Nishan Naseer (&#039;&#039;&#039;nishan&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Nandaja Varma (&#039;&#039;&#039;gem&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
&lt;br /&gt;
=Ideas for Google Summer of Code 2014=&lt;br /&gt;
* Please Read the [http://wiki.smc.org.in/SoC/2014#FAQ FAQ]&lt;br /&gt;
* If you want to propose an idea, please do it in [http://lists.smc.org.in/listinfo.cgi/student-projects-smc.org.in student projects mailing list]&lt;br /&gt;
&lt;br /&gt;
=Projects with confirmed mentors=&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== A spell checker for Indic language that understands inflections ==&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Project&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
SILPA project has a spellchecker written using python with a not so simple algorithm. But still it is not capable of handling inflection and agglutination occurring in Indian languages especially south Indian languages. The dictionary we have for Malayalam spellchecker have about 150000 words. Of course we can expand the dictionary, but that doesn&#039;t have much value since words can be formed in Malayalam or Tamil etc by joining multiple words. In addition to that, words get inflected based on grammar forms(sandhi), plural, gender etc. Hunspell has a system to handle this, but so far nobody succeeded in getting it working for multi level suffix stripping as required for Malayalam. Some times a Malayalam word can be formed by more than 5 words joining together. We will need a word splitting logic or a table taking care of all patterns. The project is to attempt solving this with hunspell. If that is not feasible(hunspell upstream is not active), develop an algorithm and implement it.&lt;br /&gt;
&lt;br /&gt;
Recently Tamil attempted developing a spellchecker using Hunspell with multi level suffix stripping. You can see the result here https://github.com/thamizha/solthiruthi. &lt;br /&gt;
Our attempt should be first to use Hunspell to achieve spellchecking with agglutination and inflection. Probably it will require lot of scripting to generate suffix patterns, we can ask help from existing language communities too. If Hunspell has limitation with multi level suffxes- sometimes Indian languages require more than 5 levels of suffix stripping, we need to document it(bug and documentation) and try to attempt python based solution on top of SILPA framework.&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;[https://savannah.nongnu.org/task/index.php?12558 Savannah Task]&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039;: Advanced&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Confirmed Mentor&#039;&#039;&#039;: Santhosh Thottingal&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;How to contact the mentor&#039;&#039;&#039;: IRC - santhosh on #smc-project on Freenode&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;: Average level understanding of grammar system of at least one Indian language&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;What the student will learn&#039;&#039;&#039;: &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Indic rendering support in ConTeXt==&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Project&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
ConTeXt is another TeX macro system similar to LaTeX but much more suitable for design. To find more information about ConTeXt, see the wiki http://wiki.contextgarden.net/Main_Page. ConTeXt MKII  have Indic language rendering support using XeTeX. but MKII is deprecated, and the new MKIV backend doesn&#039;t support Indic rendering yet. The aim of this project is to add support to Inidic rendering to ConTeXt MKIV. XeTeX is using Harfbuzz to do correct Indic rendering.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;More Details&#039;&#039;&#039;: A partially working patch by Rajeesh for MKIV lua code is available. ConTeXt mkii (deprecated) can work with XeTeX backend for Indic rendering. Here is a sample file:&lt;br /&gt;
 \usemodule[simplefonts]&lt;br /&gt;
 \definefontfeature[malayalam][script=mlym]&lt;br /&gt;
 \setmainfont[Rachana][features=malayalam]&lt;br /&gt;
 \starttext&lt;br /&gt;
 മലയാളം \TeX ഉപയോഗിച്ച് ടൈപ്പ്സെറ്റ് ചെയ്തത്&lt;br /&gt;
 \stoptext&lt;br /&gt;
Generate the output using command&lt;br /&gt;
 texexec --xetex &amp;lt;file.tex&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;[https://savannah.nongnu.org/task/index.php?12559 Savannah Task]&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039; : Advanced&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Confirmed Mentor&#039;&#039;&#039; : Rajeesh K Nambiar&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;How to contact the mentor&#039;&#039;&#039;: IRC - rajeeshknambiar on #smc-project on Freenode&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;: Understanding of the TeX system, experience in either LaTeX or ConTeXt and basic understanding of Indic language rendering. MKIV uses Lua, familiarity with Lua, opentype specifications or Harfbuzz will be added advantage.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;What the students will learn&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Language model and Acoustic model for Malayalam language for speech recognition system in CMU Sphinx==&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Project&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
CMU Sphinx is a large vocabulary, speaker independent speech recognition codebase and suite of tools, which can be used to develop speech recognition system in any language. To develop an automatic speech recognition system in a language, acoustic model and language model has to framed for that particular language.  Acoustic models characterize how sound changes over time. It captures the characteristics of basic recognition units. The language model describes the likelihood, probability, or penalty taken when a sequence or collection of words is seen. It attempts to convey behavior of the language and tries to predict the occurrence of specific word sequences possible in the language. Once these two models are developed, it will be useful to every one doing research in speech processing. For Indian languages Hindi, Tamil, Telugu and Marati, ASR systems have been developed using sphinx engine. In this project work is aimed at developing acoustic model and language model for Malayalam.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Background Reading&#039;&#039;&#039;&lt;br /&gt;
* [http://www.cs.cmu.edu/~gopalakr/publications/spdatabases_specom05.pdf &#039;Development of Indian Language Speech Databases for Large Vocabulary Speech Recognition Systems&#039;], Gopalakrishna  Anumanchipalli, Rahul Chitturi, Sachin Joshi, Rohit Kumar, Satinder Pal Singh, R.N.V. Sitaram, S P Kishore&lt;br /&gt;
* [http://www.aclweb.org/anthology/W/W12/W12-5808.pdf &amp;quot;Automatic Pronunciation Evaluation And Mispronunciation Detection Using CMUSphinx&amp;quot;], Ronanki Srikanth, James Salsman&lt;br /&gt;
* http://www.speech.cs.cmu.edu/&lt;br /&gt;
* http://cmusphinx.sourceforge.net/wiki/tutorial&lt;br /&gt;
* [http://www.ijarcsse.com &amp;quot;HTK Based Telugu Speech Recognition&amp;quot;], P. Vijai Bhaskar, AVNIET ,Hyderabad, Prof. Dr. S. Rama Mohan Rao, A.Gopi &lt;br /&gt;
* [http://www.cs.cmu.edu/~araza/Automatic_Speech_Recognition_System_for_Urdu.PDF &amp;quot;Design and  Development of an Automatic Speech Recognition System for Urdu&amp;quot;], Agha Ali Raza,  M.Sc. Thesis, FAST‐National University of Computer and Emerging Sciences &lt;br /&gt;
* [http://www.ccis2k.org/iajit/PDF/vol.6,no.2/11IASRUCSS186.pdf &amp;quot;Investigation Arabic Speech Recognition Using CMU Sphinx System&amp;quot;], Hassan Satori1, 2, Hussein Hiyassat3, Mostafa Harti1, 2, and Noureddine Chenfour&lt;br /&gt;
* [http://www.try.idv.tw/static-resources/homework/pr/PR_Final_Report.pdf &amp;quot;Understanding the CMU Sphinx Speech Recognition System&amp;quot;], Chun-Feng Liao&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039; : &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Confirmed Mentor&#039;&#039;&#039; : Deepa P Gopinath&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;How to contact the mentor&#039;&#039;&#039;: IRC - deepagopinath on #smc-project on Freenode&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;: &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;What the students will learn&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Silpa based==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Provide REST API for new flask based Silpa, including conversion of templates to this REST API from JSON RPC===&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Project&#039;&#039;&#039;: &lt;br /&gt;
&lt;br /&gt;
Silpa is now relying on JSONRPC. We need to, either completely move to REST API or provide REST API as an additional feature.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039; : &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Confirmed Mentors&#039;&#039;&#039; : Vasudev Kamath, Jishnu Mohan&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;How to contact the mentors&#039;&#039;&#039;: IRC -&lt;br /&gt;
*Vasudev Kamath - copyninja on #smc-project and #silpa on Freenode&lt;br /&gt;
*Jishnu Mohan - jishnu7 on #smc-project and #silpa on Freenode&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;: Python , Flask , Jinja , HTML, Javascript&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;What the students will learn&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Android SDK for Silpa===&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Project&#039;&#039;&#039;: &lt;br /&gt;
&lt;br /&gt;
Port possible Silpa modules to java and create SDK so that other developers can use this for their apps. Modules like Indic Render, Transliteration, Payyas has really good potential in android because of the fragmentation exists in Android and lack for proper Indic support. This SDK will help developers to support their Indic app in wide range of android devices.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Objectives&#039;&#039;&#039;:&lt;br /&gt;
&amp;lt;Please note this idea is for a SDK, not an app or just a java port&amp;gt;&lt;br /&gt;
&lt;br /&gt;
#All modules need to be ported to java so that it can be used inside an Android Project.&lt;br /&gt;
#Other applications should be able to use this Silpa library to easy integrate features (as a SDK) from our modules. Eg.&lt;br /&gt;
*Transliteration - Developer can specify a text input inside the  application needs transliteration, and our SDK should take care of the  transliteration process whenever user inputs text to that field.&lt;br /&gt;
*Render module - Detect whether necessary font is available in the  system, if it is not, render text as image and replace text with this.&lt;br /&gt;
*All modules can be explained like this.&lt;br /&gt;
#Investigate whether image rendering part of render module can be done in device, inside application itself. Few ways to implement that are&lt;br /&gt;
*Compiling cairo/pango with ndk&lt;br /&gt;
*Compiling Harffbuzz from AOSP tree with ndk&lt;br /&gt;
*Based on the result of rendering module investigation, we can device on whether to use server side rendering or not.&lt;br /&gt;
*Pack popular fonts with the SDK, Use it to display text if device doesn&#039;t have required font. (there are few hacks to get better rendering in older versions of android). Developer should be able to force rendering using packaged font, to get consistency across devices.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;Better to prepare SDK with helper than preparing application itself. SDK aka library&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039; : Advanced&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Confirmed Mentors&#039;&#039;&#039; : Hrishikesh K. B, Jishnu Mohan, Aashik S&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;How to contact the mentor&#039;&#039;&#039;: IRC -&lt;br /&gt;
*Hrishikesh K B - stultus on on #smc-project and #silpa on Freenode&lt;br /&gt;
*Jishnu Mohan - jishnu7 on #smc-project and #silpa on Freenode&lt;br /&gt;
*Aashik S - irumbumoideen on #smc-project on Freenode&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;: Java, Android, Python&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;What the students will learn&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
===Converting indic processing modules currently in SILPA into javascript modules library===&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Project&#039;&#039;&#039;: &lt;br /&gt;
&lt;br /&gt;
Port some of the silpa algorithms to node modules. Several modules, alogorithms in SILPA project is done in python now. But porting them to javascript helps developers. For example, cross language transliteration can be done javascript too if we port the algorithm and transliteration rules. Similarly the approximate search can be ported. A flexibile fuzzy search on the web pages will be possible if we have the algorithm in javascript.&lt;br /&gt;
&lt;br /&gt;
Proposed javascript module pattern is https://github.com/umdjs/umd&lt;br /&gt;
&lt;br /&gt;
Student proposals should have a list of alogorithms planning to port, planned demo applications, planned documentation details, and publishing details(Example: npm registry)&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039; : &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Confirmed Mentor&#039;&#039;&#039; : Jishnu Mohan&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;How to contact the mentor&#039;&#039;&#039;: IRC - jishnu7 on #smc-project and #silpa on Freenode&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;: javascript, python&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;What the students will learn&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===  Improving cross language transliteration system.  ===&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Project&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
Currently only Kannada and Malayalam are perfect rest all are first converted to Malayalam then to English due to lack of language internal. Also currently for English to Indic we use CMUDict so transliteration capability is limited to words in CMUDict only probably we could develop better method for English to Indic transliteration&lt;br /&gt;
&lt;br /&gt;
CLDR has transliteration data for Indic languages. We can explore it and see the feasibility. For an intermediate representation of the scripts either IPA can be used or ISO 15919 standard can be used. All these must be supplemented with exception rules and special case handling to achieve more perfect result.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039; : &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Confirmed Mentors&#039;&#039;&#039; : Vasudev Kamath, Jishnu Mohan&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;How to contact the mentor&#039;&#039;&#039;: IRC -&lt;br /&gt;
*Vasudev Kamath - copyninja on #smc-project and #silpa on Freenode&lt;br /&gt;
*Jishnu Mohan - jishnu7 on #smc-project and #silpa on Freenode&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;: Python&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;What the students will learn&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
=== Internationalize SILPA project with Wikimedia jquery projects ,  Improve  the webfonts module in Silpa using jquery.webfonts and provide more Indic and complex fonts as part of it ===&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Project&#039;&#039;&#039;: &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Internationalize SILPA&#039;&#039;&#039; :-  &lt;br /&gt;
SILPA project has many Indic language applications, but as of now, if somebody want to input in Indian languages, there is no built in tool in it. Similarly, the application is not internationalized. Both of these can be achieved by using the [//github.com/wikimedia/jquery.ime jquery.ime] and [//github.com/wikimedia/jquery.ime jquery.i18n] libraries from Wikimedia. A sample implementation is avaliable in our [http://smc.org.in website]. The i18n should be in the SILPA flask framework with a nice templating system. Similarly the interface should have webfonts using [https://github.com/wikimedia/jquery.webfonts jquery.webfonts] library.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Improve  the webfonts &#039;&#039;&#039; :- &lt;br /&gt;
* Currently Silpa provides 36 webfonts. add more fonts to this collection.&lt;br /&gt;
* Rewrote webfonts module to use the features of jquery.webfonts&lt;br /&gt;
* Create a repo as per jquery.webfonts specification&lt;br /&gt;
* Provide a clean api so that other websites can use our webfonts in their websites&lt;br /&gt;
* Document the usage&lt;br /&gt;
* Provide font preview and download options  &lt;br /&gt;
* **This is partly done**(Task from last GSoC)&lt;br /&gt;
* flask-webfonts needs further improvements and fine tuning&lt;br /&gt;
* This should be integrated into our SILPA and submitted to Flask&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;More Details&#039;&#039;&#039;&lt;br /&gt;
* [https://github.com/wikimedia/jquery.i18n jquery.i18n]&lt;br /&gt;
* [https://github.com/wikimedia/jquery.ime jquery.ime]&lt;br /&gt;
* [https://github.com/wikimedia/jquery.webfonts jquery.webfonts]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039; : Medium&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Confirmed Mentors&#039;&#039;&#039; : Vasudev Kamath, Jishnu Mohan&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;How to contact the mentor&#039;&#039;&#039;: IRC&lt;br /&gt;
*Vasudev Kamath - copyninja on #smc-project and #silpa on Freenode&lt;br /&gt;
*Jishnu Mohan - jishnu7 on #smc-project and #silpa on Freenode&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;: jQuery, css, html5, Python , flask , technical understanding about fonts&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;What the students will learn&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
==Language filter for diaspora==&lt;br /&gt;
&lt;br /&gt;
Diaspora is a Free Software, federated social networking platform. Diaspora users post in many languages. When people use more than one language in their posts, it is inconvenient for people who don&#039;t understand a language. This task is to tag every post with languages used in the post, ideally detected automatically, but with an option to override it. Once each post has a language tag, people should be able to choose their preferred language and posts in other languages should be hidden by default. Also provide an option to translate posts and comments.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039; : &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Confirmed Mentors&#039;&#039;&#039; : Pirate Praveen, Ershad K&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;How to contact the mentors&#039;&#039;&#039;: IRC  &lt;br /&gt;
*Pirate Praveen - j4v4m4n on #smc-project on Freenode&lt;br /&gt;
*Ershad K - ershad on #smc-project on Freenode&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;: Ruby on Rails&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;What the students will learn&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Varnam Based==&lt;br /&gt;
&lt;br /&gt;
Varnam is a cross-platform predictive transliterator for Indian languages. It works mostly like Google&#039;s transliterate, but shows key differences in the way word tokenization is done. It has a learning system built in which allows Varnam to make smart predictions. &lt;br /&gt;
&lt;br /&gt;
There are varnam clients available as [https://addons.mozilla.org/en-US/firefox/addon/varnam-transliteration-base/ Firefox]] &amp;amp; [https://chrome.google.com/webstore/detail/varnam-ime/abcfkeabpcanobhdmcmdabejaamephaf Chrome addon] and an [https://gitorious.org/varnamproject/libvarnam-ibus/source/d939adf50024013902c27310c03ef21a9210cdcb IBus engine].&lt;br /&gt;
&lt;br /&gt;
To try out Varnam, navigate to [http://varnamproject.com/editor[http://varnamproject.com/editor]]. Currently it support Hindi and Malayalam.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Improvements to the REST API===&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Project&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
This includes rewrite of the current implementation in `golang` and add support for WebSockets to improve the input experience. This also&lt;br /&gt;
includes making scripts that would ease embedding input on any webpage. All the changes done will go live on[1]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039; : Advanced&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Confirmed Mentor&#039;&#039;&#039; : Navaneeth K N&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;How to contact the mentor&#039;&#039;&#039;: IRC - nkn__ on #smc-project on Freenode&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;: Basic understanding of golang and C&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;What the students will learn&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Improve the learning system===&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Project&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
The main goal of this is to improve how varnam tokenizes when learning words. Today, when a word is learned, varnam takes all the possible prefixes into account and learn all of them to improve future suggestions. But sometimes, this is not enough to predict good suggestions. An improvement is suggested which will try to infer the base form of the word under learning.&lt;br /&gt;
&lt;br /&gt;
Varnam has a learning system built-in which can learn words and it can also learn possible other ways to write a word. Consider the following example. &lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
learn(&amp;quot;भारत&amp;quot;) = [bharat, bhaarath, bharath]&lt;br /&gt;
transliterate(&amp;quot;bharat&amp;quot;) = भारत&lt;br /&gt;
transliterate(&amp;quot;bhaarath&amp;quot;) = भारत&lt;br /&gt;
transliterate(&amp;quot;bharath&amp;quot;) = भारत&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Varnam also learns a word&#039;s prefixes so that it can produce better predictions for any word which has the same prefix. So in this case, with just learning the word &amp;quot;भारत&amp;quot;, varnam can predict &amp;quot;bharateey&amp;quot; = &amp;quot;भारतीय&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
The proposed idea talks about making this learn better. One example is infer the word &amp;quot;भारत&amp;quot; when learning भारतीय. Something like a porter stemmer implementation but integrated into the varnam framework so that&lt;br /&gt;
new language support can be added easily.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039; : Medium&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Confirmed Mentor&#039;&#039;&#039; : Navaneeth K N&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;How to contact the mentor&#039;&#039;&#039;: IRC - nkn__ on #smc-project on Freenode&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;:  Knowledge in C, Ruby (basics)&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;What the students will learn&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Word corpus synchronization ===&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Project&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
Create a cross-platform synchronization tool which can upload/download the word corpus from offline IMEs like varnam-ibus[2]. This helps to build the online words corpus easily.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039; : Medium&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Confirmed Mentor&#039;&#039;&#039; : Navaneeth K N&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;How to contact the mentor&#039;&#039;&#039;: IRC - nkn__ on #smc-project on Freenode&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;:  Knowledge in C/golang&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;What the students will learn&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [1]: http://www.varnamproject.com&lt;br /&gt;
* [2]: https://gitorious.org/varnamproject/libvarnam-ibus/&lt;br /&gt;
&lt;br /&gt;
==Adding Braille Keyboard layouts for Indian Languages to m17n Library==&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Project&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
Project is building support for Bharati Braille keyboard layouts in GNU/Linux systemes.  Bharati Braille standard is the official Braille standard in India. A regular QWERTY keyboard is used for data entry. SDF-JKL keys are used for six dots of Braille. This support need to be built as m17n layouts. This will enable visually challenged people who studied braille layouts to use GNU/Linux systems easily with the help of Audio feedback from TTS&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;More Details&#039;&#039;&#039;&lt;br /&gt;
* http://www.acharya.gen.in:8080/disabilities/bh_brl.php&lt;br /&gt;
* http://en.wikipedia.org/wiki/Bharati_Braille&lt;br /&gt;
* http://www.nongnu.org/m17n/&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039; : &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Confirmed Mentor&#039;&#039;&#039; : Anivar Aravind&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;How to contact the mentor&#039;&#039;&#039;: IRC - anivar on #smc-project on Freenode&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;: &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;What the students will learn&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Grandham ==&lt;br /&gt;
&lt;br /&gt;
=== Adding MARC21 import/export feature in Grandham ===&lt;br /&gt;
&lt;br /&gt;
We need a feature in Grandham to import and parse data from MARC21 documents. We should also be able to export existing data in MARC21.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039; : High&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Confirmed Mentor&#039;&#039;&#039; : Ershad K&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;How to contact the mentor&#039;&#039;&#039;: IRC - ershad on #smc-project on Freenode&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;: Knowledge in Ruby/Ruby on Rails&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;What the students will learn&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [1]: http://dev.grandham.org&lt;br /&gt;
* [2]: https://github.com/smc/grandham&lt;br /&gt;
&lt;br /&gt;
=Projects with unconfirmed mentors=&lt;/div&gt;</summary>
		<author><name>Nandaja</name></author>
	</entry>
	<entry>
		<id>https://wiki.smc.org.in/index.php?title=GSoC/2014/Project_ideas&amp;diff=4634</id>
		<title>GSoC/2014/Project ideas</title>
		<link rel="alternate" type="text/html" href="https://wiki.smc.org.in/index.php?title=GSoC/2014/Project_ideas&amp;diff=4634"/>
		<updated>2014-02-28T12:41:41Z</updated>

		<summary type="html">&lt;p&gt;Nandaja: /* Internationalize SILPA project with Wikimedia jquery projects ,  Improve  the webfonts module in Silpa using jquery.webfonts and provide more Indic and complex fonts as part of it */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;center&amp;gt; &lt;br /&gt;
&amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt; &amp;lt;big&amp;gt;&#039;&#039;&#039;Apart from the following ideas , you can propose your own ideas&#039;&#039;&#039;&amp;lt;/big&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Potential Mentors=&lt;br /&gt;
# Santhosh Thottingal (&#039;&#039;&#039;santhosh&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Baiju M (&#039;&#039;&#039;baijum&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Praveen A (&#039;&#039;&#039;j4v4m4n&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Rajeesh K Nambiar (&#039;&#039;&#039;rajeeshknambiar&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Vasudev Kammath (&#039;&#039;&#039;copyninja&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Jishnu Mohan (&#039;&#039;&#039;jishnu7&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Hrishikesh K.B (&#039;&#039;&#039;stultus&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Anivar Aravind (&#039;&#039;&#039;anivar&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Anilkumar K V (&#039;&#039;&#039;anilkumar&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Sajjad Anwar (&#039;&#039;&#039;geohacker&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Deepa V Gopinath (&#039;&#039;&#039;deepagopinath&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# jain Basil  (&#039;&#039;&#039;jainbasil&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Ershad K (&#039;&#039;&#039;ershad&#039;&#039;&#039; on irc.freenode.net&lt;br /&gt;
# Navaneeth (&#039;&#039;&#039;nkn__&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Nishan Naseer (&#039;&#039;&#039;nishan&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Nandaja Varma (&#039;&#039;&#039;gem&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
&lt;br /&gt;
=Ideas for Google Summer of Code 2014=&lt;br /&gt;
* Please Read the [http://wiki.smc.org.in/SoC/2014#FAQ FAQ]&lt;br /&gt;
* If you want to propose an idea, please do it in [http://lists.smc.org.in/listinfo.cgi/student-projects-smc.org.in student projects mailing list]&lt;br /&gt;
&lt;br /&gt;
=Projects with confirmed mentors=&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== A spell checker for Indic language that understands inflections ==&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Project&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
SILPA project has a spellchecker written using python with a not so simple algorithm. But still it is not capable of handling inflection and agglutination occurring in Indian languages especially south Indian languages. The dictionary we have for Malayalam spellchecker have about 150000 words. Of course we can expand the dictionary, but that doesn&#039;t have much value since words can be formed in Malayalam or Tamil etc by joining multiple words. In addition to that, words get inflected based on grammar forms(sandhi), plural, gender etc. Hunspell has a system to handle this, but so far nobody succeeded in getting it working for multi level suffix stripping as required for Malayalam. Some times a Malayalam word can be formed by more than 5 words joining together. We will need a word splitting logic or a table taking care of all patterns. The project is to attempt solving this with hunspell. If that is not feasible(hunspell upstream is not active), develop an algorithm and implement it.&lt;br /&gt;
&lt;br /&gt;
Recently Tamil attempted developing a spellchecker using Hunspell with multi level suffix stripping. You can see the result here https://github.com/thamizha/solthiruthi. &lt;br /&gt;
Our attempt should be first to use Hunspell to achieve spellchecking with agglutination and inflection. Probably it will require lot of scripting to generate suffix patterns, we can ask help from existing language communities too. If Hunspell has limitation with multi level suffxes- sometimes Indian languages require more than 5 levels of suffix stripping, we need to document it(bug and documentation) and try to attempt python based solution on top of SILPA framework.&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;[https://savannah.nongnu.org/task/index.php?12558 Savannah Task]&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039;: Advanced&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Confirmed Mentor&#039;&#039;&#039;: Santhosh Thottingal&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;How to contact the mentor&#039;&#039;&#039;: IRC - santhosh on #smc-project on Freenode&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;: Average level understanding of grammar system of at least one Indian language&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;What the student will learn&#039;&#039;&#039;: &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Indic rendering support in ConTeXt==&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Project&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
ConTeXt is another TeX macro system similar to LaTeX but much more suitable for design. To find more information about ConTeXt, see the wiki http://wiki.contextgarden.net/Main_Page. ConTeXt MKII  have Indic language rendering support using XeTeX. but MKII is deprecated, and the new MKIV backend doesn&#039;t support Indic rendering yet. The aim of this project is to add support to Inidic rendering to ConTeXt MKIV. XeTeX is using Harfbuzz to do correct Indic rendering.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;More Details&#039;&#039;&#039;: A partially working patch by Rajeesh for MKIV lua code is available. ConTeXt mkii (deprecated) can work with XeTeX backend for Indic rendering. Here is a sample file:&lt;br /&gt;
 \usemodule[simplefonts]&lt;br /&gt;
 \definefontfeature[malayalam][script=mlym]&lt;br /&gt;
 \setmainfont[Rachana][features=malayalam]&lt;br /&gt;
 \starttext&lt;br /&gt;
 മലയാളം \TeX ഉപയോഗിച്ച് ടൈപ്പ്സെറ്റ് ചെയ്തത്&lt;br /&gt;
 \stoptext&lt;br /&gt;
Generate the output using command&lt;br /&gt;
 texexec --xetex &amp;lt;file.tex&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;[https://savannah.nongnu.org/task/index.php?12559 Savannah Task]&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039; : Advanced&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Confirmed Mentor&#039;&#039;&#039; : Rajeesh K Nambiar&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;How to contact the mentor&#039;&#039;&#039;: IRC - rajeeshknambiar on #smc-project on Freenode&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;: Understanding of the TeX system, experience in either LaTeX or ConTeXt and basic understanding of Indic language rendering. MKIV uses Lua, familiarity with Lua, opentype specifications or Harfbuzz will be added advantage.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;What the students will learn&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Language model and Acoustic model for Malayalam language for speech recognition system in CMU Sphinx==&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Project&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
CMU Sphinx is a large vocabulary, speaker independent speech recognition codebase and suite of tools, which can be used to develop speech recognition system in any language. To develop an automatic speech recognition system in a language, acoustic model and language model has to framed for that particular language.  Acoustic models characterize how sound changes over time. It captures the characteristics of basic recognition units. The language model describes the likelihood, probability, or penalty taken when a sequence or collection of words is seen. It attempts to convey behavior of the language and tries to predict the occurrence of specific word sequences possible in the language. Once these two models are developed, it will be useful to every one doing research in speech processing. For Indian languages Hindi, Tamil, Telugu and Marati, ASR systems have been developed using sphinx engine. In this project work is aimed at developing acoustic model and language model for Malayalam.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Background Reading&#039;&#039;&#039;&lt;br /&gt;
* [http://www.cs.cmu.edu/~gopalakr/publications/spdatabases_specom05.pdf &#039;Development of Indian Language Speech Databases for Large Vocabulary Speech Recognition Systems&#039;], Gopalakrishna  Anumanchipalli, Rahul Chitturi, Sachin Joshi, Rohit Kumar, Satinder Pal Singh, R.N.V. Sitaram, S P Kishore&lt;br /&gt;
* [http://www.aclweb.org/anthology/W/W12/W12-5808.pdf &amp;quot;Automatic Pronunciation Evaluation And Mispronunciation Detection Using CMUSphinx&amp;quot;], Ronanki Srikanth, James Salsman&lt;br /&gt;
* http://www.speech.cs.cmu.edu/&lt;br /&gt;
* http://cmusphinx.sourceforge.net/wiki/tutorial&lt;br /&gt;
* [http://www.ijarcsse.com &amp;quot;HTK Based Telugu Speech Recognition&amp;quot;], P. Vijai Bhaskar, AVNIET ,Hyderabad, Prof. Dr. S. Rama Mohan Rao, A.Gopi &lt;br /&gt;
* [http://www.cs.cmu.edu/~araza/Automatic_Speech_Recognition_System_for_Urdu.PDF &amp;quot;Design and  Development of an Automatic Speech Recognition System for Urdu&amp;quot;], Agha Ali Raza,  M.Sc. Thesis, FAST‐National University of Computer and Emerging Sciences &lt;br /&gt;
* [http://www.ccis2k.org/iajit/PDF/vol.6,no.2/11IASRUCSS186.pdf &amp;quot;Investigation Arabic Speech Recognition Using CMU Sphinx System&amp;quot;], Hassan Satori1, 2, Hussein Hiyassat3, Mostafa Harti1, 2, and Noureddine Chenfour&lt;br /&gt;
* [http://www.try.idv.tw/static-resources/homework/pr/PR_Final_Report.pdf &amp;quot;Understanding the CMU Sphinx Speech Recognition System&amp;quot;], Chun-Feng Liao&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039; : &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Confirmed Mentor&#039;&#039;&#039; : Deepa P Gopinath&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;How to contact the mentor&#039;&#039;&#039;: IRC - deepagopinath on #smc-project on Freenode&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;: &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;What the students will learn&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Silpa based==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Provide REST API for new flask based Silpa, including conversion of templates to this REST API from JSON RPC===&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Project&#039;&#039;&#039;: &lt;br /&gt;
&lt;br /&gt;
Silpa is now relying on JSONRPC. We need to, either completely move to REST API or provide REST API as an additional feature.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039; : &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Confirmed Mentors&#039;&#039;&#039; : Vasudev Kamath, Jishnu Mohan&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;How to contact the mentors&#039;&#039;&#039;: IRC -&lt;br /&gt;
*Vasudev Kamath - copyninja on #smc-project and #silpa on Freenode&lt;br /&gt;
*Jishnu Mohan - jishnu7 on #smc-project and #silpa on Freenode&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;: Python , Flask , Jinja , HTML, Javascript&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;What the students will learn&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Android SDK for Silpa===&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Project&#039;&#039;&#039;: &lt;br /&gt;
&lt;br /&gt;
Port possible Silpa modules to java and create SDK so that other developers can use this for their apps. Modules like Indic Render, Transliteration, Payyas has really good potential in android because of the fragmentation exists in Android and lack for proper Indic support. This SDK will help developers to support their Indic app in wide range of android devices.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039; : &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Confirmed Mentors&#039;&#039;&#039; : Hrishikesh K. B, Jishnu Mohan, Aashik S&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;How to contact the mentor&#039;&#039;&#039;: IRC -&lt;br /&gt;
*Hrishikesh K B - stultus on on #smc-project and #silpa on Freenode&lt;br /&gt;
*Jishnu Mohan - jishnu7 on #smc-project and #silpa on Freenode&lt;br /&gt;
*Aashik S - irumbumoideen on #smc-project on Freenode&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;: Java, Android, Python&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;What the students will learn&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Converting indic processing modules currently in SILPA into javascript modules library===&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Project&#039;&#039;&#039;: &lt;br /&gt;
&lt;br /&gt;
Port some of the silpa algorithms to node modules. Several modules, alogorithms in SILPA project is done in python now. But porting them to javascript helps developers. For example, cross language transliteration can be done javascript too if we port the algorithm and transliteration rules. Similarly the approximate search can be ported. A flexibile fuzzy search on the web pages will be possible if we have the algorithm in javascript.&lt;br /&gt;
&lt;br /&gt;
Proposed javascript module pattern is https://github.com/umdjs/umd&lt;br /&gt;
&lt;br /&gt;
Student proposals should have a list of alogorithms planning to port, planned demo applications, planned documentation details, and publishing details(Example: npm registry)&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039; : &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Confirmed Mentor&#039;&#039;&#039; : Jishnu Mohan&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;How to contact the mentor&#039;&#039;&#039;: IRC - jishnu7 on #smc-project and #silpa on Freenode&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;: javascript, python&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;What the students will learn&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===  Improving cross language transliteration system.  ===&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Project&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
Currently only Kannada and Malayalam are perfect rest all are first converted to Malayalam then to English due to lack of language internal. Also currently for English to Indic we use CMUDict so transliteration capability is limited to words in CMUDict only probably we could develop better method for English to Indic transliteration&lt;br /&gt;
&lt;br /&gt;
CLDR has transliteration data for Indic languages. We can explore it and see the feasibility. For an intermediate representation of the scripts either IPA can be used or ISO 15919 standard can be used. All these must be supplemented with exception rules and special case handling to achieve more perfect result.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039; : &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Confirmed Mentors&#039;&#039;&#039; : Vasudev Kamath, Jishnu Mohan&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;How to contact the mentor&#039;&#039;&#039;: IRC -&lt;br /&gt;
*Vasudev Kamath - copyninja on #smc-project and #silpa on Freenode&lt;br /&gt;
*Jishnu Mohan - jishnu7 on #smc-project and #silpa on Freenode&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;: Python&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;What the students will learn&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
=== Internationalize SILPA project with Wikimedia jquery projects ,  Improve  the webfonts module in Silpa using jquery.webfonts and provide more Indic and complex fonts as part of it ===&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Project&#039;&#039;&#039;: &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Internationalize SILPA&#039;&#039;&#039; :-  &lt;br /&gt;
SILPA project has many Indic language applications, but as of now, if somebody want to input in Indian languages, there is no built in tool in it. Similarly, the application is not internationalized. Both of these can be achieved by using the [//github.com/wikimedia/jquery.ime jquery.ime] and [//github.com/wikimedia/jquery.ime jquery.i18n] libraries from Wikimedia. A sample implementation is avaliable in our [http://smc.org.in website]. The i18n should be in the SILPA flask framework with a nice templating system. Similarly the interface should have webfonts using [https://github.com/wikimedia/jquery.webfonts jquery.webfonts] library.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Improve  the webfonts &#039;&#039;&#039; :- &lt;br /&gt;
* Currently Silpa provides 36 webfonts. add more fonts to this collection.&lt;br /&gt;
* Rewrote webfonts module to use the features of jquery.webfonts&lt;br /&gt;
* Create a repo as per jquery.webfonts specification&lt;br /&gt;
* Provide a clean api so that other websites can use our webfonts in their websites&lt;br /&gt;
* Document the usage&lt;br /&gt;
* Provide font preview and download options  &lt;br /&gt;
* **This is partly done**(Task from last GSoC)&lt;br /&gt;
* flask-webfonts needs further improvements and fine tuning&lt;br /&gt;
* This should be integrated into our SILPA and submitted to Flask&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;More Details&#039;&#039;&#039;&lt;br /&gt;
* [https://github.com/wikimedia/jquery.i18n jquery.i18n]&lt;br /&gt;
* [https://github.com/wikimedia/jquery.ime jquery.ime]&lt;br /&gt;
* [https://github.com/wikimedia/jquery.webfonts jquery.webfonts]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039; : Medium&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Confirmed Mentors&#039;&#039;&#039; : Vasudev Kamath, Jishnu Mohan&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;How to contact the mentor&#039;&#039;&#039;: IRC&lt;br /&gt;
*Vasudev Kamath - copyninja on #smc-project and #silpa on Freenode&lt;br /&gt;
*Jishnu Mohan - jishnu7 on #smc-project and #silpa on Freenode&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;: jQuery, css, html5, Python , flask , technical understanding about fonts&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;What the students will learn&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
==Language filter for diaspora==&lt;br /&gt;
&lt;br /&gt;
Diaspora is a Free Software, federated social networking platform. Diaspora users post in many languages. When people use more than one language in their posts, it is inconvenient for people who don&#039;t understand a language. This task is to tag every post with languages used in the post, ideally detected automatically, but with an option to override it. Once each post has a language tag, people should be able to choose their preferred language and posts in other languages should be hidden by default. Also provide an option to translate posts and comments.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039; : &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Confirmed Mentors&#039;&#039;&#039; : Pirate Praveen, Ershad K&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;How to contact the mentors&#039;&#039;&#039;: IRC  &lt;br /&gt;
*Pirate Praveen - j4v4m4n on #smc-project on Freenode&lt;br /&gt;
*Ershad K - ershad on #smc-project on Freenode&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;: Ruby on Rails&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;What the students will learn&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Varnam Based==&lt;br /&gt;
&lt;br /&gt;
Varnam is a cross-platform predictive transliterator for Indian languages. It works mostly like Google&#039;s transliterate, but shows key differences in the way word tokenization is done. It has a learning system built in which allows Varnam to make smart predictions. &lt;br /&gt;
&lt;br /&gt;
There are varnam clients available as [https://addons.mozilla.org/en-US/firefox/addon/varnam-transliteration-base/ Firefox]] &amp;amp; [https://chrome.google.com/webstore/detail/varnam-ime/abcfkeabpcanobhdmcmdabejaamephaf Chrome addon] and an [https://gitorious.org/varnamproject/libvarnam-ibus/source/d939adf50024013902c27310c03ef21a9210cdcb IBus engine].&lt;br /&gt;
&lt;br /&gt;
To try out Varnam, navigate to [http://varnamproject.com/editor[http://varnamproject.com/editor]]. Currently it support Hindi and Malayalam.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Improvements to the REST API===&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Project&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
This includes rewrite of the current implementation in `golang` and add support for WebSockets to improve the input experience. This also&lt;br /&gt;
includes making scripts that would ease embedding input on any webpage. All the changes done will go live on[1]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039; : Advanced&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Confirmed Mentor&#039;&#039;&#039; : Navaneeth K N&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;How to contact the mentor&#039;&#039;&#039;: IRC - nkn__ on #smc-project on Freenode&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;: Basic understanding of golang and C&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;What the students will learn&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Improve the learning system===&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Project&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
The main goal of this is to improve how varnam tokenizes when learning words. Today, when a word is learned, varnam takes all the possible prefixes into account and learn all of them to improve future suggestions. But sometimes, this is not enough to predict good suggestions. An improvement is suggested which will try to infer the base form of the word under learning.&lt;br /&gt;
&lt;br /&gt;
Varnam has a learning system built-in which can learn words and it can also learn possible other ways to write a word. Consider the following example. &lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
learn(&amp;quot;भारत&amp;quot;) = [bharat, bhaarath, bharath]&lt;br /&gt;
transliterate(&amp;quot;bharat&amp;quot;) = भारत&lt;br /&gt;
transliterate(&amp;quot;bhaarath&amp;quot;) = भारत&lt;br /&gt;
transliterate(&amp;quot;bharath&amp;quot;) = भारत&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Varnam also learns a word&#039;s prefixes so that it can produce better predictions for any word which has the same prefix. So in this case, with just learning the word &amp;quot;भारत&amp;quot;, varnam can predict &amp;quot;bharateey&amp;quot; = &amp;quot;भारतीय&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
The proposed idea talks about making this learn better. One example is infer the word &amp;quot;भारत&amp;quot; when learning भारतीय. Something like a porter stemmer implementation but integrated into the varnam framework so that&lt;br /&gt;
new language support can be added easily.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039; : Medium&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Confirmed Mentor&#039;&#039;&#039; : Navaneeth K N&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;How to contact the mentor&#039;&#039;&#039;: IRC - nkn__ on #smc-project on Freenode&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;:  Knowledge in C, Ruby (basics)&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;What the students will learn&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Word corpus synchronization ===&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Project&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
Create a cross-platform synchronization tool which can upload/download the word corpus from offline IMEs like varnam-ibus[2]. This helps to build the online words corpus easily.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039; : Medium&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Confirmed Mentor&#039;&#039;&#039; : Navaneeth K N&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;How to contact the mentor&#039;&#039;&#039;: IRC - nkn__ on #smc-project on Freenode&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;:  Knowledge in C/golang&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;What the students will learn&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [1]: http://www.varnamproject.com&lt;br /&gt;
* [2]: https://gitorious.org/varnamproject/libvarnam-ibus/&lt;br /&gt;
&lt;br /&gt;
==Adding Braille Keyboard layouts for Indian Languages to m17n Library==&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Project&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
Project is building support for Bharati Braille keyboard layouts in GNU/Linux systemes.  Bharati Braille standard is the official Braille standard in India. A regular QWERTY keyboard is used for data entry. SDF-JKL keys are used for six dots of Braille. This support need to be built as m17n layouts. This will enable visually challenged people who studied braille layouts to use GNU/Linux systems easily with the help of Audio feedback from TTS&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;More Details&#039;&#039;&#039;&lt;br /&gt;
* http://www.acharya.gen.in:8080/disabilities/bh_brl.php&lt;br /&gt;
* http://en.wikipedia.org/wiki/Bharati_Braille&lt;br /&gt;
* http://www.nongnu.org/m17n/&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039; : &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Confirmed Mentor&#039;&#039;&#039; : Anivar Aravind&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;How to contact the mentor&#039;&#039;&#039;: IRC - anivar on #smc-project on Freenode&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;: &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;What the students will learn&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Grandham ==&lt;br /&gt;
&lt;br /&gt;
=== Adding MARC21 import/export feature in Grandham ===&lt;br /&gt;
&lt;br /&gt;
We need a feature in Grandham to import and parse data from MARC21 documents. We should also be able to export existing data in MARC21.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039; : High&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Confirmed Mentor&#039;&#039;&#039; : Ershad K&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;How to contact the mentor&#039;&#039;&#039;: IRC - ershad on #smc-project on Freenode&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;: Knowledge in Ruby/Ruby on Rails&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;What the students will learn&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [1]: http://dev.grandham.org&lt;br /&gt;
* [2]: https://github.com/smc/grandham&lt;br /&gt;
&lt;br /&gt;
=Projects with unconfirmed mentors=&lt;/div&gt;</summary>
		<author><name>Nandaja</name></author>
	</entry>
	<entry>
		<id>https://wiki.smc.org.in/index.php?title=GSoC/2014/Project_ideas&amp;diff=4633</id>
		<title>GSoC/2014/Project ideas</title>
		<link rel="alternate" type="text/html" href="https://wiki.smc.org.in/index.php?title=GSoC/2014/Project_ideas&amp;diff=4633"/>
		<updated>2014-02-28T12:37:53Z</updated>

		<summary type="html">&lt;p&gt;Nandaja: /* Adding MARC21 import/export feature in Grandham */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;center&amp;gt; &lt;br /&gt;
&amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt; &amp;lt;big&amp;gt;&#039;&#039;&#039;Apart from the following ideas , you can propose your own ideas&#039;&#039;&#039;&amp;lt;/big&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Potential Mentors=&lt;br /&gt;
# Santhosh Thottingal (&#039;&#039;&#039;santhosh&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Baiju M (&#039;&#039;&#039;baijum&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Praveen A (&#039;&#039;&#039;j4v4m4n&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Rajeesh K Nambiar (&#039;&#039;&#039;rajeeshknambiar&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Vasudev Kammath (&#039;&#039;&#039;copyninja&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Jishnu Mohan (&#039;&#039;&#039;jishnu7&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Hrishikesh K.B (&#039;&#039;&#039;stultus&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Anivar Aravind (&#039;&#039;&#039;anivar&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Anilkumar K V (&#039;&#039;&#039;anilkumar&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Sajjad Anwar (&#039;&#039;&#039;geohacker&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Deepa V Gopinath (&#039;&#039;&#039;deepagopinath&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# jain Basil  (&#039;&#039;&#039;jainbasil&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Ershad K (&#039;&#039;&#039;ershad&#039;&#039;&#039; on irc.freenode.net&lt;br /&gt;
# Navaneeth (&#039;&#039;&#039;nkn__&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Nishan Naseer (&#039;&#039;&#039;nishan&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Nandaja Varma (&#039;&#039;&#039;gem&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
&lt;br /&gt;
=Ideas for Google Summer of Code 2014=&lt;br /&gt;
* Please Read the [http://wiki.smc.org.in/SoC/2014#FAQ FAQ]&lt;br /&gt;
* If you want to propose an idea, please do it in [http://lists.smc.org.in/listinfo.cgi/student-projects-smc.org.in student projects mailing list]&lt;br /&gt;
&lt;br /&gt;
=Projects with confirmed mentors=&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== A spell checker for Indic language that understands inflections ==&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Project&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
SILPA project has a spellchecker written using python with a not so simple algorithm. But still it is not capable of handling inflection and agglutination occurring in Indian languages especially south Indian languages. The dictionary we have for Malayalam spellchecker have about 150000 words. Of course we can expand the dictionary, but that doesn&#039;t have much value since words can be formed in Malayalam or Tamil etc by joining multiple words. In addition to that, words get inflected based on grammar forms(sandhi), plural, gender etc. Hunspell has a system to handle this, but so far nobody succeeded in getting it working for multi level suffix stripping as required for Malayalam. Some times a Malayalam word can be formed by more than 5 words joining together. We will need a word splitting logic or a table taking care of all patterns. The project is to attempt solving this with hunspell. If that is not feasible(hunspell upstream is not active), develop an algorithm and implement it.&lt;br /&gt;
&lt;br /&gt;
Recently Tamil attempted developing a spellchecker using Hunspell with multi level suffix stripping. You can see the result here https://github.com/thamizha/solthiruthi. &lt;br /&gt;
Our attempt should be first to use Hunspell to achieve spellchecking with agglutination and inflection. Probably it will require lot of scripting to generate suffix patterns, we can ask help from existing language communities too. If Hunspell has limitation with multi level suffxes- sometimes Indian languages require more than 5 levels of suffix stripping, we need to document it(bug and documentation) and try to attempt python based solution on top of SILPA framework.&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;[https://savannah.nongnu.org/task/index.php?12558 Savannah Task]&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039;: Advanced&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Confirmed Mentor&#039;&#039;&#039;: Santhosh Thottingal&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;How to contact the mentor&#039;&#039;&#039;: IRC - santhosh on #smc-project on Freenode&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;: Average level understanding of grammar system of at least one Indian language&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;What the student will learn&#039;&#039;&#039;: &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Indic rendering support in ConTeXt==&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Project&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
ConTeXt is another TeX macro system similar to LaTeX but much more suitable for design. To find more information about ConTeXt, see the wiki http://wiki.contextgarden.net/Main_Page. ConTeXt MKII  have Indic language rendering support using XeTeX. but MKII is deprecated, and the new MKIV backend doesn&#039;t support Indic rendering yet. The aim of this project is to add support to Inidic rendering to ConTeXt MKIV. XeTeX is using Harfbuzz to do correct Indic rendering.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;More Details&#039;&#039;&#039;: A partially working patch by Rajeesh for MKIV lua code is available. ConTeXt mkii (deprecated) can work with XeTeX backend for Indic rendering. Here is a sample file:&lt;br /&gt;
 \usemodule[simplefonts]&lt;br /&gt;
 \definefontfeature[malayalam][script=mlym]&lt;br /&gt;
 \setmainfont[Rachana][features=malayalam]&lt;br /&gt;
 \starttext&lt;br /&gt;
 മലയാളം \TeX ഉപയോഗിച്ച് ടൈപ്പ്സെറ്റ് ചെയ്തത്&lt;br /&gt;
 \stoptext&lt;br /&gt;
Generate the output using command&lt;br /&gt;
 texexec --xetex &amp;lt;file.tex&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;[https://savannah.nongnu.org/task/index.php?12559 Savannah Task]&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039; : Advanced&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Confirmed Mentor&#039;&#039;&#039; : Rajeesh K Nambiar&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;How to contact the mentor&#039;&#039;&#039;: IRC - rajeeshknambiar on #smc-project on Freenode&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;: Understanding of the TeX system, experience in either LaTeX or ConTeXt and basic understanding of Indic language rendering. MKIV uses Lua, familiarity with Lua, opentype specifications or Harfbuzz will be added advantage.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;What the students will learn&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Language model and Acoustic model for Malayalam language for speech recognition system in CMU Sphinx==&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Project&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
CMU Sphinx is a large vocabulary, speaker independent speech recognition codebase and suite of tools, which can be used to develop speech recognition system in any language. To develop an automatic speech recognition system in a language, acoustic model and language model has to framed for that particular language.  Acoustic models characterize how sound changes over time. It captures the characteristics of basic recognition units. The language model describes the likelihood, probability, or penalty taken when a sequence or collection of words is seen. It attempts to convey behavior of the language and tries to predict the occurrence of specific word sequences possible in the language. Once these two models are developed, it will be useful to every one doing research in speech processing. For Indian languages Hindi, Tamil, Telugu and Marati, ASR systems have been developed using sphinx engine. In this project work is aimed at developing acoustic model and language model for Malayalam.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Background Reading&#039;&#039;&#039;&lt;br /&gt;
* [http://www.cs.cmu.edu/~gopalakr/publications/spdatabases_specom05.pdf &#039;Development of Indian Language Speech Databases for Large Vocabulary Speech Recognition Systems&#039;], Gopalakrishna  Anumanchipalli, Rahul Chitturi, Sachin Joshi, Rohit Kumar, Satinder Pal Singh, R.N.V. Sitaram, S P Kishore&lt;br /&gt;
* [http://www.aclweb.org/anthology/W/W12/W12-5808.pdf &amp;quot;Automatic Pronunciation Evaluation And Mispronunciation Detection Using CMUSphinx&amp;quot;], Ronanki Srikanth, James Salsman&lt;br /&gt;
* http://www.speech.cs.cmu.edu/&lt;br /&gt;
* http://cmusphinx.sourceforge.net/wiki/tutorial&lt;br /&gt;
* [http://www.ijarcsse.com &amp;quot;HTK Based Telugu Speech Recognition&amp;quot;], P. Vijai Bhaskar, AVNIET ,Hyderabad, Prof. Dr. S. Rama Mohan Rao, A.Gopi &lt;br /&gt;
* [http://www.cs.cmu.edu/~araza/Automatic_Speech_Recognition_System_for_Urdu.PDF &amp;quot;Design and  Development of an Automatic Speech Recognition System for Urdu&amp;quot;], Agha Ali Raza,  M.Sc. Thesis, FAST‐National University of Computer and Emerging Sciences &lt;br /&gt;
* [http://www.ccis2k.org/iajit/PDF/vol.6,no.2/11IASRUCSS186.pdf &amp;quot;Investigation Arabic Speech Recognition Using CMU Sphinx System&amp;quot;], Hassan Satori1, 2, Hussein Hiyassat3, Mostafa Harti1, 2, and Noureddine Chenfour&lt;br /&gt;
* [http://www.try.idv.tw/static-resources/homework/pr/PR_Final_Report.pdf &amp;quot;Understanding the CMU Sphinx Speech Recognition System&amp;quot;], Chun-Feng Liao&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039; : &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Confirmed Mentor&#039;&#039;&#039; : Deepa P Gopinath&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;How to contact the mentor&#039;&#039;&#039;: IRC - deepagopinath on #smc-project on Freenode&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;: &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;What the students will learn&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Silpa based==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Provide REST API for new flask based Silpa, including conversion of templates to this REST API from JSON RPC===&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Project&#039;&#039;&#039;: &lt;br /&gt;
&lt;br /&gt;
Silpa is now relying on JSONRPC. We need to, either completely move to REST API or provide REST API as an additional feature.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039; : &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Confirmed Mentors&#039;&#039;&#039; : Vasudev Kamath, Jishnu Mohan&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;How to contact the mentors&#039;&#039;&#039;: IRC -&lt;br /&gt;
*Vasudev Kamath - copyninja on #smc-project and #silpa on Freenode&lt;br /&gt;
*Jishnu Mohan - jishnu7 on #smc-project and #silpa on Freenode&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;: Python , Flask , Jinja , HTML, Javascript&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;What the students will learn&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Android SDK for Silpa===&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Project&#039;&#039;&#039;: &lt;br /&gt;
&lt;br /&gt;
Port possible Silpa modules to java and create SDK so that other developers can use this for their apps. Modules like Indic Render, Transliteration, Payyas has really good potential in android because of the fragmentation exists in Android and lack for proper Indic support. This SDK will help developers to support their Indic app in wide range of android devices.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039; : &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Confirmed Mentors&#039;&#039;&#039; : Hrishikesh K. B, Jishnu Mohan, Aashik S&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;How to contact the mentor&#039;&#039;&#039;: IRC -&lt;br /&gt;
*Hrishikesh K B - stultus on on #smc-project and #silpa on Freenode&lt;br /&gt;
*Jishnu Mohan - jishnu7 on #smc-project and #silpa on Freenode&lt;br /&gt;
*Aashik S - irumbumoideen on #smc-project on Freenode&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;: Java, Android, Python&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;What the students will learn&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Converting indic processing modules currently in SILPA into javascript modules library===&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Project&#039;&#039;&#039;: &lt;br /&gt;
&lt;br /&gt;
Port some of the silpa algorithms to node modules. Several modules, alogorithms in SILPA project is done in python now. But porting them to javascript helps developers. For example, cross language transliteration can be done javascript too if we port the algorithm and transliteration rules. Similarly the approximate search can be ported. A flexibile fuzzy search on the web pages will be possible if we have the algorithm in javascript.&lt;br /&gt;
&lt;br /&gt;
Proposed javascript module pattern is https://github.com/umdjs/umd&lt;br /&gt;
&lt;br /&gt;
Student proposals should have a list of alogorithms planning to port, planned demo applications, planned documentation details, and publishing details(Example: npm registry)&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039; : &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Confirmed Mentor&#039;&#039;&#039; : Jishnu Mohan&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;How to contact the mentor&#039;&#039;&#039;: IRC - jishnu7 on #smc-project and #silpa on Freenode&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;: javascript, python&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;What the students will learn&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===  Improving cross language transliteration system.  ===&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Project&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
Currently only Kannada and Malayalam are perfect rest all are first converted to Malayalam then to English due to lack of language internal. Also currently for English to Indic we use CMUDict so transliteration capability is limited to words in CMUDict only probably we could develop better method for English to Indic transliteration&lt;br /&gt;
&lt;br /&gt;
CLDR has transliteration data for Indic languages. We can explore it and see the feasibility. For an intermediate representation of the scripts either IPA can be used or ISO 15919 standard can be used. All these must be supplemented with exception rules and special case handling to achieve more perfect result.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039; : &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Confirmed Mentors&#039;&#039;&#039; : Vasudev Kamath, Jishnu Mohan&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;How to contact the mentor&#039;&#039;&#039;: IRC -&lt;br /&gt;
*Vasudev Kamath - copyninja on #smc-project and #silpa on Freenode&lt;br /&gt;
*Jishnu Mohan - jishnu7 on #smc-project and #silpa on Freenode&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;: Python&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;What the students will learn&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
=== Internationalize SILPA project with Wikimedia jquery projects ,  Improve  the webfonts module in Silpa using jquery.webfonts and provide more Indic and complex fonts as part of it ===&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Project&#039;&#039;&#039;: &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Internationalize SILPA&#039;&#039;&#039; :-  &lt;br /&gt;
SILPA project has many Indic language applications, but as of now, if somebody want to input in Indian languages, there is no built in tool in it. Similarly, the application is not internationalized. Both of these can be achieved by using the [//github.com/wikimedia/jquery.ime jquery.ime] and [//github.com/wikimedia/jquery.ime jquery.i18n] libraries from Wikimedia. A sample implementation is avaliable in our [http://smc.org.in website]. The i18n should be in the SILPA flask framework with a nice templating system. Similarly the interface should have webfonts using [https://github.com/wikimedia/jquery.webfonts jquery.webfonts] library.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Improve  the webfonts &#039;&#039;&#039; :- &lt;br /&gt;
* Currently Silpa provides 36 webfonts. add more fonts to this collection.&lt;br /&gt;
* Rewrote webfonts module to use the features of jquery.webfonts&lt;br /&gt;
* reate a repo as per jquery.webfonts specification&lt;br /&gt;
* Provide a clean api so that other websites can use our webfonts in their websites&lt;br /&gt;
* Document the usage&lt;br /&gt;
* Provide font preview and download options  &lt;br /&gt;
* **This is partly done**. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;More Details&#039;&#039;&#039;&lt;br /&gt;
* [https://github.com/wikimedia/jquery.i18n jquery.i18n]&lt;br /&gt;
* [https://github.com/wikimedia/jquery.ime jquery.ime]&lt;br /&gt;
* [https://github.com/wikimedia/jquery.webfonts jquery.webfonts]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039; : &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Confirmed Mentors&#039;&#039;&#039; : Vasudev Kamath, Jishnu Mohan&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;How to contact the mentor&#039;&#039;&#039;: IRC&lt;br /&gt;
*Vasudev Kamath - copyninja on #smc-project and #silpa on Freenode&lt;br /&gt;
*Jishnu Mohan - jishnu7 on #smc-project and #silpa on Freenode&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;: jQuery, css, html5, Python , flask , technical understanding about fonts&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;What the students will learn&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Language filter for diaspora==&lt;br /&gt;
&lt;br /&gt;
Diaspora is a Free Software, federated social networking platform. Diaspora users post in many languages. When people use more than one language in their posts, it is inconvenient for people who don&#039;t understand a language. This task is to tag every post with languages used in the post, ideally detected automatically, but with an option to override it. Once each post has a language tag, people should be able to choose their preferred language and posts in other languages should be hidden by default. Also provide an option to translate posts and comments.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039; : &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Confirmed Mentors&#039;&#039;&#039; : Pirate Praveen, Ershad K&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;How to contact the mentors&#039;&#039;&#039;: IRC  &lt;br /&gt;
*Pirate Praveen - j4v4m4n on #smc-project on Freenode&lt;br /&gt;
*Ershad K - ershad on #smc-project on Freenode&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;: Ruby on Rails&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;What the students will learn&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Varnam Based==&lt;br /&gt;
&lt;br /&gt;
Varnam is a cross-platform predictive transliterator for Indian languages. It works mostly like Google&#039;s transliterate, but shows key differences in the way word tokenization is done. It has a learning system built in which allows Varnam to make smart predictions. &lt;br /&gt;
&lt;br /&gt;
There are varnam clients available as [https://addons.mozilla.org/en-US/firefox/addon/varnam-transliteration-base/ Firefox]] &amp;amp; [https://chrome.google.com/webstore/detail/varnam-ime/abcfkeabpcanobhdmcmdabejaamephaf Chrome addon] and an [https://gitorious.org/varnamproject/libvarnam-ibus/source/d939adf50024013902c27310c03ef21a9210cdcb IBus engine].&lt;br /&gt;
&lt;br /&gt;
To try out Varnam, navigate to [http://varnamproject.com/editor[http://varnamproject.com/editor]]. Currently it support Hindi and Malayalam.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Improvements to the REST API===&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Project&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
This includes rewrite of the current implementation in `golang` and add support for WebSockets to improve the input experience. This also&lt;br /&gt;
includes making scripts that would ease embedding input on any webpage. All the changes done will go live on[1]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039; : Advanced&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Confirmed Mentor&#039;&#039;&#039; : Navaneeth K N&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;How to contact the mentor&#039;&#039;&#039;: IRC - nkn__ on #smc-project on Freenode&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;: Basic understanding of golang and C&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;What the students will learn&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Improve the learning system===&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Project&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
The main goal of this is to improve how varnam tokenizes when learning words. Today, when a word is learned, varnam takes all the possible prefixes into account and learn all of them to improve future suggestions. But sometimes, this is not enough to predict good suggestions. An improvement is suggested which will try to infer the base form of the word under learning.&lt;br /&gt;
&lt;br /&gt;
Varnam has a learning system built-in which can learn words and it can also learn possible other ways to write a word. Consider the following example. &lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
learn(&amp;quot;भारत&amp;quot;) = [bharat, bhaarath, bharath]&lt;br /&gt;
transliterate(&amp;quot;bharat&amp;quot;) = भारत&lt;br /&gt;
transliterate(&amp;quot;bhaarath&amp;quot;) = भारत&lt;br /&gt;
transliterate(&amp;quot;bharath&amp;quot;) = भारत&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Varnam also learns a word&#039;s prefixes so that it can produce better predictions for any word which has the same prefix. So in this case, with just learning the word &amp;quot;भारत&amp;quot;, varnam can predict &amp;quot;bharateey&amp;quot; = &amp;quot;भारतीय&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
The proposed idea talks about making this learn better. One example is infer the word &amp;quot;भारत&amp;quot; when learning भारतीय. Something like a porter stemmer implementation but integrated into the varnam framework so that&lt;br /&gt;
new language support can be added easily.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039; : Medium&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Confirmed Mentor&#039;&#039;&#039; : Navaneeth K N&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;How to contact the mentor&#039;&#039;&#039;: IRC - nkn__ on #smc-project on Freenode&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;:  Knowledge in C, Ruby (basics)&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;What the students will learn&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Word corpus synchronization ===&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Project&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
Create a cross-platform synchronization tool which can upload/download the word corpus from offline IMEs like varnam-ibus[2]. This helps to build the online words corpus easily.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039; : Medium&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Confirmed Mentor&#039;&#039;&#039; : Navaneeth K N&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;How to contact the mentor&#039;&#039;&#039;: IRC - nkn__ on #smc-project on Freenode&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;:  Knowledge in C/golang&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;What the students will learn&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [1]: http://www.varnamproject.com&lt;br /&gt;
* [2]: https://gitorious.org/varnamproject/libvarnam-ibus/&lt;br /&gt;
&lt;br /&gt;
==Adding Braille Keyboard layouts for Indian Languages to m17n Library==&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Project&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
Project is building support for Bharati Braille keyboard layouts in GNU/Linux systemes.  Bharati Braille standard is the official Braille standard in India. A regular QWERTY keyboard is used for data entry. SDF-JKL keys are used for six dots of Braille. This support need to be built as m17n layouts. This will enable visually challenged people who studied braille layouts to use GNU/Linux systems easily with the help of Audio feedback from TTS&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;More Details&#039;&#039;&#039;&lt;br /&gt;
* http://www.acharya.gen.in:8080/disabilities/bh_brl.php&lt;br /&gt;
* http://en.wikipedia.org/wiki/Bharati_Braille&lt;br /&gt;
* http://www.nongnu.org/m17n/&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039; : &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Confirmed Mentor&#039;&#039;&#039; : Anivar Aravind&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;How to contact the mentor&#039;&#039;&#039;: IRC - anivar on #smc-project on Freenode&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;: &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;What the students will learn&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Grandham ==&lt;br /&gt;
&lt;br /&gt;
=== Adding MARC21 import/export feature in Grandham ===&lt;br /&gt;
&lt;br /&gt;
We need a feature in Grandham to import and parse data from MARC21 documents. We should also be able to export existing data in MARC21.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039; : High&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Confirmed Mentor&#039;&#039;&#039; : Ershad K&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;How to contact the mentor&#039;&#039;&#039;: IRC - ershad on #smc-project on Freenode&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;: Knowledge in Ruby/Ruby on Rails&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;What the students will learn&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [1]: http://dev.grandham.org&lt;br /&gt;
* [2]: https://github.com/smc/grandham&lt;br /&gt;
&lt;br /&gt;
=Projects with unconfirmed mentors=&lt;/div&gt;</summary>
		<author><name>Nandaja</name></author>
	</entry>
	<entry>
		<id>https://wiki.smc.org.in/index.php?title=GSoC/2014/Project_ideas&amp;diff=4632</id>
		<title>GSoC/2014/Project ideas</title>
		<link rel="alternate" type="text/html" href="https://wiki.smc.org.in/index.php?title=GSoC/2014/Project_ideas&amp;diff=4632"/>
		<updated>2014-02-28T12:37:40Z</updated>

		<summary type="html">&lt;p&gt;Nandaja: /* Word corpus synchronization */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;center&amp;gt; &lt;br /&gt;
&amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt; &amp;lt;big&amp;gt;&#039;&#039;&#039;Apart from the following ideas , you can propose your own ideas&#039;&#039;&#039;&amp;lt;/big&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Potential Mentors=&lt;br /&gt;
# Santhosh Thottingal (&#039;&#039;&#039;santhosh&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Baiju M (&#039;&#039;&#039;baijum&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Praveen A (&#039;&#039;&#039;j4v4m4n&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Rajeesh K Nambiar (&#039;&#039;&#039;rajeeshknambiar&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Vasudev Kammath (&#039;&#039;&#039;copyninja&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Jishnu Mohan (&#039;&#039;&#039;jishnu7&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Hrishikesh K.B (&#039;&#039;&#039;stultus&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Anivar Aravind (&#039;&#039;&#039;anivar&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Anilkumar K V (&#039;&#039;&#039;anilkumar&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Sajjad Anwar (&#039;&#039;&#039;geohacker&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Deepa V Gopinath (&#039;&#039;&#039;deepagopinath&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# jain Basil  (&#039;&#039;&#039;jainbasil&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Ershad K (&#039;&#039;&#039;ershad&#039;&#039;&#039; on irc.freenode.net&lt;br /&gt;
# Navaneeth (&#039;&#039;&#039;nkn__&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Nishan Naseer (&#039;&#039;&#039;nishan&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Nandaja Varma (&#039;&#039;&#039;gem&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
&lt;br /&gt;
=Ideas for Google Summer of Code 2014=&lt;br /&gt;
* Please Read the [http://wiki.smc.org.in/SoC/2014#FAQ FAQ]&lt;br /&gt;
* If you want to propose an idea, please do it in [http://lists.smc.org.in/listinfo.cgi/student-projects-smc.org.in student projects mailing list]&lt;br /&gt;
&lt;br /&gt;
=Projects with confirmed mentors=&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== A spell checker for Indic language that understands inflections ==&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Project&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
SILPA project has a spellchecker written using python with a not so simple algorithm. But still it is not capable of handling inflection and agglutination occurring in Indian languages especially south Indian languages. The dictionary we have for Malayalam spellchecker have about 150000 words. Of course we can expand the dictionary, but that doesn&#039;t have much value since words can be formed in Malayalam or Tamil etc by joining multiple words. In addition to that, words get inflected based on grammar forms(sandhi), plural, gender etc. Hunspell has a system to handle this, but so far nobody succeeded in getting it working for multi level suffix stripping as required for Malayalam. Some times a Malayalam word can be formed by more than 5 words joining together. We will need a word splitting logic or a table taking care of all patterns. The project is to attempt solving this with hunspell. If that is not feasible(hunspell upstream is not active), develop an algorithm and implement it.&lt;br /&gt;
&lt;br /&gt;
Recently Tamil attempted developing a spellchecker using Hunspell with multi level suffix stripping. You can see the result here https://github.com/thamizha/solthiruthi. &lt;br /&gt;
Our attempt should be first to use Hunspell to achieve spellchecking with agglutination and inflection. Probably it will require lot of scripting to generate suffix patterns, we can ask help from existing language communities too. If Hunspell has limitation with multi level suffxes- sometimes Indian languages require more than 5 levels of suffix stripping, we need to document it(bug and documentation) and try to attempt python based solution on top of SILPA framework.&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;[https://savannah.nongnu.org/task/index.php?12558 Savannah Task]&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039;: Advanced&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Confirmed Mentor&#039;&#039;&#039;: Santhosh Thottingal&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;How to contact the mentor&#039;&#039;&#039;: IRC - santhosh on #smc-project on Freenode&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;: Average level understanding of grammar system of at least one Indian language&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;What the student will learn&#039;&#039;&#039;: &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Indic rendering support in ConTeXt==&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Project&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
ConTeXt is another TeX macro system similar to LaTeX but much more suitable for design. To find more information about ConTeXt, see the wiki http://wiki.contextgarden.net/Main_Page. ConTeXt MKII  have Indic language rendering support using XeTeX. but MKII is deprecated, and the new MKIV backend doesn&#039;t support Indic rendering yet. The aim of this project is to add support to Inidic rendering to ConTeXt MKIV. XeTeX is using Harfbuzz to do correct Indic rendering.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;More Details&#039;&#039;&#039;: A partially working patch by Rajeesh for MKIV lua code is available. ConTeXt mkii (deprecated) can work with XeTeX backend for Indic rendering. Here is a sample file:&lt;br /&gt;
 \usemodule[simplefonts]&lt;br /&gt;
 \definefontfeature[malayalam][script=mlym]&lt;br /&gt;
 \setmainfont[Rachana][features=malayalam]&lt;br /&gt;
 \starttext&lt;br /&gt;
 മലയാളം \TeX ഉപയോഗിച്ച് ടൈപ്പ്സെറ്റ് ചെയ്തത്&lt;br /&gt;
 \stoptext&lt;br /&gt;
Generate the output using command&lt;br /&gt;
 texexec --xetex &amp;lt;file.tex&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;[https://savannah.nongnu.org/task/index.php?12559 Savannah Task]&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039; : Advanced&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Confirmed Mentor&#039;&#039;&#039; : Rajeesh K Nambiar&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;How to contact the mentor&#039;&#039;&#039;: IRC - rajeeshknambiar on #smc-project on Freenode&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;: Understanding of the TeX system, experience in either LaTeX or ConTeXt and basic understanding of Indic language rendering. MKIV uses Lua, familiarity with Lua, opentype specifications or Harfbuzz will be added advantage.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;What the students will learn&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Language model and Acoustic model for Malayalam language for speech recognition system in CMU Sphinx==&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Project&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
CMU Sphinx is a large vocabulary, speaker independent speech recognition codebase and suite of tools, which can be used to develop speech recognition system in any language. To develop an automatic speech recognition system in a language, acoustic model and language model has to framed for that particular language.  Acoustic models characterize how sound changes over time. It captures the characteristics of basic recognition units. The language model describes the likelihood, probability, or penalty taken when a sequence or collection of words is seen. It attempts to convey behavior of the language and tries to predict the occurrence of specific word sequences possible in the language. Once these two models are developed, it will be useful to every one doing research in speech processing. For Indian languages Hindi, Tamil, Telugu and Marati, ASR systems have been developed using sphinx engine. In this project work is aimed at developing acoustic model and language model for Malayalam.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Background Reading&#039;&#039;&#039;&lt;br /&gt;
* [http://www.cs.cmu.edu/~gopalakr/publications/spdatabases_specom05.pdf &#039;Development of Indian Language Speech Databases for Large Vocabulary Speech Recognition Systems&#039;], Gopalakrishna  Anumanchipalli, Rahul Chitturi, Sachin Joshi, Rohit Kumar, Satinder Pal Singh, R.N.V. Sitaram, S P Kishore&lt;br /&gt;
* [http://www.aclweb.org/anthology/W/W12/W12-5808.pdf &amp;quot;Automatic Pronunciation Evaluation And Mispronunciation Detection Using CMUSphinx&amp;quot;], Ronanki Srikanth, James Salsman&lt;br /&gt;
* http://www.speech.cs.cmu.edu/&lt;br /&gt;
* http://cmusphinx.sourceforge.net/wiki/tutorial&lt;br /&gt;
* [http://www.ijarcsse.com &amp;quot;HTK Based Telugu Speech Recognition&amp;quot;], P. Vijai Bhaskar, AVNIET ,Hyderabad, Prof. Dr. S. Rama Mohan Rao, A.Gopi &lt;br /&gt;
* [http://www.cs.cmu.edu/~araza/Automatic_Speech_Recognition_System_for_Urdu.PDF &amp;quot;Design and  Development of an Automatic Speech Recognition System for Urdu&amp;quot;], Agha Ali Raza,  M.Sc. Thesis, FAST‐National University of Computer and Emerging Sciences &lt;br /&gt;
* [http://www.ccis2k.org/iajit/PDF/vol.6,no.2/11IASRUCSS186.pdf &amp;quot;Investigation Arabic Speech Recognition Using CMU Sphinx System&amp;quot;], Hassan Satori1, 2, Hussein Hiyassat3, Mostafa Harti1, 2, and Noureddine Chenfour&lt;br /&gt;
* [http://www.try.idv.tw/static-resources/homework/pr/PR_Final_Report.pdf &amp;quot;Understanding the CMU Sphinx Speech Recognition System&amp;quot;], Chun-Feng Liao&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039; : &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Confirmed Mentor&#039;&#039;&#039; : Deepa P Gopinath&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;How to contact the mentor&#039;&#039;&#039;: IRC - deepagopinath on #smc-project on Freenode&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;: &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;What the students will learn&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Silpa based==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Provide REST API for new flask based Silpa, including conversion of templates to this REST API from JSON RPC===&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Project&#039;&#039;&#039;: &lt;br /&gt;
&lt;br /&gt;
Silpa is now relying on JSONRPC. We need to, either completely move to REST API or provide REST API as an additional feature.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039; : &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Confirmed Mentors&#039;&#039;&#039; : Vasudev Kamath, Jishnu Mohan&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;How to contact the mentors&#039;&#039;&#039;: IRC -&lt;br /&gt;
*Vasudev Kamath - copyninja on #smc-project and #silpa on Freenode&lt;br /&gt;
*Jishnu Mohan - jishnu7 on #smc-project and #silpa on Freenode&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;: Python , Flask , Jinja , HTML, Javascript&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;What the students will learn&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Android SDK for Silpa===&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Project&#039;&#039;&#039;: &lt;br /&gt;
&lt;br /&gt;
Port possible Silpa modules to java and create SDK so that other developers can use this for their apps. Modules like Indic Render, Transliteration, Payyas has really good potential in android because of the fragmentation exists in Android and lack for proper Indic support. This SDK will help developers to support their Indic app in wide range of android devices.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039; : &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Confirmed Mentors&#039;&#039;&#039; : Hrishikesh K. B, Jishnu Mohan, Aashik S&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;How to contact the mentor&#039;&#039;&#039;: IRC -&lt;br /&gt;
*Hrishikesh K B - stultus on on #smc-project and #silpa on Freenode&lt;br /&gt;
*Jishnu Mohan - jishnu7 on #smc-project and #silpa on Freenode&lt;br /&gt;
*Aashik S - irumbumoideen on #smc-project on Freenode&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;: Java, Android, Python&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;What the students will learn&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Converting indic processing modules currently in SILPA into javascript modules library===&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Project&#039;&#039;&#039;: &lt;br /&gt;
&lt;br /&gt;
Port some of the silpa algorithms to node modules. Several modules, alogorithms in SILPA project is done in python now. But porting them to javascript helps developers. For example, cross language transliteration can be done javascript too if we port the algorithm and transliteration rules. Similarly the approximate search can be ported. A flexibile fuzzy search on the web pages will be possible if we have the algorithm in javascript.&lt;br /&gt;
&lt;br /&gt;
Proposed javascript module pattern is https://github.com/umdjs/umd&lt;br /&gt;
&lt;br /&gt;
Student proposals should have a list of alogorithms planning to port, planned demo applications, planned documentation details, and publishing details(Example: npm registry)&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039; : &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Confirmed Mentor&#039;&#039;&#039; : Jishnu Mohan&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;How to contact the mentor&#039;&#039;&#039;: IRC - jishnu7 on #smc-project and #silpa on Freenode&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;: javascript, python&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;What the students will learn&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===  Improving cross language transliteration system.  ===&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Project&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
Currently only Kannada and Malayalam are perfect rest all are first converted to Malayalam then to English due to lack of language internal. Also currently for English to Indic we use CMUDict so transliteration capability is limited to words in CMUDict only probably we could develop better method for English to Indic transliteration&lt;br /&gt;
&lt;br /&gt;
CLDR has transliteration data for Indic languages. We can explore it and see the feasibility. For an intermediate representation of the scripts either IPA can be used or ISO 15919 standard can be used. All these must be supplemented with exception rules and special case handling to achieve more perfect result.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039; : &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Confirmed Mentors&#039;&#039;&#039; : Vasudev Kamath, Jishnu Mohan&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;How to contact the mentor&#039;&#039;&#039;: IRC -&lt;br /&gt;
*Vasudev Kamath - copyninja on #smc-project and #silpa on Freenode&lt;br /&gt;
*Jishnu Mohan - jishnu7 on #smc-project and #silpa on Freenode&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;: Python&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;What the students will learn&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
=== Internationalize SILPA project with Wikimedia jquery projects ,  Improve  the webfonts module in Silpa using jquery.webfonts and provide more Indic and complex fonts as part of it ===&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Project&#039;&#039;&#039;: &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Internationalize SILPA&#039;&#039;&#039; :-  &lt;br /&gt;
SILPA project has many Indic language applications, but as of now, if somebody want to input in Indian languages, there is no built in tool in it. Similarly, the application is not internationalized. Both of these can be achieved by using the [//github.com/wikimedia/jquery.ime jquery.ime] and [//github.com/wikimedia/jquery.ime jquery.i18n] libraries from Wikimedia. A sample implementation is avaliable in our [http://smc.org.in website]. The i18n should be in the SILPA flask framework with a nice templating system. Similarly the interface should have webfonts using [https://github.com/wikimedia/jquery.webfonts jquery.webfonts] library.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Improve  the webfonts &#039;&#039;&#039; :- &lt;br /&gt;
* Currently Silpa provides 36 webfonts. add more fonts to this collection.&lt;br /&gt;
* Rewrote webfonts module to use the features of jquery.webfonts&lt;br /&gt;
* reate a repo as per jquery.webfonts specification&lt;br /&gt;
* Provide a clean api so that other websites can use our webfonts in their websites&lt;br /&gt;
* Document the usage&lt;br /&gt;
* Provide font preview and download options  &lt;br /&gt;
* **This is partly done**. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;More Details&#039;&#039;&#039;&lt;br /&gt;
* [https://github.com/wikimedia/jquery.i18n jquery.i18n]&lt;br /&gt;
* [https://github.com/wikimedia/jquery.ime jquery.ime]&lt;br /&gt;
* [https://github.com/wikimedia/jquery.webfonts jquery.webfonts]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039; : &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Confirmed Mentors&#039;&#039;&#039; : Vasudev Kamath, Jishnu Mohan&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;How to contact the mentor&#039;&#039;&#039;: IRC&lt;br /&gt;
*Vasudev Kamath - copyninja on #smc-project and #silpa on Freenode&lt;br /&gt;
*Jishnu Mohan - jishnu7 on #smc-project and #silpa on Freenode&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;: jQuery, css, html5, Python , flask , technical understanding about fonts&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;What the students will learn&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Language filter for diaspora==&lt;br /&gt;
&lt;br /&gt;
Diaspora is a Free Software, federated social networking platform. Diaspora users post in many languages. When people use more than one language in their posts, it is inconvenient for people who don&#039;t understand a language. This task is to tag every post with languages used in the post, ideally detected automatically, but with an option to override it. Once each post has a language tag, people should be able to choose their preferred language and posts in other languages should be hidden by default. Also provide an option to translate posts and comments.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039; : &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Confirmed Mentors&#039;&#039;&#039; : Pirate Praveen, Ershad K&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;How to contact the mentors&#039;&#039;&#039;: IRC  &lt;br /&gt;
*Pirate Praveen - j4v4m4n on #smc-project on Freenode&lt;br /&gt;
*Ershad K - ershad on #smc-project on Freenode&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;: Ruby on Rails&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;What the students will learn&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Varnam Based==&lt;br /&gt;
&lt;br /&gt;
Varnam is a cross-platform predictive transliterator for Indian languages. It works mostly like Google&#039;s transliterate, but shows key differences in the way word tokenization is done. It has a learning system built in which allows Varnam to make smart predictions. &lt;br /&gt;
&lt;br /&gt;
There are varnam clients available as [https://addons.mozilla.org/en-US/firefox/addon/varnam-transliteration-base/ Firefox]] &amp;amp; [https://chrome.google.com/webstore/detail/varnam-ime/abcfkeabpcanobhdmcmdabejaamephaf Chrome addon] and an [https://gitorious.org/varnamproject/libvarnam-ibus/source/d939adf50024013902c27310c03ef21a9210cdcb IBus engine].&lt;br /&gt;
&lt;br /&gt;
To try out Varnam, navigate to [http://varnamproject.com/editor[http://varnamproject.com/editor]]. Currently it support Hindi and Malayalam.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Improvements to the REST API===&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Project&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
This includes rewrite of the current implementation in `golang` and add support for WebSockets to improve the input experience. This also&lt;br /&gt;
includes making scripts that would ease embedding input on any webpage. All the changes done will go live on[1]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039; : Advanced&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Confirmed Mentor&#039;&#039;&#039; : Navaneeth K N&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;How to contact the mentor&#039;&#039;&#039;: IRC - nkn__ on #smc-project on Freenode&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;: Basic understanding of golang and C&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;What the students will learn&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Improve the learning system===&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Project&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
The main goal of this is to improve how varnam tokenizes when learning words. Today, when a word is learned, varnam takes all the possible prefixes into account and learn all of them to improve future suggestions. But sometimes, this is not enough to predict good suggestions. An improvement is suggested which will try to infer the base form of the word under learning.&lt;br /&gt;
&lt;br /&gt;
Varnam has a learning system built-in which can learn words and it can also learn possible other ways to write a word. Consider the following example. &lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
learn(&amp;quot;भारत&amp;quot;) = [bharat, bhaarath, bharath]&lt;br /&gt;
transliterate(&amp;quot;bharat&amp;quot;) = भारत&lt;br /&gt;
transliterate(&amp;quot;bhaarath&amp;quot;) = भारत&lt;br /&gt;
transliterate(&amp;quot;bharath&amp;quot;) = भारत&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Varnam also learns a word&#039;s prefixes so that it can produce better predictions for any word which has the same prefix. So in this case, with just learning the word &amp;quot;भारत&amp;quot;, varnam can predict &amp;quot;bharateey&amp;quot; = &amp;quot;भारतीय&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
The proposed idea talks about making this learn better. One example is infer the word &amp;quot;भारत&amp;quot; when learning भारतीय. Something like a porter stemmer implementation but integrated into the varnam framework so that&lt;br /&gt;
new language support can be added easily.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039; : Medium&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Confirmed Mentor&#039;&#039;&#039; : Navaneeth K N&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;How to contact the mentor&#039;&#039;&#039;: IRC - nkn__ on #smc-project on Freenode&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;:  Knowledge in C, Ruby (basics)&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;What the students will learn&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Word corpus synchronization ===&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Project&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
Create a cross-platform synchronization tool which can upload/download the word corpus from offline IMEs like varnam-ibus[2]. This helps to build the online words corpus easily.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039; : Medium&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Confirmed Mentor&#039;&#039;&#039; : Navaneeth K N&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;How to contact the mentor&#039;&#039;&#039;: IRC - nkn__ on #smc-project on Freenode&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;:  Knowledge in C/golang&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;What the students will learn&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [1]: http://www.varnamproject.com&lt;br /&gt;
* [2]: https://gitorious.org/varnamproject/libvarnam-ibus/&lt;br /&gt;
&lt;br /&gt;
==Adding Braille Keyboard layouts for Indian Languages to m17n Library==&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Project&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
Project is building support for Bharati Braille keyboard layouts in GNU/Linux systemes.  Bharati Braille standard is the official Braille standard in India. A regular QWERTY keyboard is used for data entry. SDF-JKL keys are used for six dots of Braille. This support need to be built as m17n layouts. This will enable visually challenged people who studied braille layouts to use GNU/Linux systems easily with the help of Audio feedback from TTS&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;More Details&#039;&#039;&#039;&lt;br /&gt;
* http://www.acharya.gen.in:8080/disabilities/bh_brl.php&lt;br /&gt;
* http://en.wikipedia.org/wiki/Bharati_Braille&lt;br /&gt;
* http://www.nongnu.org/m17n/&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039; : &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Confirmed Mentor&#039;&#039;&#039; : Anivar Aravind&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;How to contact the mentor&#039;&#039;&#039;: IRC - anivar on #smc-project on Freenode&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;: &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;What the students will learn&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Grandham ==&lt;br /&gt;
&lt;br /&gt;
=== Adding MARC21 import/export feature in Grandham ===&lt;br /&gt;
&lt;br /&gt;
We need a feature in Grandham to import and parse data from MARC21 documents. We should also be able to export existing data in MARC21.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039; : High&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Confirmed Mentor&#039;&#039;&#039; : Ershad K&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;How to contact the mentor&#039;&#039;&#039;: IRC - ershad on #smc-project on Freenode&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;: Knowledge in Ruby/Ruby on Rails&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;What the students will learn&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
* [1]: http://dev.grandham.org&lt;br /&gt;
* [2]: https://github.com/smc/grandham&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=Projects with unconfirmed mentors=&lt;/div&gt;</summary>
		<author><name>Nandaja</name></author>
	</entry>
	<entry>
		<id>https://wiki.smc.org.in/index.php?title=GSoC/2014/Project_ideas&amp;diff=4631</id>
		<title>GSoC/2014/Project ideas</title>
		<link rel="alternate" type="text/html" href="https://wiki.smc.org.in/index.php?title=GSoC/2014/Project_ideas&amp;diff=4631"/>
		<updated>2014-02-28T12:35:55Z</updated>

		<summary type="html">&lt;p&gt;Nandaja: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;center&amp;gt; &lt;br /&gt;
&amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt; &amp;lt;big&amp;gt;&#039;&#039;&#039;Apart from the following ideas , you can propose your own ideas&#039;&#039;&#039;&amp;lt;/big&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Potential Mentors=&lt;br /&gt;
# Santhosh Thottingal (&#039;&#039;&#039;santhosh&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Baiju M (&#039;&#039;&#039;baijum&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Praveen A (&#039;&#039;&#039;j4v4m4n&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Rajeesh K Nambiar (&#039;&#039;&#039;rajeeshknambiar&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Vasudev Kammath (&#039;&#039;&#039;copyninja&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Jishnu Mohan (&#039;&#039;&#039;jishnu7&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Hrishikesh K.B (&#039;&#039;&#039;stultus&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Anivar Aravind (&#039;&#039;&#039;anivar&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Anilkumar K V (&#039;&#039;&#039;anilkumar&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Sajjad Anwar (&#039;&#039;&#039;geohacker&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Deepa V Gopinath (&#039;&#039;&#039;deepagopinath&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# jain Basil  (&#039;&#039;&#039;jainbasil&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Ershad K (&#039;&#039;&#039;ershad&#039;&#039;&#039; on irc.freenode.net&lt;br /&gt;
# Navaneeth (&#039;&#039;&#039;nkn__&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Nishan Naseer (&#039;&#039;&#039;nishan&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Nandaja Varma (&#039;&#039;&#039;gem&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
&lt;br /&gt;
=Ideas for Google Summer of Code 2014=&lt;br /&gt;
* Please Read the [http://wiki.smc.org.in/SoC/2014#FAQ FAQ]&lt;br /&gt;
* If you want to propose an idea, please do it in [http://lists.smc.org.in/listinfo.cgi/student-projects-smc.org.in student projects mailing list]&lt;br /&gt;
&lt;br /&gt;
=Projects with confirmed mentors=&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== A spell checker for Indic language that understands inflections ==&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Project&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
SILPA project has a spellchecker written using python with a not so simple algorithm. But still it is not capable of handling inflection and agglutination occurring in Indian languages especially south Indian languages. The dictionary we have for Malayalam spellchecker have about 150000 words. Of course we can expand the dictionary, but that doesn&#039;t have much value since words can be formed in Malayalam or Tamil etc by joining multiple words. In addition to that, words get inflected based on grammar forms(sandhi), plural, gender etc. Hunspell has a system to handle this, but so far nobody succeeded in getting it working for multi level suffix stripping as required for Malayalam. Some times a Malayalam word can be formed by more than 5 words joining together. We will need a word splitting logic or a table taking care of all patterns. The project is to attempt solving this with hunspell. If that is not feasible(hunspell upstream is not active), develop an algorithm and implement it.&lt;br /&gt;
&lt;br /&gt;
Recently Tamil attempted developing a spellchecker using Hunspell with multi level suffix stripping. You can see the result here https://github.com/thamizha/solthiruthi. &lt;br /&gt;
Our attempt should be first to use Hunspell to achieve spellchecking with agglutination and inflection. Probably it will require lot of scripting to generate suffix patterns, we can ask help from existing language communities too. If Hunspell has limitation with multi level suffxes- sometimes Indian languages require more than 5 levels of suffix stripping, we need to document it(bug and documentation) and try to attempt python based solution on top of SILPA framework.&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;[https://savannah.nongnu.org/task/index.php?12558 Savannah Task]&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039;: Advanced&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Confirmed Mentor&#039;&#039;&#039;: Santhosh Thottingal&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;How to contact the mentor&#039;&#039;&#039;: IRC - santhosh on #smc-project on Freenode&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;: Average level understanding of grammar system of at least one Indian language&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;What the student will learn&#039;&#039;&#039;: &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Indic rendering support in ConTeXt==&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Project&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
ConTeXt is another TeX macro system similar to LaTeX but much more suitable for design. To find more information about ConTeXt, see the wiki http://wiki.contextgarden.net/Main_Page. ConTeXt MKII  have Indic language rendering support using XeTeX. but MKII is deprecated, and the new MKIV backend doesn&#039;t support Indic rendering yet. The aim of this project is to add support to Inidic rendering to ConTeXt MKIV. XeTeX is using Harfbuzz to do correct Indic rendering.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;More Details&#039;&#039;&#039;: A partially working patch by Rajeesh for MKIV lua code is available. ConTeXt mkii (deprecated) can work with XeTeX backend for Indic rendering. Here is a sample file:&lt;br /&gt;
 \usemodule[simplefonts]&lt;br /&gt;
 \definefontfeature[malayalam][script=mlym]&lt;br /&gt;
 \setmainfont[Rachana][features=malayalam]&lt;br /&gt;
 \starttext&lt;br /&gt;
 മലയാളം \TeX ഉപയോഗിച്ച് ടൈപ്പ്സെറ്റ് ചെയ്തത്&lt;br /&gt;
 \stoptext&lt;br /&gt;
Generate the output using command&lt;br /&gt;
 texexec --xetex &amp;lt;file.tex&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;[https://savannah.nongnu.org/task/index.php?12559 Savannah Task]&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039; : Advanced&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Confirmed Mentor&#039;&#039;&#039; : Rajeesh K Nambiar&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;How to contact the mentor&#039;&#039;&#039;: IRC - rajeeshknambiar on #smc-project on Freenode&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;: Understanding of the TeX system, experience in either LaTeX or ConTeXt and basic understanding of Indic language rendering. MKIV uses Lua, familiarity with Lua, opentype specifications or Harfbuzz will be added advantage.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;What the students will learn&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Language model and Acoustic model for Malayalam language for speech recognition system in CMU Sphinx==&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Project&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
CMU Sphinx is a large vocabulary, speaker independent speech recognition codebase and suite of tools, which can be used to develop speech recognition system in any language. To develop an automatic speech recognition system in a language, acoustic model and language model has to framed for that particular language.  Acoustic models characterize how sound changes over time. It captures the characteristics of basic recognition units. The language model describes the likelihood, probability, or penalty taken when a sequence or collection of words is seen. It attempts to convey behavior of the language and tries to predict the occurrence of specific word sequences possible in the language. Once these two models are developed, it will be useful to every one doing research in speech processing. For Indian languages Hindi, Tamil, Telugu and Marati, ASR systems have been developed using sphinx engine. In this project work is aimed at developing acoustic model and language model for Malayalam.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Background Reading&#039;&#039;&#039;&lt;br /&gt;
* [http://www.cs.cmu.edu/~gopalakr/publications/spdatabases_specom05.pdf &#039;Development of Indian Language Speech Databases for Large Vocabulary Speech Recognition Systems&#039;], Gopalakrishna  Anumanchipalli, Rahul Chitturi, Sachin Joshi, Rohit Kumar, Satinder Pal Singh, R.N.V. Sitaram, S P Kishore&lt;br /&gt;
* [http://www.aclweb.org/anthology/W/W12/W12-5808.pdf &amp;quot;Automatic Pronunciation Evaluation And Mispronunciation Detection Using CMUSphinx&amp;quot;], Ronanki Srikanth, James Salsman&lt;br /&gt;
* http://www.speech.cs.cmu.edu/&lt;br /&gt;
* http://cmusphinx.sourceforge.net/wiki/tutorial&lt;br /&gt;
* [http://www.ijarcsse.com &amp;quot;HTK Based Telugu Speech Recognition&amp;quot;], P. Vijai Bhaskar, AVNIET ,Hyderabad, Prof. Dr. S. Rama Mohan Rao, A.Gopi &lt;br /&gt;
* [http://www.cs.cmu.edu/~araza/Automatic_Speech_Recognition_System_for_Urdu.PDF &amp;quot;Design and  Development of an Automatic Speech Recognition System for Urdu&amp;quot;], Agha Ali Raza,  M.Sc. Thesis, FAST‐National University of Computer and Emerging Sciences &lt;br /&gt;
* [http://www.ccis2k.org/iajit/PDF/vol.6,no.2/11IASRUCSS186.pdf &amp;quot;Investigation Arabic Speech Recognition Using CMU Sphinx System&amp;quot;], Hassan Satori1, 2, Hussein Hiyassat3, Mostafa Harti1, 2, and Noureddine Chenfour&lt;br /&gt;
* [http://www.try.idv.tw/static-resources/homework/pr/PR_Final_Report.pdf &amp;quot;Understanding the CMU Sphinx Speech Recognition System&amp;quot;], Chun-Feng Liao&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039; : &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Confirmed Mentor&#039;&#039;&#039; : Deepa P Gopinath&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;How to contact the mentor&#039;&#039;&#039;: IRC - deepagopinath on #smc-project on Freenode&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;: &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;What the students will learn&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Silpa based==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Provide REST API for new flask based Silpa, including conversion of templates to this REST API from JSON RPC===&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Project&#039;&#039;&#039;: &lt;br /&gt;
&lt;br /&gt;
Silpa is now relying on JSONRPC. We need to, either completely move to REST API or provide REST API as an additional feature.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039; : &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Confirmed Mentors&#039;&#039;&#039; : Vasudev Kamath, Jishnu Mohan&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;How to contact the mentors&#039;&#039;&#039;: IRC -&lt;br /&gt;
*Vasudev Kamath - copyninja on #smc-project and #silpa on Freenode&lt;br /&gt;
*Jishnu Mohan - jishnu7 on #smc-project and #silpa on Freenode&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;: Python , Flask , Jinja , HTML, Javascript&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;What the students will learn&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Android SDK for Silpa===&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Project&#039;&#039;&#039;: &lt;br /&gt;
&lt;br /&gt;
Port possible Silpa modules to java and create SDK so that other developers can use this for their apps. Modules like Indic Render, Transliteration, Payyas has really good potential in android because of the fragmentation exists in Android and lack for proper Indic support. This SDK will help developers to support their Indic app in wide range of android devices.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039; : &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Confirmed Mentors&#039;&#039;&#039; : Hrishikesh K. B, Jishnu Mohan, Aashik S&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;How to contact the mentor&#039;&#039;&#039;: IRC -&lt;br /&gt;
*Hrishikesh K B - stultus on on #smc-project and #silpa on Freenode&lt;br /&gt;
*Jishnu Mohan - jishnu7 on #smc-project and #silpa on Freenode&lt;br /&gt;
*Aashik S - irumbumoideen on #smc-project on Freenode&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;: Java, Android, Python&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;What the students will learn&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Converting indic processing modules currently in SILPA into javascript modules library===&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Project&#039;&#039;&#039;: &lt;br /&gt;
&lt;br /&gt;
Port some of the silpa algorithms to node modules. Several modules, alogorithms in SILPA project is done in python now. But porting them to javascript helps developers. For example, cross language transliteration can be done javascript too if we port the algorithm and transliteration rules. Similarly the approximate search can be ported. A flexibile fuzzy search on the web pages will be possible if we have the algorithm in javascript.&lt;br /&gt;
&lt;br /&gt;
Proposed javascript module pattern is https://github.com/umdjs/umd&lt;br /&gt;
&lt;br /&gt;
Student proposals should have a list of alogorithms planning to port, planned demo applications, planned documentation details, and publishing details(Example: npm registry)&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039; : &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Confirmed Mentor&#039;&#039;&#039; : Jishnu Mohan&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;How to contact the mentor&#039;&#039;&#039;: IRC - jishnu7 on #smc-project and #silpa on Freenode&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;: javascript, python&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;What the students will learn&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===  Improving cross language transliteration system.  ===&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Project&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
Currently only Kannada and Malayalam are perfect rest all are first converted to Malayalam then to English due to lack of language internal. Also currently for English to Indic we use CMUDict so transliteration capability is limited to words in CMUDict only probably we could develop better method for English to Indic transliteration&lt;br /&gt;
&lt;br /&gt;
CLDR has transliteration data for Indic languages. We can explore it and see the feasibility. For an intermediate representation of the scripts either IPA can be used or ISO 15919 standard can be used. All these must be supplemented with exception rules and special case handling to achieve more perfect result.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039; : &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Confirmed Mentors&#039;&#039;&#039; : Vasudev Kamath, Jishnu Mohan&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;How to contact the mentor&#039;&#039;&#039;: IRC -&lt;br /&gt;
*Vasudev Kamath - copyninja on #smc-project and #silpa on Freenode&lt;br /&gt;
*Jishnu Mohan - jishnu7 on #smc-project and #silpa on Freenode&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;: Python&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;What the students will learn&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
=== Internationalize SILPA project with Wikimedia jquery projects ,  Improve  the webfonts module in Silpa using jquery.webfonts and provide more Indic and complex fonts as part of it ===&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Project&#039;&#039;&#039;: &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Internationalize SILPA&#039;&#039;&#039; :-  &lt;br /&gt;
SILPA project has many Indic language applications, but as of now, if somebody want to input in Indian languages, there is no built in tool in it. Similarly, the application is not internationalized. Both of these can be achieved by using the [//github.com/wikimedia/jquery.ime jquery.ime] and [//github.com/wikimedia/jquery.ime jquery.i18n] libraries from Wikimedia. A sample implementation is avaliable in our [http://smc.org.in website]. The i18n should be in the SILPA flask framework with a nice templating system. Similarly the interface should have webfonts using [https://github.com/wikimedia/jquery.webfonts jquery.webfonts] library.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Improve  the webfonts &#039;&#039;&#039; :- &lt;br /&gt;
* Currently Silpa provides 36 webfonts. add more fonts to this collection.&lt;br /&gt;
* Rewrote webfonts module to use the features of jquery.webfonts&lt;br /&gt;
* reate a repo as per jquery.webfonts specification&lt;br /&gt;
* Provide a clean api so that other websites can use our webfonts in their websites&lt;br /&gt;
* Document the usage&lt;br /&gt;
* Provide font preview and download options  &lt;br /&gt;
* **This is partly done**. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;More Details&#039;&#039;&#039;&lt;br /&gt;
* [https://github.com/wikimedia/jquery.i18n jquery.i18n]&lt;br /&gt;
* [https://github.com/wikimedia/jquery.ime jquery.ime]&lt;br /&gt;
* [https://github.com/wikimedia/jquery.webfonts jquery.webfonts]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039; : &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Confirmed Mentors&#039;&#039;&#039; : Vasudev Kamath, Jishnu Mohan&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;How to contact the mentor&#039;&#039;&#039;: IRC&lt;br /&gt;
*Vasudev Kamath - copyninja on #smc-project and #silpa on Freenode&lt;br /&gt;
*Jishnu Mohan - jishnu7 on #smc-project and #silpa on Freenode&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;: jQuery, css, html5, Python , flask , technical understanding about fonts&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;What the students will learn&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Language filter for diaspora==&lt;br /&gt;
&lt;br /&gt;
Diaspora is a Free Software, federated social networking platform. Diaspora users post in many languages. When people use more than one language in their posts, it is inconvenient for people who don&#039;t understand a language. This task is to tag every post with languages used in the post, ideally detected automatically, but with an option to override it. Once each post has a language tag, people should be able to choose their preferred language and posts in other languages should be hidden by default. Also provide an option to translate posts and comments.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039; : &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Confirmed Mentors&#039;&#039;&#039; : Pirate Praveen, Ershad K&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;How to contact the mentors&#039;&#039;&#039;: IRC  &lt;br /&gt;
*Pirate Praveen - j4v4m4n on #smc-project on Freenode&lt;br /&gt;
*Ershad K - ershad on #smc-project on Freenode&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;: Ruby on Rails&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;What the students will learn&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Varnam Based==&lt;br /&gt;
&lt;br /&gt;
Varnam is a cross-platform predictive transliterator for Indian languages. It works mostly like Google&#039;s transliterate, but shows key differences in the way word tokenization is done. It has a learning system built in which allows Varnam to make smart predictions. &lt;br /&gt;
&lt;br /&gt;
There are varnam clients available as [https://addons.mozilla.org/en-US/firefox/addon/varnam-transliteration-base/ Firefox]] &amp;amp; [https://chrome.google.com/webstore/detail/varnam-ime/abcfkeabpcanobhdmcmdabejaamephaf Chrome addon] and an [https://gitorious.org/varnamproject/libvarnam-ibus/source/d939adf50024013902c27310c03ef21a9210cdcb IBus engine].&lt;br /&gt;
&lt;br /&gt;
To try out Varnam, navigate to [http://varnamproject.com/editor[http://varnamproject.com/editor]]. Currently it support Hindi and Malayalam.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Improvements to the REST API===&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Project&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
This includes rewrite of the current implementation in `golang` and add support for WebSockets to improve the input experience. This also&lt;br /&gt;
includes making scripts that would ease embedding input on any webpage. All the changes done will go live on[1]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039; : Advanced&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Confirmed Mentor&#039;&#039;&#039; : Navaneeth K N&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;How to contact the mentor&#039;&#039;&#039;: IRC - nkn__ on #smc-project on Freenode&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;: Basic understanding of golang and C&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;What the students will learn&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Improve the learning system===&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Project&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
The main goal of this is to improve how varnam tokenizes when learning words. Today, when a word is learned, varnam takes all the possible prefixes into account and learn all of them to improve future suggestions. But sometimes, this is not enough to predict good suggestions. An improvement is suggested which will try to infer the base form of the word under learning.&lt;br /&gt;
&lt;br /&gt;
Varnam has a learning system built-in which can learn words and it can also learn possible other ways to write a word. Consider the following example. &lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
learn(&amp;quot;भारत&amp;quot;) = [bharat, bhaarath, bharath]&lt;br /&gt;
transliterate(&amp;quot;bharat&amp;quot;) = भारत&lt;br /&gt;
transliterate(&amp;quot;bhaarath&amp;quot;) = भारत&lt;br /&gt;
transliterate(&amp;quot;bharath&amp;quot;) = भारत&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Varnam also learns a word&#039;s prefixes so that it can produce better predictions for any word which has the same prefix. So in this case, with just learning the word &amp;quot;भारत&amp;quot;, varnam can predict &amp;quot;bharateey&amp;quot; = &amp;quot;भारतीय&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
The proposed idea talks about making this learn better. One example is infer the word &amp;quot;भारत&amp;quot; when learning भारतीय. Something like a porter stemmer implementation but integrated into the varnam framework so that&lt;br /&gt;
new language support can be added easily.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039; : Medium&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Confirmed Mentor&#039;&#039;&#039; : Navaneeth K N&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;How to contact the mentor&#039;&#039;&#039;: IRC - nkn__ on #smc-project on Freenode&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;:  Knowledge in C, Ruby (basics)&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;What the students will learn&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Word corpus synchronization ===&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Project&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
Create a cross-platform synchronization tool which can upload/download the word corpus from offline IMEs like varnam-ibus[2]. This helps to build the online words corpus easily.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039; : Medium&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Confirmed Mentor&#039;&#039;&#039; : Navaneeth K N&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;How to contact the mentor&#039;&#039;&#039;: IRC - nkn__ on #smc-project on Freenode&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;:  Knowledge in C/golang&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;What the students will learn&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
* [1]: http://www.varnamproject.com&lt;br /&gt;
* [2]: https://gitorious.org/varnamproject/libvarnam-ibus/&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Adding Braille Keyboard layouts for Indian Languages to m17n Library==&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Project&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
Project is building support for Bharati Braille keyboard layouts in GNU/Linux systemes.  Bharati Braille standard is the official Braille standard in India. A regular QWERTY keyboard is used for data entry. SDF-JKL keys are used for six dots of Braille. This support need to be built as m17n layouts. This will enable visually challenged people who studied braille layouts to use GNU/Linux systems easily with the help of Audio feedback from TTS&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;More Details&#039;&#039;&#039;&lt;br /&gt;
* http://www.acharya.gen.in:8080/disabilities/bh_brl.php&lt;br /&gt;
* http://en.wikipedia.org/wiki/Bharati_Braille&lt;br /&gt;
* http://www.nongnu.org/m17n/&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039; : &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Confirmed Mentor&#039;&#039;&#039; : Anivar Aravind&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;How to contact the mentor&#039;&#039;&#039;: IRC - anivar on #smc-project on Freenode&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;: &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;What the students will learn&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Grandham ==&lt;br /&gt;
&lt;br /&gt;
=== Adding MARC21 import/export feature in Grandham ===&lt;br /&gt;
&lt;br /&gt;
We need a feature in Grandham to import and parse data from MARC21 documents. We should also be able to export existing data in MARC21.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039; : High&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Confirmed Mentor&#039;&#039;&#039; : Ershad K&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;How to contact the mentor&#039;&#039;&#039;: IRC - ershad on #smc-project on Freenode&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;: Knowledge in Ruby/Ruby on Rails&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;What the students will learn&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
* [1]: http://dev.grandham.org&lt;br /&gt;
* [2]: https://github.com/smc/grandham&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=Projects with unconfirmed mentors=&lt;/div&gt;</summary>
		<author><name>Nandaja</name></author>
	</entry>
	<entry>
		<id>https://wiki.smc.org.in/index.php?title=GSoC/2014/Project_ideas&amp;diff=4623</id>
		<title>GSoC/2014/Project ideas</title>
		<link rel="alternate" type="text/html" href="https://wiki.smc.org.in/index.php?title=GSoC/2014/Project_ideas&amp;diff=4623"/>
		<updated>2014-02-25T19:42:06Z</updated>

		<summary type="html">&lt;p&gt;Nandaja: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;center&amp;gt; &lt;br /&gt;
&amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt; &amp;lt;big&amp;gt;&#039;&#039;&#039;Apart from the following ideas , you can propose your own ideas&#039;&#039;&#039;&amp;lt;/big&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Potential Mentors=&lt;br /&gt;
# Santhosh Thottingal (&#039;&#039;&#039;santhosh&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Baiju M (&#039;&#039;&#039;baijum&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Praveen A (&#039;&#039;&#039;j4v4m4n&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Rajeesh K Nambiar (&#039;&#039;&#039;rajeeshknambiar&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Vasudev Kammath (&#039;&#039;&#039;copyninja&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Jishnu Mohan (&#039;&#039;&#039;jishnu7&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Hrishikesh K.B (&#039;&#039;&#039;stultus&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Anivar Aravind (&#039;&#039;&#039;anivar&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Anilkumar K V (&#039;&#039;&#039;anilkumar&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Sajjad Anwar (&#039;&#039;&#039;geohacker&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Deepa V Gopinath (&#039;&#039;&#039;deepagopinath&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# jain Basil  (&#039;&#039;&#039;jainbasil&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Ershad K (&#039;&#039;&#039;ershad&#039;&#039;&#039; on irc.freenode.net&lt;br /&gt;
# Navaneeth (&#039;&#039;&#039;nkn__&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Nishan Naseer (&#039;&#039;&#039;nishan&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Nandaja Varma (&#039;&#039;&#039;gem&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
&lt;br /&gt;
=Ideas for Google Summer of Code 2014=&lt;br /&gt;
* Please Read the [http://wiki.smc.org.in/SoC/2014#FAQ FAQ]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
If you want to propose an idea, please do it in [http://lists.smc.org.in/listinfo.cgi/student-projects-smc.org.in student projects mailing list]&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=Projects with confirmed mentors=&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== A spell checker for Indic language that understands inflections ==&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Project&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
SILPA project has a spellchecker written using python with a not so simple algorithm. But still it is not capable of handling inflection and agglutination occurring in Indian languages especially south Indian languages. The dictionary we have for Malayalam spellchecker have about 150000 words. Of course we can expand the dictionary, but that doesn&#039;t have much value since words can be formed in Malayalam or Tamil etc by joining multiple words. In addition to that, words get inflected based on grammar forms(sandhi), plural, gender etc. Hunspell has a system to handle this, but so far nobody succeeded in getting it working for multi level suffix stripping as required for Malayalam. Some times a Malayalam word can be formed by more than 5 words joining together. We will need a word splitting logic or a table taking care of all patterns. The project is to attempt solving this with hunspell. If that is not feasible(hunspell upstream is not active), develop an algorithm and implement it.&lt;br /&gt;
&lt;br /&gt;
Recently Tamil attempted developing a spellchecker using Hunspell with multi level suffix stripping. You can see the result here https://github.com/thamizha/solthiruthi. &lt;br /&gt;
Our attempt should be first to use Hunspell to achieve spellchecking with agglutination and inflection. Probably it will require lot of scripting to generate suffix patterns, we can ask help from existing language communities too. If Hunspell has limitation with multi level suffxes- sometimes Indian languages require more than 5 levels of suffix stripping, we need to document it(bug and documentation) and try to attempt python based solution on top of SILPA framework.&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;[https://savannah.nongnu.org/task/index.php?12558 Savannah Task]&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;: Average level understanding of grammar system of at least one Indian language&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039;: Advanced&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Mentor&#039;&#039;&#039;: Santhosh Thottingal&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Indic rendering support in ConTeXt==&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Project&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
ConTeXt is another TeX macro system similar to LaTeX but much more suitable for design. To find more information about ConTeXt, see the wiki http://wiki.contextgarden.net/Main_Page. ConTeXt MKII  have Indic language rendering support using XeTeX. but MKII is deprecated, and the new MKIV backend doesn&#039;t support Indic rendering yet. The aim of this project is to add support to Inidic rendering to ConTeXt MKIV. XeTeX is using Harfbuzz to do correct Indic rendering.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;More Details&#039;&#039;&#039;: A partially working patch by Rajeesh for MKIV lua code is available. ConTeXt mkii (deprecated) can work with XeTeX backend for Indic rendering. Here is a sample file:&lt;br /&gt;
 \usemodule[simplefonts]&lt;br /&gt;
 \definefontfeature[malayalam][script=mlym]&lt;br /&gt;
 \setmainfont[Rachana][features=malayalam]&lt;br /&gt;
 \starttext&lt;br /&gt;
 മലയാളം \TeX ഉപയോഗിച്ച് ടൈപ്പ്സെറ്റ് ചെയ്തത്&lt;br /&gt;
 \stoptext&lt;br /&gt;
Generate the output using command&lt;br /&gt;
 texexec --xetex &amp;lt;file.tex&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;[https://savannah.nongnu.org/task/index.php?12559 Savannah Task]&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;: Understanding of the TeX system, experience in either LaTeX or ConTeXt and basic understanding of Indic language rendering. MKIV uses Lua, familiarity with Lua, opentype specifications or Harfbuzz will be added advantage.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039; : Advanced&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Mentor&#039;&#039;&#039; : Rajeesh K Nambiar&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Language model and Acoustic model for Malayalam language for speech recognition system in CMU Sphinx==&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Project&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
CMU Sphinx is a large vocabulary, speaker independent speech recognition codebase and suite of tools, which can be used to develop speech recognition system in any language. To develop an automatic speech recognition system in a language, acoustic model and language model has to framed for that particular language.  Acoustic models characterize how sound changes over time. It captures the characteristics of basic recognition units. The language model describes the likelihood, probability, or penalty taken when a sequence or collection of words is seen. It attempts to convey behavior of the language and tries to predict the occurrence of specific word sequences possible in the language. Once these two models are developed, it will be useful to every one doing research in speech processing. For Indian languages Hindi, Tamil, Telugu and Marati, ASR systems have been developed using sphinx engine. In this project work is aimed at developing acoustic model and language model for Malayalam.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Background Reading&#039;&#039;&#039;&lt;br /&gt;
* [http://www.cs.cmu.edu/~gopalakr/publications/spdatabases_specom05.pdf &#039;Development of Indian Language Speech Databases for Large Vocabulary Speech Recognition Systems&#039;], Gopalakrishna  Anumanchipalli, Rahul Chitturi, Sachin Joshi, Rohit Kumar, Satinder Pal Singh, R.N.V. Sitaram, S P Kishore&lt;br /&gt;
* [http://www.aclweb.org/anthology/W/W12/W12-5808.pdf &amp;quot;Automatic Pronunciation Evaluation And Mispronunciation Detection Using CMUSphinx&amp;quot;], Ronanki Srikanth, James Salsman&lt;br /&gt;
* http://www.speech.cs.cmu.edu/&lt;br /&gt;
* http://cmusphinx.sourceforge.net/wiki/tutorial&lt;br /&gt;
* [http://www.ijarcsse.com &amp;quot;HTK Based Telugu Speech Recognition&amp;quot;], P. Vijai Bhaskar, AVNIET ,Hyderabad, Prof. Dr. S. Rama Mohan Rao, A.Gopi &lt;br /&gt;
* [http://www.cs.cmu.edu/~araza/Automatic_Speech_Recognition_System_for_Urdu.PDF &amp;quot;Design and  Development of an Automatic Speech Recognition System for Urdu&amp;quot;], Agha Ali Raza,  M.Sc. Thesis, FAST‐National University of Computer and Emerging Sciences &lt;br /&gt;
* [http://www.ccis2k.org/iajit/PDF/vol.6,no.2/11IASRUCSS186.pdf &amp;quot;Investigation Arabic Speech Recognition Using CMU Sphinx System&amp;quot;], Hassan Satori1, 2, Hussein Hiyassat3, Mostafa Harti1, 2, and Noureddine Chenfour&lt;br /&gt;
* [http://www.try.idv.tw/static-resources/homework/pr/PR_Final_Report.pdf &amp;quot;Understanding the CMU Sphinx Speech Recognition System&amp;quot;], Chun-Feng Liao&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Mentor&#039;&#039;&#039;:  Deepa P. Gopinath&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Silpa based==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Provide REST API for new flask based Silpa, including conversion of templates to this REST API from JSON RPC===&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Project&#039;&#039;&#039;: &lt;br /&gt;
&lt;br /&gt;
Silpa is now relying on JSONRPC. We need to, either completely move to REST API or provide REST API as an additional feature.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;: Python , Flask , Jinja , HTML, Javascript&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Mentor&#039;&#039;&#039; : Vasudev/Jishnu&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Android SDK for Silpa===&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Project&#039;&#039;&#039;: &lt;br /&gt;
&lt;br /&gt;
Port possible Silpa modules to java and create SDK so that other developers can use this for their apps. Modules like Indic Render, Transliteration, Payyas has really good potential in android because of the fragmentation exists in Android and lack for proper Indic support. This SDK will help developers to support their Indic app in wide range of android devices.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;: Java, Android, Python&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Mentor&#039;&#039;&#039; : Jishnu/Hrishikesh/Aashik&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Converting indic processing modules currently in SILPA into javascript modules library===&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Project&#039;&#039;&#039;: &lt;br /&gt;
&lt;br /&gt;
Port some of the silpa algorithms to node modules. Several modules, alogorithms in SILPA project is done in python now. But porting them to javascript helps developers. For example, cross language transliteration can be done javascript too if we port the algorithm and transliteration rules. Similarly the approximate search can be ported. A flexibile fuzzy search on the web pages will be possible if we have the algorithm in javascript.&lt;br /&gt;
&lt;br /&gt;
Proposed javascript module pattern is https://github.com/umdjs/umd&lt;br /&gt;
&lt;br /&gt;
Student proposals should have a list of alogorithms planning to port, planned demo applications, planned documentation details, and publishing details(Example: npm registry)&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;: javascript, python&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Mentor&#039;&#039;&#039; : Jishnu&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===  Improving cross language transliteration system.  ===&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Project&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
Currently only Kannada and Malayalam are perfect rest all are first converted to Malayalam then to English due to lack of language internal. Also currently for English to Indic we use CMUDict so transliteration capability is limited to words in CMUDict only probably we could develop better method for English to Indic transliteration&lt;br /&gt;
&lt;br /&gt;
CLDR has transliteration data for Indic languages. We can explore it and see the feasibility. For an intermediate representation of the scripts either IPA can be used or ISO 15919 standard can be used. All these must be supplemented with exception rules and special case handling to achieve more perfect result.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;:python&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Mentor&#039;&#039;&#039; : Vasudev/Jishnu&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Internationalize SILPA project with Wikimedia jquery projects ,  Improve  the webfonts module in Silpa using jquery.webfonts and provide more Indic and complex fonts as part of it ===&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Project&#039;&#039;&#039;: &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Internationalize SILPA&#039;&#039;&#039; :-  &lt;br /&gt;
SILPA project has many Indic language applications, but as of now, if somebody want to input in Indian languages, there is no built in tool in it. Similarly, the application is not internationalized. Both of these can be achieved by using the [//github.com/wikimedia/jquery.ime jquery.ime] and [//github.com/wikimedia/jquery.ime jquery.i18n] libraries from Wikimedia. A sample implementation is avaliable in our [http://smc.org.in website]. The i18n should be in the SILPA flask framework with a nice templating system. Similarly the interface should have webfonts using [https://github.com/wikimedia/jquery.webfonts jquery.webfonts] library.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Improve  the webfonts &#039;&#039;&#039; :- &lt;br /&gt;
* Currently Silpa provides 36 webfonts. add more fonts to this collection.&lt;br /&gt;
* Rewrote webfonts module to use the features of jquery.webfonts&lt;br /&gt;
* reate a repo as per jquery.webfonts specification&lt;br /&gt;
* Provide a clean api so that other websites can use our webfonts in their websites&lt;br /&gt;
* Document the usage&lt;br /&gt;
* Provide font preview and download options  &lt;br /&gt;
* **This is partly done**. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;More Details&#039;&#039;&#039;&lt;br /&gt;
* [https://github.com/wikimedia/jquery.i18n jquery.i18n]&lt;br /&gt;
* [https://github.com/wikimedia/jquery.ime jquery.ime]&lt;br /&gt;
* [https://github.com/wikimedia/jquery.webfonts jquery.webfonts]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;: jQuery, css, html5, Python , flask , technical understanding about fonts&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Mentor&#039;&#039;&#039; : Jishnu/Vasudev&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Language filter for diaspora==&lt;br /&gt;
&lt;br /&gt;
Diaspora is a Free Software, federated social networking platform. Diaspora users post in many languages. When people use more than one language in their posts, it is inconvenient for people who don&#039;t understand a language. This task is to tag every post with languages used in the post, ideally detected automatically, but with an option to override it. Once each post has a language tag, people should be able to choose their preferred language and posts in other languages should be hidden by default. Also provide an option to translate posts and comments.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;: Ruby on Rails&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Mentor&#039;&#039;&#039;: Pirate Praveen, Ershad K&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Varnam Based==&lt;br /&gt;
&lt;br /&gt;
Varnam is a cross-platform predictive transliterator for Indian languages. It works mostly like Google&#039;s transliterate, but shows key differences in the way word tokenization is done. It has a learning system built in which allows Varnam to make smart predictions. &lt;br /&gt;
&lt;br /&gt;
There are varnam clients available as [https://addons.mozilla.org/en-US/firefox/addon/varnam-transliteration-base/ Firefox]] &amp;amp; [https://chrome.google.com/webstore/detail/varnam-ime/abcfkeabpcanobhdmcmdabejaamephaf Chrome addon] and an [https://gitorious.org/varnamproject/libvarnam-ibus/source/d939adf50024013902c27310c03ef21a9210cdcb IBus engine].&lt;br /&gt;
&lt;br /&gt;
To try out Varnam, navigate to [http://varnamproject.com/editor[http://varnamproject.com/editor]]. Currently it support Hindi and Malayalam.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Improvements to the REST API===&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Project&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
This includes rewrite of the current implementation in `golang` and add support for WebSockets to improve the input experience. This also&lt;br /&gt;
includes making scripts that would ease embedding input on any webpage. All the changes done will go live on[1]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;: Basic understanding of golang and C&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039;: Advanced&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Mentor&#039;&#039;&#039;: Navaneeth S&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Improve the learning system===&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Project&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
The main goal of this is to improve how varnam tokenizes when learning words. Today, when a word is learned, varnam takes all the possible prefixes into account and learn all of them to improve future suggestions. But sometimes, this is not enough to predict good suggestions. An improvement is suggested which will try to infer the base form of the word under learning.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;: Knowledge in C&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039;: Medium&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Mentor&#039;&#039;&#039;: Navaneeth S&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Word corpus synchronization ===&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Project&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
Create a cross-platform synchronization tool which can upload/download the word corpus from offline IMEs like varnam-ibus[2]. This helps to build the online words corpus easily.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;: Knowledge in C/golang&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039; : Medium&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Mentor&#039;&#039;&#039;: Navaneeth S&lt;br /&gt;
&lt;br /&gt;
* [1]: http://www.varnamproject.com&lt;br /&gt;
* [2]: https://gitorious.org/varnamproject/libvarnam-ibus/&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Adding Braille Keyboard layouts for Indian Languages to m17n Library==&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Project&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
Project is building support for Bharati Braille keyboard layouts in GNU/Linux systemes.  Bharati Braille standard is the official Braille standard in India. A regular QWERTY keyboard is used for data entry. SDF-JKL keys are used for six dots of Braille. This support need to be built as m17n layouts. This will enable visually challenged people who studied braille layouts to use GNU/Linux systems easily with the help of Audio feedback from TTS&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;More Details&#039;&#039;&#039;&lt;br /&gt;
* http://www.acharya.gen.in:8080/disabilities/bh_brl.php&lt;br /&gt;
* http://en.wikipedia.org/wiki/Bharati_Braille&lt;br /&gt;
* http://www.nongnu.org/m17n/&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Mentor&#039;&#039;&#039;: Anivar Aravind&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=Projects with unconfirmed mentors=&lt;br /&gt;
&lt;br /&gt;
==Grandham ==&lt;br /&gt;
&lt;br /&gt;
=== Adding MARC21 import/export feature in Grandham ===&lt;br /&gt;
&lt;br /&gt;
We need a feature in Grandham to import and parse data from MARC21 documents. We should also be able to export existing data in MARC21.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;: Knowledge in Ruby/Ruby on Rails&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039; : High&lt;br /&gt;
&lt;br /&gt;
* [1]: http://dev.grandham.org&lt;br /&gt;
* [2]: https://github.com/smc/grandham&lt;/div&gt;</summary>
		<author><name>Nandaja</name></author>
	</entry>
	<entry>
		<id>https://wiki.smc.org.in/index.php?title=GSoC/2014/Project_ideas&amp;diff=4622</id>
		<title>GSoC/2014/Project ideas</title>
		<link rel="alternate" type="text/html" href="https://wiki.smc.org.in/index.php?title=GSoC/2014/Project_ideas&amp;diff=4622"/>
		<updated>2014-02-25T19:39:21Z</updated>

		<summary type="html">&lt;p&gt;Nandaja: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;center&amp;gt; &lt;br /&gt;
&amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt; &amp;lt;big&amp;gt;&#039;&#039;&#039;Apart from the following ideas , you can propose your own ideas&#039;&#039;&#039;&amp;lt;/big&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Potential Mentors=&lt;br /&gt;
# Santhosh Thottingal (&#039;&#039;&#039;santhosh&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Baiju M (&#039;&#039;&#039;baijum&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Praveen A (&#039;&#039;&#039;j4v4m4n&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Rajeesh K Nambiar (&#039;&#039;&#039;rajeeshknambiar&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Vasudev Kammath (&#039;&#039;&#039;copyninja&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Jishnu Mohan (&#039;&#039;&#039;jishnu7&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Hrishikesh K.B (&#039;&#039;&#039;stultus&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Anivar Aravind (&#039;&#039;&#039;anivar&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Anilkumar K V (&#039;&#039;&#039;anilkumar&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Sajjad Anwar (&#039;&#039;&#039;geohacker&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Deepa V Gopinath (&#039;&#039;&#039;deepagopinath&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# jain Basil  (&#039;&#039;&#039;jainbasil&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Ershad K (&#039;&#039;&#039;ershad&#039;&#039;&#039; on irc.freenode.net&lt;br /&gt;
# Navaneeth (&#039;&#039;&#039;nkn__&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Nishan Naseer (&#039;&#039;&#039;nishan&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Nandaja Varma (&#039;&#039;&#039;gem&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
&lt;br /&gt;
=Ideas for Google Summer of Code 2014=&lt;br /&gt;
* Please Read the [http://wiki.smc.org.in/SoC/2014#FAQ FAQ]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
If you want to propose an idea, please do it in [http://lists.smc.org.in/listinfo.cgi/student-projects-smc.org.in student projects mailing list]&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=Projects with confirmed mentors=&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== A spell checker for Indic language that understands inflections ==&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Project&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
SILPA project has a spellchecker written using python with a not so simple algorithm. But still it is not capable of handling inflection and agglutination occurring in Indian languages especially south Indian languages. The dictionary we have for Malayalam spellchecker have about 150000 words. Of course we can expand the dictionary, but that doesn&#039;t have much value since words can be formed in Malayalam or Tamil etc by joining multiple words. In addition to that, words get inflected based on grammar forms(sandhi), plural, gender etc. Hunspell has a system to handle this, but so far nobody succeeded in getting it working for multi level suffix stripping as required for Malayalam. Some times a Malayalam word can be formed by more than 5 words joining together. We will need a word splitting logic or a table taking care of all patterns. The project is to attempt solving this with hunspell. If that is not feasible(hunspell upstream is not active), develop an algorithm and implement it.&lt;br /&gt;
&lt;br /&gt;
Recently Tamil attempted developing a spellchecker using Hunspell with multi level suffix stripping. You can see the result here https://github.com/thamizha/solthiruthi. &lt;br /&gt;
Our attempt should be first to use Hunspell to achieve spellchecking with agglutination and inflection. Probably it will require lot of scripting to generate suffix patterns, we can ask help from existing language communities too. If Hunspell has limitation with multi level suffxes- sometimes Indian languages require more than 5 levels of suffix stripping, we need to document it(bug and documentation) and try to attempt python based solution on top of SILPA framework.&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;[https://savannah.nongnu.org/task/index.php?12558 Savannah Task]&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;: Average level understanding of grammar system of at least one Indian language&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039;: Advanced&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Mentor&#039;&#039;&#039;: Santhosh Thottingal&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Indic rendering support in ConTeXt==&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Project&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
ConTeXt is another TeX macro system similar to LaTeX but much more suitable for design. To find more information about ConTeXt, see the wiki http://wiki.contextgarden.net/Main_Page. ConTeXt MKII  have Indic language rendering support using XeTeX. but MKII is deprecated, and the new MKIV backend doesn&#039;t support Indic rendering yet. The aim of this project is to add support to Inidic rendering to ConTeXt MKIV. XeTeX is using Harfbuzz to do correct Indic rendering.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;More Details&#039;&#039;&#039;: A partially working patch by Rajeesh for MKIV lua code is available. ConTeXt mkii (deprecated) can work with XeTeX backend for Indic rendering. Here is a sample file:&lt;br /&gt;
 \usemodule[simplefonts]&lt;br /&gt;
 \definefontfeature[malayalam][script=mlym]&lt;br /&gt;
 \setmainfont[Rachana][features=malayalam]&lt;br /&gt;
 \starttext&lt;br /&gt;
 മലയാളം \TeX ഉപയോഗിച്ച് ടൈപ്പ്സെറ്റ് ചെയ്തത്&lt;br /&gt;
 \stoptext&lt;br /&gt;
Generate the output using command&lt;br /&gt;
 texexec --xetex &amp;lt;file.tex&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;[https://savannah.nongnu.org/task/index.php?12559 Savannah Task]&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;: Understanding of the TeX system, experience in either LaTeX or ConTeXt and basic understanding of Indic language rendering. MKIV uses Lua, familiarity with Lua, opentype specifications or Harfbuzz will be added advantage.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039; : Advanced&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Mentor&#039;&#039;&#039; : Rajeesh K Nambiar&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Language model and Acoustic model for Malayalam language for speech recognition system in CMU Sphinx==&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Project&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
CMU Sphinx is a large vocabulary, speaker independent speech recognition codebase and suite of tools, which can be used to develop speech recognition system in any language. To develop an automatic speech recognition system in a language, acoustic model and language model has to framed for that particular language.  Acoustic models characterize how sound changes over time. It captures the characteristics of basic recognition units. The language model describes the likelihood, probability, or penalty taken when a sequence or collection of words is seen. It attempts to convey behavior of the language and tries to predict the occurrence of specific word sequences possible in the language. Once these two models are developed, it will be useful to every one doing research in speech processing. For Indian languages Hindi, Tamil, Telugu and Marati, ASR systems have been developed using sphinx engine. In this project work is aimed at developing acoustic model and language model for Malayalam.&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;Background Reading&#039;&#039;&#039;&lt;br /&gt;
** [http://www.cs.cmu.edu/~gopalakr/publications/spdatabases_specom05.pdf &#039;Development of Indian Language Speech Databases for Large Vocabulary Speech Recognition Systems&#039;], Gopalakrishna  Anumanchipalli, Rahul Chitturi, Sachin Joshi, Rohit Kumar, Satinder Pal Singh, R.N.V. Sitaram, S P Kishore&lt;br /&gt;
** [http://www.aclweb.org/anthology/W/W12/W12-5808.pdf &amp;quot;Automatic Pronunciation Evaluation And Mispronunciation Detection Using CMUSphinx&amp;quot;], Ronanki Srikanth, James Salsman&lt;br /&gt;
** http://www.speech.cs.cmu.edu/&lt;br /&gt;
** http://cmusphinx.sourceforge.net/wiki/tutorial&lt;br /&gt;
** [http://www.ijarcsse.com &amp;quot;HTK Based Telugu Speech Recognition&amp;quot;], P. Vijai Bhaskar, AVNIET ,Hyderabad, Prof. Dr. S. Rama Mohan Rao, A.Gopi &lt;br /&gt;
** [http://www.cs.cmu.edu/~araza/Automatic_Speech_Recognition_System_for_Urdu.PDF &amp;quot;Design and  Development of an Automatic Speech Recognition System for Urdu&amp;quot;], Agha Ali Raza,  M.Sc. Thesis, FAST‐National University of Computer and Emerging Sciences &lt;br /&gt;
** [http://www.ccis2k.org/iajit/PDF/vol.6,no.2/11IASRUCSS186.pdf &amp;quot;Investigation Arabic Speech Recognition Using CMU Sphinx System&amp;quot;], Hassan Satori1, 2, Hussein Hiyassat3, Mostafa Harti1, 2, and Noureddine Chenfour&lt;br /&gt;
** [http://www.try.idv.tw/static-resources/homework/pr/PR_Final_Report.pdf &amp;quot;Understanding the CMU Sphinx Speech Recognition System&amp;quot;], Chun-Feng Liao&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Mentor&#039;&#039;&#039;:  Deepa P. Gopinath&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Silpa based==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Provide REST API for new flask based Silpa, including conversion of templates to this REST API from JSON RPC===&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Project&#039;&#039;&#039;: &lt;br /&gt;
&lt;br /&gt;
Silpa is now relying on JSONRPC. We need to, either completely move to REST API or provide REST API as an additional feature.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;: Python , Flask , Jinja , HTML, Javascript&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Mentor&#039;&#039;&#039; : Vasudev/Jishnu&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Android SDK for Silpa===&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Project&#039;&#039;&#039;: &lt;br /&gt;
&lt;br /&gt;
Port possible Silpa modules to java and create SDK so that other developers can use this for their apps. Modules like Indic Render, Transliteration, Payyas has really good potential in android because of the fragmentation exists in Android and lack for proper Indic support. This SDK will help developers to support their Indic app in wide range of android devices.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;: Java, Android, Python&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Mentor&#039;&#039;&#039; : Jishnu/Hrishikesh/Aashik&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Converting indic processing modules currently in SILPA into javascript modules library===&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Project&#039;&#039;&#039;: &lt;br /&gt;
&lt;br /&gt;
Port some of the silpa algorithms to node modules. Several modules, alogorithms in SILPA project is done in python now. But porting them to javascript helps developers. For example, cross language transliteration can be done javascript too if we port the algorithm and transliteration rules. Similarly the approximate search can be ported. A flexibile fuzzy search on the web pages will be possible if we have the algorithm in javascript.&lt;br /&gt;
&lt;br /&gt;
Proposed javascript module pattern is https://github.com/umdjs/umd&lt;br /&gt;
&lt;br /&gt;
Student proposals should have a list of alogorithms planning to port, planned demo applications, planned documentation details, and publishing details(Example: npm registry)&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;: javascript, python&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Mentor&#039;&#039;&#039; : Jishnu&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===  Improving cross language transliteration system.  ===&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Project&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
Currently only Kannada and Malayalam are perfect rest all are first converted to Malayalam then to English due to lack of language internal. Also currently for English to Indic we use CMUDict so transliteration capability is limited to words in CMUDict only probably we could develop better method for English to Indic transliteration&lt;br /&gt;
&lt;br /&gt;
CLDR has transliteration data for Indic languages. We can explore it and see the feasibility. For an intermediate representation of the scripts either IPA can be used or ISO 15919 standard can be used. All these must be supplemented with exception rules and special case handling to achieve more perfect result.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;:python&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Mentor&#039;&#039;&#039; : Vasudev/Jishnu&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Internationalize SILPA project with Wikimedia jquery projects ,  Improve  the webfonts module in Silpa using jquery.webfonts and provide more Indic and complex fonts as part of it ===&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Project&#039;&#039;&#039;: &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Internationalize SILPA&#039;&#039;&#039; :-  &lt;br /&gt;
SILPA project has many Indic language applications, but as of now, if somebody want to input in Indian languages, there is no built in tool in it. Similarly, the application is not internationalized. Both of these can be achieved by using the [//github.com/wikimedia/jquery.ime jquery.ime] and [//github.com/wikimedia/jquery.ime jquery.i18n] libraries from Wikimedia. A sample implementation is avaliable in our [http://smc.org.in website]. The i18n should be in the SILPA flask framework with a nice templating system. Similarly the interface should have webfonts using [https://github.com/wikimedia/jquery.webfonts jquery.webfonts] library.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Improve  the webfonts &#039;&#039;&#039; :- &lt;br /&gt;
* Currently Silpa provides 36 webfonts. add more fonts to this collection.&lt;br /&gt;
* Rewrote webfonts module to use the features of jquery.webfonts&lt;br /&gt;
* reate a repo as per jquery.webfonts specification&lt;br /&gt;
* Provide a clean api so that other websites can use our webfonts in their websites&lt;br /&gt;
* Document the usage&lt;br /&gt;
* Provide font preview and download options  &lt;br /&gt;
* **This is partly done**. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;More Details&#039;&#039;&#039;&lt;br /&gt;
** [https://github.com/wikimedia/jquery.i18n jquery.i18n]&lt;br /&gt;
** [https://github.com/wikimedia/jquery.ime jquery.ime]&lt;br /&gt;
** [https://github.com/wikimedia/jquery.webfonts jquery.webfonts]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;: jQuery, css, html5, Python , flask , technical understanding about fonts&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Mentor&#039;&#039;&#039; : Jishnu/Vasudev&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Language filter for diaspora==&lt;br /&gt;
&lt;br /&gt;
Diaspora is a Free Software, federated social networking platform. Diaspora users post in many languages. When people use more than one language in their posts, it is inconvenient for people who don&#039;t understand a language. This task is to tag every post with languages used in the post, ideally detected automatically, but with an option to override it. Once each post has a language tag, people should be able to choose their preferred language and posts in other languages should be hidden by default. Also provide an option to translate posts and comments.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;: Ruby on Rails&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Mentor&#039;&#039;&#039;: Pirate Praveen, Ershad K&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Varnam Based==&lt;br /&gt;
&lt;br /&gt;
Varnam is a cross-platform predictive transliterator for Indian languages. It works mostly like Google&#039;s transliterate, but shows key differences in the way word tokenization is done. It has a learning system built in which allows Varnam to make smart predictions. &lt;br /&gt;
&lt;br /&gt;
There are varnam clients available as [https://addons.mozilla.org/en-US/firefox/addon/varnam-transliteration-base/ Firefox]] &amp;amp; [https://chrome.google.com/webstore/detail/varnam-ime/abcfkeabpcanobhdmcmdabejaamephaf Chrome addon] and an [https://gitorious.org/varnamproject/libvarnam-ibus/source/d939adf50024013902c27310c03ef21a9210cdcb IBus engine].&lt;br /&gt;
&lt;br /&gt;
To try out Varnam, navigate to [http://varnamproject.com/editor[http://varnamproject.com/editor]]. Currently it support Hindi and Malayalam.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Improvements to the REST API===&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Project&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
This includes rewrite of the current implementation in `golang` and add support for WebSockets to improve the input experience. This also&lt;br /&gt;
includes making scripts that would ease embedding input on any webpage. All the changes done will go live on[1]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;: Basic understanding of golang and C&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039;: Advanced&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Mentor&#039;&#039;&#039;: Navaneeth S&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Improve the learning system===&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Project&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
The main goal of this is to improve how varnam tokenizes when learning words. Today, when a word is learned, varnam takes all the possible prefixes into account and learn all of them to improve future suggestions. But sometimes, this is not enough to predict good suggestions. An improvement is suggested which will try to infer the base form of the word under learning.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;: Knowledge in C&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039;: Medium&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Mentor&#039;&#039;&#039;: Navaneeth S&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Word corpus synchronization ===&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Project&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
Create a cross-platform synchronization tool which can upload/download the word corpus from offline IMEs like varnam-ibus[2]. This helps to build the online words corpus easily.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;: Knowledge in C/golang&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039; : Medium&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Mentor&#039;&#039;&#039;: Navaneeth S&lt;br /&gt;
&lt;br /&gt;
* [1]: http://www.varnamproject.com&lt;br /&gt;
* [2]: https://gitorious.org/varnamproject/libvarnam-ibus/&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Adding Braille Keyboard layouts for Indian Languages to m17n Library==&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Project&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
Project is building support for Bharati Braille keyboard layouts in GNU/Linux systemes.  Bharati Braille standard is the official Braille standard in India. A regular QWERTY keyboard is used for data entry. SDF-JKL keys are used for six dots of Braille. This support need to be built as m17n layouts. This will enable visually challenged people who studied braille layouts to use GNU/Linux systems easily with the help of Audio feedback from TTS&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;More Details&#039;&#039;&#039;&lt;br /&gt;
** http://www.acharya.gen.in:8080/disabilities/bh_brl.php&lt;br /&gt;
** http://en.wikipedia.org/wiki/Bharati_Braille&lt;br /&gt;
** http://www.nongnu.org/m17n/&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Mentor&#039;&#039;&#039;: Anivar Aravind&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=Projects with unconfirmed mentors=&lt;br /&gt;
&lt;br /&gt;
==Grandham ==&lt;br /&gt;
&lt;br /&gt;
=== Adding MARC21 import/export feature in Grandham ===&lt;br /&gt;
&lt;br /&gt;
We need a feature in Grandham to import and parse data from MARC21 documents. We should also be able to export existing data in MARC21.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;: Knowledge in Ruby/Ruby on Rails&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039; : High&lt;br /&gt;
&lt;br /&gt;
* [1]: http://dev.grandham.org&lt;br /&gt;
* [2]: https://github.com/smc/grandham&lt;/div&gt;</summary>
		<author><name>Nandaja</name></author>
	</entry>
	<entry>
		<id>https://wiki.smc.org.in/index.php?title=GSoC/2014/Project_ideas&amp;diff=4621</id>
		<title>GSoC/2014/Project ideas</title>
		<link rel="alternate" type="text/html" href="https://wiki.smc.org.in/index.php?title=GSoC/2014/Project_ideas&amp;diff=4621"/>
		<updated>2014-02-25T19:35:42Z</updated>

		<summary type="html">&lt;p&gt;Nandaja: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;center&amp;gt; &lt;br /&gt;
&amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt; &amp;lt;big&amp;gt;&#039;&#039;&#039;Apart from the following ideas , you can propose your own ideas&#039;&#039;&#039;&amp;lt;/big&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Potential Mentors=&lt;br /&gt;
# Santhosh Thottingal (&#039;&#039;&#039;santhosh&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Baiju M (&#039;&#039;&#039;baijum&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Praveen A (&#039;&#039;&#039;j4v4m4n&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Rajeesh K Nambiar (&#039;&#039;&#039;rajeeshknambiar&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Vasudev Kammath (&#039;&#039;&#039;copyninja&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Jishnu Mohan (&#039;&#039;&#039;jishnu7&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Hrishikesh K.B (&#039;&#039;&#039;stultus&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Anivar Aravind (&#039;&#039;&#039;anivar&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Anilkumar K V (&#039;&#039;&#039;anilkumar&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Sajjad Anwar (&#039;&#039;&#039;geohacker&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Deepa V Gopinath (&#039;&#039;&#039;deepagopinath&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# jain Basil  (&#039;&#039;&#039;jainbasil&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Ershad K (&#039;&#039;&#039;ershad&#039;&#039;&#039; on irc.freenode.net&lt;br /&gt;
# Navaneeth (&#039;&#039;&#039;nkn__&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Nishan Naseer (&#039;&#039;&#039;nishan&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Nandaja Varma (&#039;&#039;&#039;gem&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
&lt;br /&gt;
=Ideas for Google Summer of Code 2014=&lt;br /&gt;
* Please Read the [http://wiki.smc.org.in/SoC/2014#FAQ FAQ]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
If you want to propose an idea, please do it in [http://lists.smc.org.in/listinfo.cgi/student-projects-smc.org.in student projects mailing list]&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=Projects with confirmed mentors=&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== A spell checker for Indic language that understands inflections ==&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Project&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
SILPA project has a spellchecker written using python with a not so simple algorithm. But still it is not capable of handling inflection and agglutination occurring in Indian languages especially south Indian languages. The dictionary we have for Malayalam spellchecker have about 150000 words. Of course we can expand the dictionary, but that doesn&#039;t have much value since words can be formed in Malayalam or Tamil etc by joining multiple words. In addition to that, words get inflected based on grammar forms(sandhi), plural, gender etc. Hunspell has a system to handle this, but so far nobody succeeded in getting it working for multi level suffix stripping as required for Malayalam. Some times a Malayalam word can be formed by more than 5 words joining together. We will need a word splitting logic or a table taking care of all patterns. The project is to attempt solving this with hunspell. If that is not feasible(hunspell upstream is not active), develop an algorithm and implement it.&lt;br /&gt;
&lt;br /&gt;
Recently Tamil attempted developing a spellchecker using Hunspell with multi level suffix stripping. You can see the result here https://github.com/thamizha/solthiruthi. &lt;br /&gt;
Our attempt should be first to use Hunspell to achieve spellchecking with agglutination and inflection. Probably it will require lot of scripting to generate suffix patterns, we can ask help from existing language communities too. If Hunspell has limitation with multi level suffxes- sometimes Indian languages require more than 5 levels of suffix stripping, we need to document it(bug and documentation) and try to attempt python based solution on top of SILPA framework.&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;[https://savannah.nongnu.org/task/index.php?12558 Savannah Task]&#039;&#039;&#039;&lt;br /&gt;
 &#039;&#039;&#039;Expertise required&#039;&#039;&#039;: Average level understanding of grammar system of at least one Indian language&lt;br /&gt;
 &#039;&#039;&#039;Complexity&#039;&#039;&#039;: Advanced&lt;br /&gt;
 &#039;&#039;&#039;Mentor&#039;&#039;&#039;: Santhosh Thottingal&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Indic rendering support in ConTeXt==&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Project&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
ConTeXt is another TeX macro system similar to LaTeX but much more suitable for design. To find more information about ConTeXt, see the wiki http://wiki.contextgarden.net/Main_Page. ConTeXt MKII  have Indic language rendering support using XeTeX. but MKII is deprecated, and the new MKIV backend doesn&#039;t support Indic rendering yet. The aim of this project is to add support to Inidic rendering to ConTeXt MKIV. XeTeX is using Harfbuzz to do correct Indic rendering.&lt;br /&gt;
&lt;br /&gt;
 &#039;&#039;&#039;More Details&#039;&#039;&#039;: A partially working patch by Rajeesh for MKIV lua code is available. ConTeXt mkii (deprecated) can work with XeTeX backend for Indic rendering. Here is a sample file:&lt;br /&gt;
 \usemodule[simplefonts]&lt;br /&gt;
 \definefontfeature[malayalam][script=mlym]&lt;br /&gt;
 \setmainfont[Rachana][features=malayalam]&lt;br /&gt;
 \starttext&lt;br /&gt;
 മലയാളം \TeX ഉപയോഗിച്ച് ടൈപ്പ്സെറ്റ് ചെയ്തത്&lt;br /&gt;
 \stoptext&lt;br /&gt;
Generate the output using command&lt;br /&gt;
 texexec --xetex &amp;lt;file.tex&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;[https://savannah.nongnu.org/task/index.php?12559 Savannah Task]&#039;&#039;&#039;&lt;br /&gt;
 &#039;&#039;&#039;Expertise required&#039;&#039;&#039;: Understanding of the TeX system, experience in either LaTeX or ConTeXt and basic understanding of Indic language rendering. MKIV uses Lua, familiarity with Lua, opentype specifications or Harfbuzz will be added advantage.&lt;br /&gt;
 &#039;&#039;&#039;Complexity&#039;&#039;&#039; : Advanced&lt;br /&gt;
 &#039;&#039;&#039;Mentor&#039;&#039;&#039; : Rajeesh K Nambiar&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Language model and Acoustic model for Malayalam language for speech recognition system in CMU Sphinx==&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Project&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
CMU Sphinx is a large vocabulary, speaker independent speech recognition codebase and suite of tools, which can be used to develop speech recognition system in any language. To develop an automatic speech recognition system in a language, acoustic model and language model has to framed for that particular language.  Acoustic models characterize how sound changes over time. It captures the characteristics of basic recognition units. The language model describes the likelihood, probability, or penalty taken when a sequence or collection of words is seen. It attempts to convey behavior of the language and tries to predict the occurrence of specific word sequences possible in the language. Once these two models are developed, it will be useful to every one doing research in speech processing. For Indian languages Hindi, Tamil, Telugu and Marati, ASR systems have been developed using sphinx engine. In this project work is aimed at developing acoustic model and language model for Malayalam.&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;Background Reading&#039;&#039;&#039;&lt;br /&gt;
** [http://www.cs.cmu.edu/~gopalakr/publications/spdatabases_specom05.pdf &#039;Development of Indian Language Speech Databases for Large Vocabulary Speech Recognition Systems&#039;], Gopalakrishna  Anumanchipalli, Rahul Chitturi, Sachin Joshi, Rohit Kumar, Satinder Pal Singh, R.N.V. Sitaram, S P Kishore&lt;br /&gt;
** [http://www.aclweb.org/anthology/W/W12/W12-5808.pdf &amp;quot;Automatic Pronunciation Evaluation And Mispronunciation Detection Using CMUSphinx&amp;quot;], Ronanki Srikanth, James Salsman&lt;br /&gt;
** http://www.speech.cs.cmu.edu/&lt;br /&gt;
** http://cmusphinx.sourceforge.net/wiki/tutorial&lt;br /&gt;
** [http://www.ijarcsse.com &amp;quot;HTK Based Telugu Speech Recognition&amp;quot;], P. Vijai Bhaskar, AVNIET ,Hyderabad, Prof. Dr. S. Rama Mohan Rao, A.Gopi &lt;br /&gt;
** [http://www.cs.cmu.edu/~araza/Automatic_Speech_Recognition_System_for_Urdu.PDF &amp;quot;Design and  Development of an Automatic Speech Recognition System for Urdu&amp;quot;], Agha Ali Raza,  M.Sc. Thesis, FAST‐National University of Computer and Emerging Sciences &lt;br /&gt;
** [http://www.ccis2k.org/iajit/PDF/vol.6,no.2/11IASRUCSS186.pdf &amp;quot;Investigation Arabic Speech Recognition Using CMU Sphinx System&amp;quot;], Hassan Satori1, 2, Hussein Hiyassat3, Mostafa Harti1, 2, and Noureddine Chenfour&lt;br /&gt;
** [http://www.try.idv.tw/static-resources/homework/pr/PR_Final_Report.pdf &amp;quot;Understanding the CMU Sphinx Speech Recognition System&amp;quot;], Chun-Feng Liao&lt;br /&gt;
&lt;br /&gt;
 &#039;&#039;&#039;Mentor&#039;&#039;&#039;:  Deepa P. Gopinath&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Silpa based==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Provide REST API for new flask based Silpa, including conversion of templates to this REST API from JSON RPC===&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Project&#039;&#039;&#039;: &lt;br /&gt;
&lt;br /&gt;
Silpa is now relying on JSONRPC. We need to, either completely move to REST API or provide REST API as an additional feature.&lt;br /&gt;
 &#039;&#039;&#039;Expertise required&#039;&#039;&#039;: Python , Flask , Jinja , HTML, Javascript&lt;br /&gt;
 &#039;&#039;&#039;Mentor&#039;&#039;&#039; : Vasudev/Jishnu&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Android SDK for Silpa===&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Project&#039;&#039;&#039;: &lt;br /&gt;
&lt;br /&gt;
Port possible Silpa modules to java and create SDK so that other developers can use this for their apps. Modules like Indic Render, Transliteration, Payyas has really good potential in android because of the fragmentation exists in Android and lack for proper Indic support. This SDK will help developers to support their Indic app in wide range of android devices.&lt;br /&gt;
&lt;br /&gt;
 &#039;&#039;&#039;Expertise required&#039;&#039;&#039;: Java, Android, Python&lt;br /&gt;
 &#039;&#039;&#039;Mentor&#039;&#039;&#039; : Jishnu/Hrishikesh/Aashik&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Converting indic processing modules currently in SILPA into javascript modules library===&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Project&#039;&#039;&#039;: &lt;br /&gt;
&lt;br /&gt;
Port some of the silpa algorithms to node modules. Several modules, alogorithms in SILPA project is done in python now. But porting them to javascript helps developers. For example, cross language transliteration can be done javascript too if we port the algorithm and transliteration rules. Similarly the approximate search can be ported. A flexibile fuzzy search on the web pages will be possible if we have the algorithm in javascript.&lt;br /&gt;
&lt;br /&gt;
Proposed javascript module pattern is https://github.com/umdjs/umd&lt;br /&gt;
&lt;br /&gt;
Student proposals should have a list of alogorithms planning to port, planned demo applications, planned documentation details, and publishing details(Example: npm registry)&lt;br /&gt;
&lt;br /&gt;
 &#039;&#039;&#039;Expertise required&#039;&#039;&#039;: javascript, python&lt;br /&gt;
 &#039;&#039;&#039;Mentor&#039;&#039;&#039; : Jishnu&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===  Improving cross language transliteration system.  ===&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Project&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
Currently only Kannada and Malayalam are perfect rest all are first converted to Malayalam then to English due to lack of language internal. Also currently for English to Indic we use CMUDict so transliteration capability is limited to words in CMUDict only probably we could develop better method for English to Indic transliteration&lt;br /&gt;
&lt;br /&gt;
CLDR has transliteration data for Indic languages. We can explore it and see the feasibility. For an intermediate representation of the scripts either IPA can be used or ISO 15919 standard can be used. All these must be supplemented with exception rules and special case handling to achieve more perfect result.&lt;br /&gt;
&lt;br /&gt;
 &#039;&#039;&#039;Expertise required&#039;&#039;&#039;:python&lt;br /&gt;
 &#039;&#039;&#039;Mentor&#039;&#039;&#039; : Vasudev/Jishnu&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Internationalize SILPA project with Wikimedia jquery projects ,  Improve  the webfonts module in Silpa using jquery.webfonts and provide more Indic and complex fonts as part of it ===&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Project&#039;&#039;&#039;: &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Internationalize SILPA&#039;&#039;&#039; :-  &lt;br /&gt;
SILPA project has many Indic language applications, but as of now, if somebody want to input in Indian languages, there is no built in tool in it. Similarly, the application is not internationalized. Both of these can be achieved by using the [//github.com/wikimedia/jquery.ime jquery.ime] and [//github.com/wikimedia/jquery.ime jquery.i18n] libraries from Wikimedia. A sample implementation is avaliable in our [http://smc.org.in website]. The i18n should be in the SILPA flask framework with a nice templating system. Similarly the interface should have webfonts using [https://github.com/wikimedia/jquery.webfonts jquery.webfonts] library.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Improve  the webfonts &#039;&#039;&#039; :- &lt;br /&gt;
* Currently Silpa provides 36 webfonts. add more fonts to this collection.&lt;br /&gt;
* Rewrote webfonts module to use the features of jquery.webfonts&lt;br /&gt;
* reate a repo as per jquery.webfonts specification&lt;br /&gt;
* Provide a clean api so that other websites can use our webfonts in their websites&lt;br /&gt;
* Document the usage&lt;br /&gt;
* Provide font preview and download options  &lt;br /&gt;
* **This is partly done**. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 &#039;&#039;&#039;More Details&#039;&#039;&#039;&lt;br /&gt;
** [https://github.com/wikimedia/jquery.i18n jquery.i18n]&lt;br /&gt;
** [https://github.com/wikimedia/jquery.ime jquery.ime]&lt;br /&gt;
** [https://github.com/wikimedia/jquery.webfonts jquery.webfonts]&lt;br /&gt;
 &#039;&#039;&#039;Expertise required&#039;&#039;&#039;: jQuery, css, html5, Python , flask , technical understanding about fonts&lt;br /&gt;
 &#039;&#039;&#039;Mentor&#039;&#039;&#039; : Jishnu/Vasudev&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Language filter for diaspora==&lt;br /&gt;
&lt;br /&gt;
Diaspora is a Free Software, federated social networking platform. Diaspora users post in many languages. When people use more than one language in their posts, it is inconvenient for people who don&#039;t understand a language. This task is to tag every post with languages used in the post, ideally detected automatically, but with an option to override it. Once each post has a language tag, people should be able to choose their preferred language and posts in other languages should be hidden by default. Also provide an option to translate posts and comments.&lt;br /&gt;
&lt;br /&gt;
 &#039;&#039;&#039;Expertise required&#039;&#039;&#039;: Ruby on Rails&lt;br /&gt;
 &#039;&#039;&#039;Mentor&#039;&#039;&#039;: Pirate Praveen, Ershad K&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Varnam Based==&lt;br /&gt;
&lt;br /&gt;
Varnam is a cross-platform predictive transliterator for Indian languages. It works mostly like Google&#039;s transliterate, but shows key differences in the way word tokenization is done. It has a learning system built in which allows Varnam to make smart predictions. &lt;br /&gt;
&lt;br /&gt;
There are varnam clients available as [https://addons.mozilla.org/en-US/firefox/addon/varnam-transliteration-base/ Firefox]] &amp;amp; [https://chrome.google.com/webstore/detail/varnam-ime/abcfkeabpcanobhdmcmdabejaamephaf Chrome addon] and an [https://gitorious.org/varnamproject/libvarnam-ibus/source/d939adf50024013902c27310c03ef21a9210cdcb IBus engine].&lt;br /&gt;
&lt;br /&gt;
To try out Varnam, navigate to [http://varnamproject.com/editor[http://varnamproject.com/editor]]. Currently it support Hindi and Malayalam.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Improvements to the REST API===&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Project&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
This includes rewrite of the current implementation in `golang` and add support for WebSockets to improve the input experience. This also&lt;br /&gt;
includes making scripts that would ease embedding input on any webpage. All the changes done will go live on[1]&lt;br /&gt;
&lt;br /&gt;
 &#039;&#039;&#039;Expertise required&#039;&#039;&#039;: Basic understanding of golang and C&lt;br /&gt;
 &#039;&#039;&#039;Complexity&#039;&#039;&#039;: Advanced&lt;br /&gt;
 &#039;&#039;&#039;Mentor&#039;&#039;&#039;: Navaneeth S&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Improve the learning system===&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Project&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
The main goal of this is to improve how varnam tokenizes when learning words. Today, when a word is learned, varnam takes all the possible prefixes into account and learn all of them to improve future suggestions. But sometimes, this is not enough to predict good suggestions. An improvement is suggested which will try to infer the base form of the word under learning.&lt;br /&gt;
&lt;br /&gt;
 &#039;&#039;&#039;Expertise required&#039;&#039;&#039;: Knowledge in C&lt;br /&gt;
 &#039;&#039;&#039;Complexity&#039;&#039;&#039;: Medium&lt;br /&gt;
 &#039;&#039;&#039;Mentor&#039;&#039;&#039;: Navaneeth S&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Word corpus synchronization ===&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Project&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
Create a cross-platform synchronization tool which can upload/download the word corpus from offline IMEs like varnam-ibus[2]. This helps to build the online words corpus easily.&lt;br /&gt;
&lt;br /&gt;
 &#039;&#039;&#039;Expertise required&#039;&#039;&#039;: Knowledge in C/golang&lt;br /&gt;
 &#039;&#039;&#039;Complexity&#039;&#039;&#039; : Medium&lt;br /&gt;
 &#039;&#039;&#039;Mentor&#039;&#039;&#039;: Navaneeth S&lt;br /&gt;
&lt;br /&gt;
* [1]: http://www.varnamproject.com&lt;br /&gt;
* [2]: https://gitorious.org/varnamproject/libvarnam-ibus/&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Adding Braille Keyboard layouts for Indian Languages to m17n Library==&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Project&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
Project is building support for Bharati Braille keyboard layouts in GNU/Linux systemes.  Bharati Braille standard is the official Braille standard in India. A regular QWERTY keyboard is used for data entry. SDF-JKL keys are used for six dots of Braille. This support need to be built as m17n layouts. This will enable visually challenged people who studied braille layouts to use GNU/Linux systems easily with the help of Audio feedback from TTS&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;More Details&#039;&#039;&#039;&lt;br /&gt;
** http://www.acharya.gen.in:8080/disabilities/bh_brl.php&lt;br /&gt;
** http://en.wikipedia.org/wiki/Bharati_Braille&lt;br /&gt;
** http://www.nongnu.org/m17n/&lt;br /&gt;
&lt;br /&gt;
 &#039;&#039;&#039;Mentor&#039;&#039;&#039;: Anivar Aravind&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=Projects with unconfirmed mentors=&lt;br /&gt;
&lt;br /&gt;
==Grandham ==&lt;br /&gt;
&lt;br /&gt;
=== Adding MARC21 import/export feature in Grandham ===&lt;br /&gt;
&lt;br /&gt;
We need a feature in Grandham to import and parse data from MARC21 documents. We should also be able to export existing data in MARC21.&lt;br /&gt;
&lt;br /&gt;
 &#039;&#039;&#039;Expertise required&#039;&#039;&#039;: Knowledge in Ruby/Ruby on Rails&lt;br /&gt;
 &#039;&#039;&#039;Complexity&#039;&#039;&#039; : High&lt;br /&gt;
&lt;br /&gt;
* [1]: http://dev.grandham.org&lt;br /&gt;
* [2]: https://github.com/smc/grandham&lt;/div&gt;</summary>
		<author><name>Nandaja</name></author>
	</entry>
	<entry>
		<id>https://wiki.smc.org.in/index.php?title=GSoC/2014/Project_ideas&amp;diff=4620</id>
		<title>GSoC/2014/Project ideas</title>
		<link rel="alternate" type="text/html" href="https://wiki.smc.org.in/index.php?title=GSoC/2014/Project_ideas&amp;diff=4620"/>
		<updated>2014-02-25T19:32:51Z</updated>

		<summary type="html">&lt;p&gt;Nandaja: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;center&amp;gt; &lt;br /&gt;
&amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt; &amp;lt;big&amp;gt;&#039;&#039;&#039;Apart from the following ideas , you can propose your own ideas&#039;&#039;&#039;&amp;lt;/big&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Potential Mentors=&lt;br /&gt;
# Santhosh Thottingal (&#039;&#039;&#039;santhosh&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Baiju M (&#039;&#039;&#039;baijum&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Praveen A (&#039;&#039;&#039;j4v4m4n&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Rajeesh K Nambiar (&#039;&#039;&#039;rajeeshknambiar&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Vasudev Kammath (&#039;&#039;&#039;copyninja&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Jishnu Mohan (&#039;&#039;&#039;jishnu7&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Hrishikesh K.B (&#039;&#039;&#039;stultus&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Anivar Aravind (&#039;&#039;&#039;anivar&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Anilkumar K V (&#039;&#039;&#039;anilkumar&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Sajjad Anwar (&#039;&#039;&#039;geohacker&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Deepa V Gopinath (&#039;&#039;&#039;deepagopinath&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# jain Basil  (&#039;&#039;&#039;jainbasil&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Ershad K (&#039;&#039;&#039;ershad&#039;&#039;&#039; on irc.freenode.net&lt;br /&gt;
# Navaneeth (&#039;&#039;&#039;nkn__&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Nishan Naseer (&#039;&#039;&#039;nishan&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Nandaja Varma (&#039;&#039;&#039;gem&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
&lt;br /&gt;
=Ideas for Google Summer of Code 2014=&lt;br /&gt;
* Please Read the [http://wiki.smc.org.in/SoC/2014#FAQ FAQ]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
If you want to propose an idea, please do it in [http://lists.smc.org.in/listinfo.cgi/student-projects-smc.org.in student projects mailing list]&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=Projects with confirmed mentors=&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== A spell checker for Indic language that understands inflections ==&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Project&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
SILPA project has a spellchecker written using python with a not so simple algorithm. But still it is not capable of handling inflection and agglutination occurring in Indian languages especially south Indian languages. The dictionary we have for Malayalam spellchecker have about 150000 words. Of course we can expand the dictionary, but that doesn&#039;t have much value since words can be formed in Malayalam or Tamil etc by joining multiple words. In addition to that, words get inflected based on grammar forms(sandhi), plural, gender etc. Hunspell has a system to handle this, but so far nobody succeeded in getting it working for multi level suffix stripping as required for Malayalam. Some times a Malayalam word can be formed by more than 5 words joining together. We will need a word splitting logic or a table taking care of all patterns. The project is to attempt solving this with hunspell. If that is not feasible(hunspell upstream is not active), develop an algorithm and implement it.&lt;br /&gt;
&lt;br /&gt;
Recently Tamil attempted developing a spellchecker using Hunspell with multi level suffix stripping. You can see the result here https://github.com/thamizha/solthiruthi. &lt;br /&gt;
Our attempt should be first to use Hunspell to achieve spellchecking with agglutination and inflection. Probably it will require lot of scripting to generate suffix patterns, we can ask help from existing language communities too. If Hunspell has limitation with multi level suffxes- sometimes Indian languages require more than 5 levels of suffix stripping, we need to document it(bug and documentation) and try to attempt python based solution on top of SILPA framework.&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;[https://savannah.nongnu.org/task/index.php?12558 Savannah Task]&#039;&#039;&#039;&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;: Average level understanding of grammar system of at least one Indian language&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039;: Advanced&lt;br /&gt;
&#039;&#039;&#039;Mentor&#039;&#039;&#039;: Santhosh Thottingal&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Indic rendering support in ConTeXt==&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Project&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
ConTeXt is another TeX macro system similar to LaTeX but much more suitable for design. To find more information about ConTeXt, see the wiki http://wiki.contextgarden.net/Main_Page. ConTeXt MKII  have Indic language rendering support using XeTeX. but MKII is deprecated, and the new MKIV backend doesn&#039;t support Indic rendering yet. The aim of this project is to add support to Inidic rendering to ConTeXt MKIV. XeTeX is using Harfbuzz to do correct Indic rendering.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;More Details&#039;&#039;&#039;: A partially working patch by Rajeesh for MKIV lua code is available. ConTeXt mkii (deprecated) can work with XeTeX backend for Indic rendering. Here is a sample file:&lt;br /&gt;
 \usemodule[simplefonts]&lt;br /&gt;
 \definefontfeature[malayalam][script=mlym]&lt;br /&gt;
 \setmainfont[Rachana][features=malayalam]&lt;br /&gt;
 \starttext&lt;br /&gt;
 മലയാളം \TeX ഉപയോഗിച്ച് ടൈപ്പ്സെറ്റ് ചെയ്തത്&lt;br /&gt;
 \stoptext&lt;br /&gt;
Generate the output using command&lt;br /&gt;
 texexec --xetex &amp;lt;file.tex&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;[https://savannah.nongnu.org/task/index.php?12559 Savannah Task]&#039;&#039;&#039;&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;: Understanding of the TeX system, experience in either LaTeX or ConTeXt and basic understanding of Indic language rendering. MKIV uses Lua, familiarity with Lua, opentype specifications or Harfbuzz will be added advantage.&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039; : Advanced&lt;br /&gt;
&#039;&#039;&#039;Mentor&#039;&#039;&#039; : Rajeesh K Nambiar&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Language model and Acoustic model for Malayalam language for speech recognition system in CMU Sphinx==&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Project&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
CMU Sphinx is a large vocabulary, speaker independent speech recognition codebase and suite of tools, which can be used to develop speech recognition system in any language. To develop an automatic speech recognition system in a language, acoustic model and language model has to framed for that particular language.  Acoustic models characterize how sound changes over time. It captures the characteristics of basic recognition units. The language model describes the likelihood, probability, or penalty taken when a sequence or collection of words is seen. It attempts to convey behavior of the language and tries to predict the occurrence of specific word sequences possible in the language. Once these two models are developed, it will be useful to every one doing research in speech processing. For Indian languages Hindi, Tamil, Telugu and Marati, ASR systems have been developed using sphinx engine. In this project work is aimed at developing acoustic model and language model for Malayalam.&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;Background Reading&#039;&#039;&#039;&lt;br /&gt;
** [http://www.cs.cmu.edu/~gopalakr/publications/spdatabases_specom05.pdf &#039;Development of Indian Language Speech Databases for Large Vocabulary Speech Recognition Systems&#039;], Gopalakrishna  Anumanchipalli, Rahul Chitturi, Sachin Joshi, Rohit Kumar, Satinder Pal Singh, R.N.V. Sitaram, S P Kishore&lt;br /&gt;
** [http://www.aclweb.org/anthology/W/W12/W12-5808.pdf &amp;quot;Automatic Pronunciation Evaluation And Mispronunciation Detection Using CMUSphinx&amp;quot;], Ronanki Srikanth, James Salsman&lt;br /&gt;
** http://www.speech.cs.cmu.edu/&lt;br /&gt;
** http://cmusphinx.sourceforge.net/wiki/tutorial&lt;br /&gt;
** [http://www.ijarcsse.com &amp;quot;HTK Based Telugu Speech Recognition&amp;quot;], P. Vijai Bhaskar, AVNIET ,Hyderabad, Prof. Dr. S. Rama Mohan Rao, A.Gopi &lt;br /&gt;
** [http://www.cs.cmu.edu/~araza/Automatic_Speech_Recognition_System_for_Urdu.PDF &amp;quot;Design and  Development of an Automatic Speech Recognition System for Urdu&amp;quot;], Agha Ali Raza,  M.Sc. Thesis, FAST‐National University of Computer and Emerging Sciences &lt;br /&gt;
** [http://www.ccis2k.org/iajit/PDF/vol.6,no.2/11IASRUCSS186.pdf &amp;quot;Investigation Arabic Speech Recognition Using CMU Sphinx System&amp;quot;], Hassan Satori1, 2, Hussein Hiyassat3, Mostafa Harti1, 2, and Noureddine Chenfour&lt;br /&gt;
** [http://www.try.idv.tw/static-resources/homework/pr/PR_Final_Report.pdf &amp;quot;Understanding the CMU Sphinx Speech Recognition System&amp;quot;], Chun-Feng Liao&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Mentor&#039;&#039;&#039;:  Deepa P. Gopinath&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Silpa based==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Provide REST API for new flask based Silpa, including conversion of templates to this REST API from JSON RPC===&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Project&#039;&#039;&#039;: &lt;br /&gt;
&lt;br /&gt;
Silpa is now relying on JSONRPC. We need to, either completely move to REST API or provide REST API as an additional feature.&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;: Python , Flask , Jinja , HTML, Javascript&lt;br /&gt;
&#039;&#039;&#039;Mentor&#039;&#039;&#039; : Vasudev/Jishnu&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Android SDK for Silpa===&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Project&#039;&#039;&#039;: &lt;br /&gt;
&lt;br /&gt;
Port possible Silpa modules to java and create SDK so that other developers can use this for their apps. Modules like Indic Render, Transliteration, Payyas has really good potential in android because of the fragmentation exists in Android and lack for proper Indic support. This SDK will help developers to support their Indic app in wide range of android devices.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;: Java, Android, Python&lt;br /&gt;
&#039;&#039;&#039;Mentor&#039;&#039;&#039; : Jishnu/Hrishikesh/Aashik&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Converting indic processing modules currently in SILPA into javascript modules library===&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Project&#039;&#039;&#039;: &lt;br /&gt;
&lt;br /&gt;
Port some of the silpa algorithms to node modules. Several modules, alogorithms in SILPA project is done in python now. But porting them to javascript helps developers. For example, cross language transliteration can be done javascript too if we port the algorithm and transliteration rules. Similarly the approximate search can be ported. A flexibile fuzzy search on the web pages will be possible if we have the algorithm in javascript.&lt;br /&gt;
&lt;br /&gt;
Proposed javascript module pattern is https://github.com/umdjs/umd&lt;br /&gt;
&lt;br /&gt;
Student proposals should have a list of alogorithms planning to port, planned demo applications, planned documentation details, and publishing details(Example: npm registry)&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;: javascript, python&lt;br /&gt;
&#039;&#039;&#039;Mentor&#039;&#039;&#039; : Jishnu&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===  Improving cross language transliteration system.  ===&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Project&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
Currently only Kannada and Malayalam are perfect rest all are first converted to Malayalam then to English due to lack of language internal. Also currently for English to Indic we use CMUDict so transliteration capability is limited to words in CMUDict only probably we could develop better method for English to Indic transliteration&lt;br /&gt;
&lt;br /&gt;
CLDR has transliteration data for Indic languages. We can explore it and see the feasibility. For an intermediate representation of the scripts either IPA can be used or ISO 15919 standard can be used. All these must be supplemented with exception rules and special case handling to achieve more perfect result.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;:python&lt;br /&gt;
&#039;&#039;&#039;Mentor&#039;&#039;&#039; : Vasudev/Jishnu&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Internationalize SILPA project with Wikimedia jquery projects ,  Improve  the webfonts module in Silpa using jquery.webfonts and provide more Indic and complex fonts as part of it ===&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Project&#039;&#039;&#039;: &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Internationalize SILPA&#039;&#039;&#039; :-  &lt;br /&gt;
SILPA project has many Indic language applications, but as of now, if somebody want to input in Indian languages, there is no built in tool in it. Similarly, the application is not internationalized. Both of these can be achieved by using the [//github.com/wikimedia/jquery.ime jquery.ime] and [//github.com/wikimedia/jquery.ime jquery.i18n] libraries from Wikimedia. A sample implementation is avaliable in our [http://smc.org.in website]. The i18n should be in the SILPA flask framework with a nice templating system. Similarly the interface should have webfonts using [https://github.com/wikimedia/jquery.webfonts jquery.webfonts] library.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Improve  the webfonts &#039;&#039;&#039; :- &lt;br /&gt;
* Currently Silpa provides 36 webfonts. add more fonts to this collection.&lt;br /&gt;
* Rewrote webfonts module to use the features of jquery.webfonts&lt;br /&gt;
* reate a repo as per jquery.webfonts specification&lt;br /&gt;
* Provide a clean api so that other websites can use our webfonts in their websites&lt;br /&gt;
* Document the usage&lt;br /&gt;
* Provide font preview and download options  &lt;br /&gt;
* **This is partly done**. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;More Details&#039;&#039;&#039;&lt;br /&gt;
** [https://github.com/wikimedia/jquery.i18n jquery.i18n]&lt;br /&gt;
** [https://github.com/wikimedia/jquery.ime jquery.ime]&lt;br /&gt;
** [https://github.com/wikimedia/jquery.webfonts jquery.webfonts]&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;: jQuery, css, html5, Python , flask , technical understanding about fonts&lt;br /&gt;
&#039;&#039;&#039;Mentor&#039;&#039;&#039; : Jishnu/Vasudev&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Language filter for diaspora==&lt;br /&gt;
&lt;br /&gt;
Diaspora is a Free Software, federated social networking platform. Diaspora users post in many languages. When people use more than one language in their posts, it is inconvenient for people who don&#039;t understand a language. This task is to tag every post with languages used in the post, ideally detected automatically, but with an option to override it. Once each post has a language tag, people should be able to choose their preferred language and posts in other languages should be hidden by default. Also provide an option to translate posts and comments.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;: Ruby on Rails&lt;br /&gt;
&#039;&#039;&#039;Mentor&#039;&#039;&#039;: Pirate Praveen, Ershad K&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Varnam Based==&lt;br /&gt;
&lt;br /&gt;
Varnam is a cross-platform predictive transliterator for Indian languages. It works mostly like Google&#039;s transliterate, but shows key differences in the way word tokenization is done. It has a learning system built in which allows Varnam to make smart predictions. &lt;br /&gt;
&lt;br /&gt;
There are varnam clients available as [https://addons.mozilla.org/en-US/firefox/addon/varnam-transliteration-base/ Firefox]] &amp;amp; [https://chrome.google.com/webstore/detail/varnam-ime/abcfkeabpcanobhdmcmdabejaamephaf Chrome addon] and an [https://gitorious.org/varnamproject/libvarnam-ibus/source/d939adf50024013902c27310c03ef21a9210cdcb IBus engine].&lt;br /&gt;
&lt;br /&gt;
To try out Varnam, navigate to [http://varnamproject.com/editor[http://varnamproject.com/editor]]. Currently it support Hindi and Malayalam.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Improvements to the REST API===&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Project&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
This includes rewrite of the current implementation in `golang` and add support for WebSockets to improve the input experience. This also&lt;br /&gt;
includes making scripts that would ease embedding input on any webpage. All the changes done will go live on[1]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;: Basic understanding of golang and C&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039;: Advanced&lt;br /&gt;
&#039;&#039;&#039;Mentor&#039;&#039;&#039;: Navaneeth S&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Improve the learning system===&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Project&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
The main goal of this is to improve how varnam tokenizes when learning words. Today, when a word is learned, varnam takes all the possible prefixes into account and learn all of them to improve future suggestions. But sometimes, this is not enough to predict good suggestions. An improvement is suggested which will try to infer the base form of the word under learning.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;: Knowledge in C&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039;: Medium&lt;br /&gt;
&#039;&#039;&#039;Mentor&#039;&#039;&#039;: Navaneeth S&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Word corpus synchronization ===&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Project&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
Create a cross-platform synchronization tool which can upload/download the word corpus from offline IMEs like varnam-ibus[2]. This helps to build the online words corpus easily.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;: Knowledge in C/golang&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039; : Medium&lt;br /&gt;
&#039;&#039;&#039;Mentor&#039;&#039;&#039;: Navaneeth S&lt;br /&gt;
&lt;br /&gt;
* [1]: http://www.varnamproject.com&lt;br /&gt;
* [2]: https://gitorious.org/varnamproject/libvarnam-ibus/&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Adding Braille Keyboard layouts for Indian Languages to m17n Library==&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Project&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
Project is building support for Bharati Braille keyboard layouts in GNU/Linux systemes.  Bharati Braille standard is the official Braille standard in India. A regular QWERTY keyboard is used for data entry. SDF-JKL keys are used for six dots of Braille. This support need to be built as m17n layouts. This will enable visually challenged people who studied braille layouts to use GNU/Linux systems easily with the help of Audio feedback from TTS&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;More Details&#039;&#039;&#039;&lt;br /&gt;
** http://www.acharya.gen.in:8080/disabilities/bh_brl.php&lt;br /&gt;
** http://en.wikipedia.org/wiki/Bharati_Braille&lt;br /&gt;
** http://www.nongnu.org/m17n/&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Mentor&#039;&#039;&#039;: Anivar Aravind&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=Projects with unconfirmed mentors=&lt;br /&gt;
&lt;br /&gt;
==Grandham ==&lt;br /&gt;
&lt;br /&gt;
=== Adding MARC21 import/export feature in Grandham ===&lt;br /&gt;
&lt;br /&gt;
We need a feature in Grandham to import and parse data from MARC21 documents. We should also be able to export existing data in MARC21.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;: Knowledge in Ruby/Ruby on Rails&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039; : High&lt;br /&gt;
&lt;br /&gt;
* [1]: http://dev.grandham.org&lt;br /&gt;
* [2]: https://github.com/smc/grandham&lt;/div&gt;</summary>
		<author><name>Nandaja</name></author>
	</entry>
	<entry>
		<id>https://wiki.smc.org.in/index.php?title=GSoC/2014/Project_ideas&amp;diff=4619</id>
		<title>GSoC/2014/Project ideas</title>
		<link rel="alternate" type="text/html" href="https://wiki.smc.org.in/index.php?title=GSoC/2014/Project_ideas&amp;diff=4619"/>
		<updated>2014-02-25T19:28:10Z</updated>

		<summary type="html">&lt;p&gt;Nandaja: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;center&amp;gt; &lt;br /&gt;
&amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt; &amp;lt;big&amp;gt;&#039;&#039;&#039;Apart from the following ideas , you can propose your own ideas&#039;&#039;&#039;&amp;lt;/big&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Potential Mentors=&lt;br /&gt;
# Santhosh Thottingal (&#039;&#039;&#039;santhosh&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Baiju M (&#039;&#039;&#039;baijum&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Praveen A (&#039;&#039;&#039;j4v4m4n&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Rajeesh K Nambiar (&#039;&#039;&#039;rajeeshknambiar&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Vasudev Kammath (&#039;&#039;&#039;copyninja&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Jishnu Mohan (&#039;&#039;&#039;jishnu7&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Hrishikesh K.B (&#039;&#039;&#039;stultus&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Anivar Aravind (&#039;&#039;&#039;anivar&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Anilkumar K V (&#039;&#039;&#039;anilkumar&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Sajjad Anwar (&#039;&#039;&#039;geohacker&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Deepa V Gopinath (&#039;&#039;&#039;deepagopinath&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# jain Basil  (&#039;&#039;&#039;jainbasil&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Ershad K (&#039;&#039;&#039;ershad&#039;&#039;&#039; on irc.freenode.net&lt;br /&gt;
# Navaneeth (&#039;&#039;&#039;nkn__&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Nishan Naseer (&#039;&#039;&#039;nishan&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
# Nandaja Varma (&#039;&#039;&#039;gem&#039;&#039;&#039; on irc.freenode.net)&lt;br /&gt;
&lt;br /&gt;
=Ideas for Google Summer of Code 2014=&lt;br /&gt;
* Please Read the [http://wiki.smc.org.in/SoC/2014#FAQ FAQ]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
If you want to propose an idea, please do it in [http://lists.smc.org.in/listinfo.cgi/student-projects-smc.org.in student projects mailing list]&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=Projects with confirmed mentors=&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== A spell checker for Indic language that understands inflections ==&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Project&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
SILPA project has a spellchecker written using python with a not so simple algorithm. But still it is not capable of handling inflection and agglutination occurring in Indian languages especially south Indian languages. The dictionary we have for Malayalam spellchecker have about 150000 words. Of course we can expand the dictionary, but that doesn&#039;t have much value since words can be formed in Malayalam or Tamil etc by joining multiple words. In addition to that, words get inflected based on grammar forms(sandhi), plural, gender etc. Hunspell has a system to handle this, but so far nobody succeeded in getting it working for multi level suffix stripping as required for Malayalam. Some times a Malayalam word can be formed by more than 5 words joining together. We will need a word splitting logic or a table taking care of all patterns. The project is to attempt solving this with hunspell. If that is not feasible(hunspell upstream is not active), develop an algorithm and implement it.&lt;br /&gt;
&lt;br /&gt;
Recently Tamil attempted developing a spellchecker using Hunspell with multi level suffix stripping. You can see the result here https://github.com/thamizha/solthiruthi. &lt;br /&gt;
Our attempt should be first to use Hunspell to achieve spellchecking with agglutination and inflection. Probably it will require lot of scripting to generate suffix patterns, we can ask help from existing language communities too. If Hunspell has limitation with multi level suffxes- sometimes Indian languages require more than 5 levels of suffix stripping, we need to document it(bug and documentation) and try to attempt python based solution on top of SILPA framework.&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;[https://savannah.nongnu.org/task/index.php?12558 Savannah Task]&#039;&#039;&#039;&lt;br /&gt;
* &#039;&#039;&#039;Expertise required&#039;&#039;&#039;: Average level understanding of grammar system of at least one Indian language&lt;br /&gt;
* &#039;&#039;&#039;Complexity&#039;&#039;&#039;: Advanced&lt;br /&gt;
* &#039;&#039;&#039;Mentor&#039;&#039;&#039;: Santhosh Thottingal&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Indic rendering support in ConTeXt==&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Project&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
ConTeXt is another TeX macro system similar to LaTeX but much more suitable for design. To find more information about ConTeXt, see the wiki http://wiki.contextgarden.net/Main_Page. ConTeXt MKII  have Indic language rendering support using XeTeX. but MKII is deprecated, and the new MKIV backend doesn&#039;t support Indic rendering yet. The aim of this project is to add support to Inidic rendering to ConTeXt MKIV. XeTeX is using Harfbuzz to do correct Indic rendering.&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;More Details&#039;&#039;&#039;: A partially working patch by Rajeesh for MKIV lua code is available. ConTeXt mkii (deprecated) can work with XeTeX backend for Indic rendering. Here is a sample file:&lt;br /&gt;
 \usemodule[simplefonts]&lt;br /&gt;
 \definefontfeature[malayalam][script=mlym]&lt;br /&gt;
 \setmainfont[Rachana][features=malayalam]&lt;br /&gt;
 \starttext&lt;br /&gt;
 മലയാളം \TeX ഉപയോഗിച്ച് ടൈപ്പ്സെറ്റ് ചെയ്തത്&lt;br /&gt;
 \stoptext&lt;br /&gt;
Generate the output using command&lt;br /&gt;
 texexec --xetex &amp;lt;file.tex&amp;gt;&lt;br /&gt;
* &#039;&#039;&#039;[https://savannah.nongnu.org/task/index.php?12559 Savannah Task]&#039;&#039;&#039;&lt;br /&gt;
* &#039;&#039;&#039;Expertise required&#039;&#039;&#039;: Understanding of the TeX system, experience in either LaTeX or ConTeXt and basic understanding of Indic language rendering. MKIV uses Lua, familiarity with Lua, opentype specifications or Harfbuzz will be added advantage.&lt;br /&gt;
* &#039;&#039;&#039;Complexity&#039;&#039;&#039; : Advanced&lt;br /&gt;
* &#039;&#039;&#039;Mentor&#039;&#039;&#039; : Rajeesh K Nambiar&lt;br /&gt;
&lt;br /&gt;
==Language model and Acoustic model for Malayalam language for speech recognition system in CMU Sphinx==&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Project&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
CMU Sphinx is a large vocabulary, speaker independent speech recognition codebase and suite of tools, which can be used to develop speech recognition system in any language. To develop an automatic speech recognition system in a language, acoustic model and language model has to framed for that particular language.  Acoustic models characterize how sound changes over time. It captures the characteristics of basic recognition units. The language model describes the likelihood, probability, or penalty taken when a sequence or collection of words is seen. It attempts to convey behavior of the language and tries to predict the occurrence of specific word sequences possible in the language. Once these two models are developed, it will be useful to every one doing research in speech processing. For Indian languages Hindi, Tamil, Telugu and Marati, ASR systems have been developed using sphinx engine. In this project work is aimed at developing acoustic model and language model for Malayalam.&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;Background Reading&#039;&#039;&#039;&lt;br /&gt;
** [http://www.cs.cmu.edu/~gopalakr/publications/spdatabases_specom05.pdf &#039;Development of Indian Language Speech Databases for Large Vocabulary Speech Recognition Systems&#039;], Gopalakrishna  Anumanchipalli, Rahul Chitturi, Sachin Joshi, Rohit Kumar, Satinder Pal Singh, R.N.V. Sitaram, S P Kishore&lt;br /&gt;
** [http://www.aclweb.org/anthology/W/W12/W12-5808.pdf &amp;quot;Automatic Pronunciation Evaluation And Mispronunciation Detection Using CMUSphinx&amp;quot;], Ronanki Srikanth, James Salsman&lt;br /&gt;
** http://www.speech.cs.cmu.edu/&lt;br /&gt;
** http://cmusphinx.sourceforge.net/wiki/tutorial&lt;br /&gt;
** [http://www.ijarcsse.com &amp;quot;HTK Based Telugu Speech Recognition&amp;quot;], P. Vijai Bhaskar, AVNIET ,Hyderabad, Prof. Dr. S. Rama Mohan Rao, A.Gopi &lt;br /&gt;
** [http://www.cs.cmu.edu/~araza/Automatic_Speech_Recognition_System_for_Urdu.PDF &amp;quot;Design and  Development of an Automatic Speech Recognition System for Urdu&amp;quot;], Agha Ali Raza,  M.Sc. Thesis, FAST‐National University of Computer and Emerging Sciences &lt;br /&gt;
** [http://www.ccis2k.org/iajit/PDF/vol.6,no.2/11IASRUCSS186.pdf &amp;quot;Investigation Arabic Speech Recognition Using CMU Sphinx System&amp;quot;], Hassan Satori1, 2, Hussein Hiyassat3, Mostafa Harti1, 2, and Noureddine Chenfour&lt;br /&gt;
** [http://www.try.idv.tw/static-resources/homework/pr/PR_Final_Report.pdf &amp;quot;Understanding the CMU Sphinx Speech Recognition System&amp;quot;], Chun-Feng Liao&lt;br /&gt;
* &#039;&#039;&#039;Mentor&#039;&#039;&#039;:  Deepa P. Gopinath&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Silpa based==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Provide REST API for new flask based Silpa, including conversion of templates to this REST API from JSON RPC===&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Project&#039;&#039;&#039;: &lt;br /&gt;
&lt;br /&gt;
Silpa is now relying on JSONRPC. We need to, either completely move to REST API or provide REST API as an additional feature.&lt;br /&gt;
* &#039;&#039;&#039;Expertise required&#039;&#039;&#039;: Python , Flask , Jinja , HTML, Javascript&lt;br /&gt;
* &#039;&#039;&#039;Mentor&#039;&#039;&#039; : Vasudev/Jishnu&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Android SDK for Silpa===&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Project&#039;&#039;&#039;: &lt;br /&gt;
&lt;br /&gt;
Port possible Silpa modules to java and create SDK so that other developers can use this for their apps. Modules like Indic Render, Transliteration, Payyas has really good potential in android because of the fragmentation exists in Android and lack for proper Indic support. This SDK will help developers to support their Indic app in wide range of android devices.&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;Expertise required&#039;&#039;&#039;: Java, Android, Python&lt;br /&gt;
* &#039;&#039;&#039;Mentor&#039;&#039;&#039; : Jishnu/Hrishikesh/Aashik&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Converting indic processing modules currently in SILPA into javascript modules library===&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Project&#039;&#039;&#039;: &lt;br /&gt;
&lt;br /&gt;
Port some of the silpa algorithms to node modules. Several modules, alogorithms in SILPA project is done in python now. But porting them to javascript helps developers. For example, cross language transliteration can be done javascript too if we port the algorithm and transliteration rules. Similarly the approximate search can be ported. A flexibile fuzzy search on the web pages will be possible if we have the algorithm in javascript.&lt;br /&gt;
&lt;br /&gt;
Proposed javascript module pattern is https://github.com/umdjs/umd&lt;br /&gt;
&lt;br /&gt;
Student proposals should have a list of alogorithms planning to port, planned demo applications, planned documentation details, and publishing details(Example: npm registry)&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;Expertise required&#039;&#039;&#039;: javascript, python&lt;br /&gt;
* &#039;&#039;&#039;Mentor&#039;&#039;&#039; : Jishnu&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===  Improving cross language transliteration system.  ===&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Project&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
Currently only Kannada and Malayalam are perfect rest all are first converted to Malayalam then to English due to lack of language internal. Also currently for English to Indic we use CMUDict so transliteration capability is limited to words in CMUDict only probably we could develop better method for English to Indic transliteration&lt;br /&gt;
&lt;br /&gt;
CLDR has transliteration data for Indic languages. We can explore it and see the feasibility. For an intermediate representation of the scripts either IPA can be used or ISO 15919 standard can be used. All these must be supplemented with exception rules and special case handling to achieve more perfect result.&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;Expertise required&#039;&#039;&#039;:python&lt;br /&gt;
* &#039;&#039;&#039;Mentor&#039;&#039;&#039; : Vasudev/Jishnu&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Internationalize SILPA project with Wikimedia jquery projects ,  Improve  the webfonts module in Silpa using jquery.webfonts and provide more Indic and complex fonts as part of it ===&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Project&#039;&#039;&#039;: &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Internationalize SILPA&#039;&#039;&#039; :-  &lt;br /&gt;
SILPA project has many Indic language applications, but as of now, if somebody want to input in Indian languages, there is no built in tool in it. Similarly, the application is not internationalized. Both of these can be achieved by using the [//github.com/wikimedia/jquery.ime jquery.ime] and [//github.com/wikimedia/jquery.ime jquery.i18n] libraries from Wikimedia. A sample implementation is avaliable in our [http://smc.org.in website]. The i18n should be in the SILPA flask framework with a nice templating system. Similarly the interface should have webfonts using [https://github.com/wikimedia/jquery.webfonts jquery.webfonts] library.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Improve  the webfonts &#039;&#039;&#039; :- &lt;br /&gt;
* Currently Silpa provides 36 webfonts. add more fonts to this collection.&lt;br /&gt;
* Rewrote webfonts module to use the features of jquery.webfonts&lt;br /&gt;
* reate a repo as per jquery.webfonts specification&lt;br /&gt;
* Provide a clean api so that other websites can use our webfonts in their websites&lt;br /&gt;
* Document the usage&lt;br /&gt;
* Provide font preview and download options  &lt;br /&gt;
* **This is partly done**. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;More Details&#039;&#039;&#039;&lt;br /&gt;
** [https://github.com/wikimedia/jquery.i18n jquery.i18n]&lt;br /&gt;
** [https://github.com/wikimedia/jquery.ime jquery.ime]&lt;br /&gt;
** [https://github.com/wikimedia/jquery.webfonts jquery.webfonts]&lt;br /&gt;
* &#039;&#039;&#039;Expertise required&#039;&#039;&#039;: jQuery, css, html5, Python , flask , technical understanding about fonts&lt;br /&gt;
* &#039;&#039;&#039;Mentor&#039;&#039;&#039; : Jishnu/Vasudev&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Language filter for diaspora==&lt;br /&gt;
&lt;br /&gt;
Diaspora is a Free Software, federated social networking platform. Diaspora users post in many languages. When people use more than one language in their posts, it is inconvenient for people who don&#039;t understand a language. This task is to tag every post with languages used in the post, ideally detected automatically, but with an option to override it. Once each post has a language tag, people should be able to choose their preferred language and posts in other languages should be hidden by default. Also provide an option to translate posts and comments.&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;Expertise required&#039;&#039;&#039;: Ruby on Rails&lt;br /&gt;
* &#039;&#039;&#039;Mentor&#039;&#039;&#039;: Pirate Praveen, Ershad K&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Varnam Based==&lt;br /&gt;
&lt;br /&gt;
Varnam is a cross-platform predictive transliterator for Indian languages. It works mostly like Google&#039;s transliterate, but shows key differences in the way word tokenization is done. It has a learning system built in which allows Varnam to make smart predictions. &lt;br /&gt;
&lt;br /&gt;
There are varnam clients available as [https://addons.mozilla.org/en-US/firefox/addon/varnam-transliteration-base/ Firefox]] &amp;amp; [https://chrome.google.com/webstore/detail/varnam-ime/abcfkeabpcanobhdmcmdabejaamephaf Chrome addon] and an [https://gitorious.org/varnamproject/libvarnam-ibus/source/d939adf50024013902c27310c03ef21a9210cdcb IBus engine].&lt;br /&gt;
&lt;br /&gt;
To try out Varnam, navigate to [http://varnamproject.com/editor[http://varnamproject.com/editor]]. Currently it support Hindi and Malayalam.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Improvements to the REST API===&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Project&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
This includes rewrite of the current implementation in `golang` and add support for WebSockets to improve the input experience. This also&lt;br /&gt;
includes making scripts that would ease embedding input on any webpage. All the changes done will go live on[1]&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;Expertise required&#039;&#039;&#039;: Basic understanding of golang and C&lt;br /&gt;
* &#039;&#039;&#039;Complexity&#039;&#039;&#039;: Advanced&lt;br /&gt;
* &#039;&#039;&#039;Mentor&#039;&#039;&#039;: Navaneeth S&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Improve the learning system===&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Project&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
The main goal of this is to improve how varnam tokenizes when learning words. Today, when a word is learned, varnam takes all the possible prefixes into account and learn all of them to improve future suggestions. But sometimes, this is not enough to predict good suggestions. An improvement is suggested which will try to infer the base form of the word under learning.&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;Expertise required&#039;&#039;&#039;: Knowledge in C&lt;br /&gt;
* &#039;&#039;&#039;Complexity&#039;&#039;&#039;: Medium&lt;br /&gt;
* &#039;&#039;&#039;Mentor&#039;&#039;&#039;: Navaneeth S&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Word corpus synchronization ===&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Project&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
Create a cross-platform synchronization tool which can upload/download the word corpus from offline IMEs like varnam-ibus[2]. This helps to build the online words corpus easily.&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;Expertise required&#039;&#039;&#039;: Knowledge in C/golang&lt;br /&gt;
* &#039;&#039;&#039;Complexity&#039;&#039;&#039; : Medium&lt;br /&gt;
* &#039;&#039;&#039;Mentor&#039;&#039;&#039;: Navaneeth S&lt;br /&gt;
&lt;br /&gt;
* [1]: http://www.varnamproject.com&lt;br /&gt;
* [2]: https://gitorious.org/varnamproject/libvarnam-ibus/&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Adding Braille Keyboard layouts for Indian Languages to m17n Library==&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Project&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
Project is building support for Bharati Braille keyboard layouts in GNU/Linux systemes.  Bharati Braille standard is the official Braille standard in India. A regular QWERTY keyboard is used for data entry. SDF-JKL keys are used for six dots of Braille. This support need to be built as m17n layouts. This will enable visually challenged people who studied braille layouts to use GNU/Linux systems easily with the help of Audio feedback from TTS&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;More Details&#039;&#039;&#039;&lt;br /&gt;
** http://www.acharya.gen.in:8080/disabilities/bh_brl.php&lt;br /&gt;
** http://en.wikipedia.org/wiki/Bharati_Braille&lt;br /&gt;
** http://www.nongnu.org/m17n/&lt;br /&gt;
* &#039;&#039;&#039;Mentor&#039;&#039;&#039;: Anivar Aravind&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=Projects with unconfirmed mentors=&lt;br /&gt;
&lt;br /&gt;
==Grandham ==&lt;br /&gt;
&lt;br /&gt;
=== Adding MARC21 import/export feature in Grandham ===&lt;br /&gt;
&lt;br /&gt;
We need a feature in Grandham to import and parse data from MARC21 documents. We should also be able to export existing data in MARC21.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Expertise required&#039;&#039;&#039;: Knowledge in Ruby/Ruby on Rails&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Complexity&#039;&#039;&#039; : High&lt;br /&gt;
&lt;br /&gt;
* [1]: http://dev.grandham.org&lt;br /&gt;
* [2]: https://github.com/smc/grandham&lt;/div&gt;</summary>
		<author><name>Nandaja</name></author>
	</entry>
	<entry>
		<id>https://wiki.smc.org.in/index.php?title=Automated_rendering_testing&amp;diff=4599</id>
		<title>Automated rendering testing</title>
		<link rel="alternate" type="text/html" href="https://wiki.smc.org.in/index.php?title=Automated_rendering_testing&amp;diff=4599"/>
		<updated>2014-02-21T19:31:24Z</updated>

		<summary type="html">&lt;p&gt;Nandaja: Created page with &amp;quot;A framework to test the correctness of output by rendering engines.  Files required to test rendering using this framework:  (Assuming the user has harfbuzz installed. If not...&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;A framework to test the correctness of output by rendering engines.&lt;br /&gt;
&lt;br /&gt;
Files required to test rendering using this framework:&lt;br /&gt;
&lt;br /&gt;
(Assuming the user has harfbuzz installed. If not build it from: https://github.com/behdad/harfbuzz)&lt;br /&gt;
&lt;br /&gt;
Files required to test rendering using this framework:&lt;br /&gt;
&lt;br /&gt;
Test cases file Reference file for a specific font File with rendering outputs by engines Font file in ttf format Create a test cases file that consists of all the words that you wish to test the rendering for. Here is a sample test cases file created for Malayalam lamguage: https://github.com/nandajavarma/Automated-Rendering-Testing/blob/master/ml-test-data/ml-test-cases.txt&lt;br /&gt;
&lt;br /&gt;
Along with this create the reference file that contains the correct glyph names of the words in the test cases file in a particular font. The framework assumes that the glyph names are in the following format: [glyph_name1,glyph_name2,glyph_name3,..,glyph_nameN]&lt;br /&gt;
&lt;br /&gt;
Now if the word has more than one correct rendering, provide the next correct one along with this seperated by a semi colon. For eg: [glyph_name1,glyph_name2,glyph_name3,..,glyph_nameN];[glyph_name1,glyph_name2...,glyph_nameN];.. Here is the reference file for the above mentioned test cases file in the font Rachana: https://github.com/nandajavarma/Automated-Rendering-Testing/blob/master/ml-test-data/lohit-ml-test-data/lohit-glyph.txt&lt;br /&gt;
&lt;br /&gt;
Now the file with rendering outputs. If the engine you are testing for is Harfbuzz, you can create this file using the following command:&lt;br /&gt;
&lt;br /&gt;
cat ml-test-data.txt | hb-shape /path/to/Font.ttf &amp;gt; output.txt&lt;br /&gt;
&lt;br /&gt;
If that is not the case, you will have to create it for the font you wish and the rendering of each word must be in the form: [glyph_name1|glyph_name2|..] Here is the harfbuzz rendering of the above mentioned test cases file in font Rachana: https://github.com/nandajavarma/Automated-Rendering-Testing/blob/master/ml-test-data/lohit-ml-test-data/hb_lohit_rendering.txt&lt;br /&gt;
&lt;br /&gt;
Now that you have all the necessary files, write these data to an .ini file for the main script to read. Here is the structure: [main] Reference-file: Rendered-output: Font-file: Test-cases-file: Output-file: Shaping-engine: Out of these, Reference-file and Rendered-output are mandatory. Comment out all the other lines, if a result file is not necessary. If the shaping-engine is harfbuzz, then the output file will also have harfbuzz rendered image of every word. These images will be stored inside a directory names &#039;hb_images&#039;. Here is a sample: https://github.com/nandajavarma/Automated-Rendering-Testing/blob/master/ml-test-data/lohit-ml-test-data/Lohit-ml.ini&lt;br /&gt;
&lt;br /&gt;
Now to test, run the script rendering_test.py passing the name of the .ini file as a parameter. For example:&lt;br /&gt;
&lt;br /&gt;
./rendering_test.py Lohit-ml.ini&lt;br /&gt;
&lt;br /&gt;
(In the repo one can find samples in four Malayalam fonts and one Devanagari font. Test cases file for Malayalam being https://github.com/nandajavarma/Automated-Rendering-Testing/blob/master/ml-test-data/ml-test-cases.txt and that for Devanagari being https://github.com/nandajavarma/Automated-Rendering-Testing/blob/master/devanagari-test-data/devanagari_test_cases.txt.)&lt;/div&gt;</summary>
		<author><name>Nandaja</name></author>
	</entry>
	<entry>
		<id>https://wiki.smc.org.in/index.php?title=%E0%B4%B8%E0%B5%8D%E0%B4%B5%E0%B4%A4%E0%B4%A8%E0%B5%8D%E0%B4%A4%E0%B5%8D%E0%B4%B0%E0%B4%AE%E0%B4%B2%E0%B4%AF%E0%B4%BE%E0%B4%B3%E0%B4%82%E0%B4%95%E0%B4%AE%E0%B5%8D%E0%B4%AA%E0%B5%8D%E0%B4%AF%E0%B5%82%E0%B4%9F%E0%B5%8D%E0%B4%9F%E0%B4%BF%E0%B4%99%E0%B5%8D%E0%B4%99%E0%B4%BF%E0%B4%A8%E0%B5%8D%E0%B4%B1%E0%B5%86_%E0%B4%92%E0%B4%B0%E0%B5%81_%E0%B4%B5%E0%B5%8D%E0%B4%AF%E0%B4%BE%E0%B4%B4%E0%B4%B5%E0%B4%9F%E0%B5%8D%E0%B4%9F%E0%B4%82/SMC_Camp/%E0%B4%AA%E0%B4%BE%E0%B4%B2%E0%B4%95%E0%B5%8D%E0%B4%95%E0%B4%BE%E0%B4%9F%E0%B5%8D&amp;diff=4437</id>
		<title>സ്വതന്ത്രമലയാളംകമ്പ്യൂട്ടിങ്ങിന്റെ ഒരു വ്യാഴവട്ടം/SMC Camp/പാലക്കാട്</title>
		<link rel="alternate" type="text/html" href="https://wiki.smc.org.in/index.php?title=%E0%B4%B8%E0%B5%8D%E0%B4%B5%E0%B4%A4%E0%B4%A8%E0%B5%8D%E0%B4%A4%E0%B5%8D%E0%B4%B0%E0%B4%AE%E0%B4%B2%E0%B4%AF%E0%B4%BE%E0%B4%B3%E0%B4%82%E0%B4%95%E0%B4%AE%E0%B5%8D%E0%B4%AA%E0%B5%8D%E0%B4%AF%E0%B5%82%E0%B4%9F%E0%B5%8D%E0%B4%9F%E0%B4%BF%E0%B4%99%E0%B5%8D%E0%B4%99%E0%B4%BF%E0%B4%A8%E0%B5%8D%E0%B4%B1%E0%B5%86_%E0%B4%92%E0%B4%B0%E0%B5%81_%E0%B4%B5%E0%B5%8D%E0%B4%AF%E0%B4%BE%E0%B4%B4%E0%B4%B5%E0%B4%9F%E0%B5%8D%E0%B4%9F%E0%B4%82/SMC_Camp/%E0%B4%AA%E0%B4%BE%E0%B4%B2%E0%B4%95%E0%B5%8D%E0%B4%95%E0%B4%BE%E0%B4%9F%E0%B5%8D&amp;diff=4437"/>
		<updated>2013-09-26T16:39:20Z</updated>

		<summary type="html">&lt;p&gt;Nandaja: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;പാലക്കാട് ജില്ലയില്‍ ഈ ആഴ്ചയും അടുത്തതുമായി നടക്കാന്‍ സാധ്യതയുള്ളതും ഉറപ്പായതുമായ് ക്യാമ്പുകള്‍.&lt;br /&gt;
&lt;br /&gt;
== എന്‍. എസ്സ്. എസ്സ്. എഞ്ചിനീയറിങ് കോളേജ് ==&lt;br /&gt;
&lt;br /&gt;
*തീയതി: 28/09/13&lt;br /&gt;
*സമയം: രാവിലെ 10 - 12 &lt;br /&gt;
*നയിക്കുന്നവര്‍: ഇര്‍ഷാദ്, അര്‍ജുന്‍, അല്‍ഫാസ്&lt;br /&gt;
&lt;br /&gt;
== പ്രൈം കോളേജ് ഫോര്‍ വിമന്‍ ==&lt;br /&gt;
&lt;br /&gt;
*തീയതി: ഒക്ടോബര്‍ 3 (തീര്‍ച്ചയില്ല)&lt;br /&gt;
*സമയം: &lt;br /&gt;
*നയിക്കുന്നവര്‍:&lt;br /&gt;
&lt;br /&gt;
== ശ്രീകൃഷ്ണപുരം ഗവ. എഞ്ചിനീയറിങ് കോളേജ് ==&lt;br /&gt;
&lt;br /&gt;
*തീയതി: ഒക്ടോബര്‍ 7 അല്ലെങ്കില്‍ 8 (തീര്‍ച്ചയില്ല)&lt;br /&gt;
*സമയം: &lt;br /&gt;
*നയിക്കുന്നവര്‍:&lt;br /&gt;
&lt;br /&gt;
== പി.എം.ജി ഹയര്‍ സെക്കണ്ടറി സ്കൂള്‍ ==&lt;br /&gt;
&lt;br /&gt;
*തീയതി: ഒക്ടോബര്‍ 3 (തീര്‍ച്ചയില്ല)&lt;br /&gt;
*സമയം:&lt;br /&gt;
*നയിക്കുന്നവര്‍:&lt;/div&gt;</summary>
		<author><name>Nandaja</name></author>
	</entry>
	<entry>
		<id>https://wiki.smc.org.in/index.php?title=%E0%B4%B8%E0%B5%8D%E0%B4%B5%E0%B4%A4%E0%B4%A8%E0%B5%8D%E0%B4%A4%E0%B5%8D%E0%B4%B0%E0%B4%AE%E0%B4%B2%E0%B4%AF%E0%B4%BE%E0%B4%B3%E0%B4%82%E0%B4%95%E0%B4%AE%E0%B5%8D%E0%B4%AA%E0%B5%8D%E0%B4%AF%E0%B5%82%E0%B4%9F%E0%B5%8D%E0%B4%9F%E0%B4%BF%E0%B4%99%E0%B5%8D%E0%B4%99%E0%B4%BF%E0%B4%A8%E0%B5%8D%E0%B4%B1%E0%B5%86_%E0%B4%92%E0%B4%B0%E0%B5%81_%E0%B4%B5%E0%B5%8D%E0%B4%AF%E0%B4%BE%E0%B4%B4%E0%B4%B5%E0%B4%9F%E0%B5%8D%E0%B4%9F%E0%B4%82/SMC_Camp/%E0%B4%AA%E0%B4%BE%E0%B4%B2%E0%B4%95%E0%B5%8D%E0%B4%95%E0%B4%BE%E0%B4%9F%E0%B5%8D&amp;diff=4436</id>
		<title>സ്വതന്ത്രമലയാളംകമ്പ്യൂട്ടിങ്ങിന്റെ ഒരു വ്യാഴവട്ടം/SMC Camp/പാലക്കാട്</title>
		<link rel="alternate" type="text/html" href="https://wiki.smc.org.in/index.php?title=%E0%B4%B8%E0%B5%8D%E0%B4%B5%E0%B4%A4%E0%B4%A8%E0%B5%8D%E0%B4%A4%E0%B5%8D%E0%B4%B0%E0%B4%AE%E0%B4%B2%E0%B4%AF%E0%B4%BE%E0%B4%B3%E0%B4%82%E0%B4%95%E0%B4%AE%E0%B5%8D%E0%B4%AA%E0%B5%8D%E0%B4%AF%E0%B5%82%E0%B4%9F%E0%B5%8D%E0%B4%9F%E0%B4%BF%E0%B4%99%E0%B5%8D%E0%B4%99%E0%B4%BF%E0%B4%A8%E0%B5%8D%E0%B4%B1%E0%B5%86_%E0%B4%92%E0%B4%B0%E0%B5%81_%E0%B4%B5%E0%B5%8D%E0%B4%AF%E0%B4%BE%E0%B4%B4%E0%B4%B5%E0%B4%9F%E0%B5%8D%E0%B4%9F%E0%B4%82/SMC_Camp/%E0%B4%AA%E0%B4%BE%E0%B4%B2%E0%B4%95%E0%B5%8D%E0%B4%95%E0%B4%BE%E0%B4%9F%E0%B5%8D&amp;diff=4436"/>
		<updated>2013-09-26T16:37:54Z</updated>

		<summary type="html">&lt;p&gt;Nandaja: Created page with &amp;quot;പാലക്കാട് ജില്ലയില്‍ ഈ ആഴ്ചയും അടുത്തതുമായി നടക്കാന്‍ സാധ്യതയു...&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;പാലക്കാട് ജില്ലയില്‍ ഈ ആഴ്ചയും അടുത്തതുമായി നടക്കാന്‍ സാധ്യതയുള്ളതും ഉറപ്പായതുമായ് ക്യാമ്പുകള്‍.&lt;br /&gt;
&lt;br /&gt;
== എന്‍. എസ്സ്. എസ്സ്. എഞ്ചിനീയറിങ് കോളേജ് ==&lt;br /&gt;
&lt;br /&gt;
തീയതി: 28/09/13&lt;br /&gt;
സമയം: രാവിലെ 10 - 12 &lt;br /&gt;
നയിക്കുന്നവര്‍: ഇര്‍ഷാദ്, അര്‍ജുന്‍, അല്‍ഫാസ്&lt;br /&gt;
&lt;br /&gt;
== പ്രൈം കോളേജ് ഫോര്‍ വിമന്‍ ==&lt;br /&gt;
&lt;br /&gt;
തീയതി: ഒക്ടോബര്‍ 3 (തീര്‍ച്ചയില്ല)&lt;br /&gt;
സമയം: &lt;br /&gt;
നയിക്കുന്നവര്‍:&lt;br /&gt;
&lt;br /&gt;
== ശ്രീകൃഷ്ണപുരം ഗവ. എഞ്ചിനീയറിങ് കോളേജ് ==&lt;br /&gt;
&lt;br /&gt;
തീയതി: ഒക്ടോബര്‍ 7 അല്ലെങ്കില്‍ 8 (തീര്‍ച്ചയില്ല)&lt;br /&gt;
സമയം: &lt;br /&gt;
നയിക്കുന്നവര്‍:&lt;br /&gt;
&lt;br /&gt;
== പി.എം.ജി ഹയര്‍ സെക്കണ്ടറി സ്കൂള്‍ ==&lt;br /&gt;
&lt;br /&gt;
തീയതി: ഒക്ടോബര്‍ 3 (തീര്‍ച്ചയില്ല)&lt;br /&gt;
സമയം:&lt;br /&gt;
നയിക്കുന്നവര്‍:&lt;/div&gt;</summary>
		<author><name>Nandaja</name></author>
	</entry>
	<entry>
		<id>https://wiki.smc.org.in/index.php?title=%E0%B4%B8%E0%B5%8D%E0%B4%B5%E0%B4%A4%E0%B4%A8%E0%B5%8D%E0%B4%A4%E0%B5%8D%E0%B4%B0%E0%B4%AE%E0%B4%B2%E0%B4%AF%E0%B4%BE%E0%B4%B3%E0%B4%82%E0%B4%95%E0%B4%AE%E0%B5%8D%E0%B4%AA%E0%B5%8D%E0%B4%AF%E0%B5%82%E0%B4%9F%E0%B5%8D%E0%B4%9F%E0%B4%BF%E0%B4%99%E0%B5%8D%E0%B4%99%E0%B4%BF%E0%B4%A8%E0%B5%8D%E0%B4%B1%E0%B5%86_%E0%B4%92%E0%B4%B0%E0%B5%81_%E0%B4%B5%E0%B5%8D%E0%B4%AF%E0%B4%BE%E0%B4%B4%E0%B4%B5%E0%B4%9F%E0%B5%8D%E0%B4%9F%E0%B4%82/en&amp;diff=4393</id>
		<title>സ്വതന്ത്രമലയാളംകമ്പ്യൂട്ടിങ്ങിന്റെ ഒരു വ്യാഴവട്ടം/en</title>
		<link rel="alternate" type="text/html" href="https://wiki.smc.org.in/index.php?title=%E0%B4%B8%E0%B5%8D%E0%B4%B5%E0%B4%A4%E0%B4%A8%E0%B5%8D%E0%B4%A4%E0%B5%8D%E0%B4%B0%E0%B4%AE%E0%B4%B2%E0%B4%AF%E0%B4%BE%E0%B4%B3%E0%B4%82%E0%B4%95%E0%B4%AE%E0%B5%8D%E0%B4%AA%E0%B5%8D%E0%B4%AF%E0%B5%82%E0%B4%9F%E0%B5%8D%E0%B4%9F%E0%B4%BF%E0%B4%99%E0%B5%8D%E0%B4%99%E0%B4%BF%E0%B4%A8%E0%B5%8D%E0%B4%B1%E0%B5%86_%E0%B4%92%E0%B4%B0%E0%B5%81_%E0%B4%B5%E0%B5%8D%E0%B4%AF%E0%B4%BE%E0%B4%B4%E0%B4%B5%E0%B4%9F%E0%B5%8D%E0%B4%9F%E0%B4%82/en&amp;diff=4393"/>
		<updated>2013-09-17T08:18:30Z</updated>

		<summary type="html">&lt;p&gt;Nandaja: /* Programs */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[File:Smc-logo.png|thumb|]]&lt;br /&gt;
Twelfth anniversary programs of Swathanthra Malayalam Computing will take palce in Thrissur, Sahithya Academy Hall on 14th and 15th of October with wide variety of programs.&lt;br /&gt;
&lt;br /&gt;
== Discussions ==&lt;br /&gt;
* [[വാര്‍ഷികപൊതുപരിപാടി_2013/കൂടിയാലോചനകള്‍/ഐസാറ്റ്_ഓഗസ്റ്റ്29|Ernakulam ISAT - 29th August, Thursday]]&lt;br /&gt;
* [[വാര്‍ഷികപൊതുപരിപാടി_2013/കൂടിയാലോചനകള്‍/പിജി_സെന്റര്‍_ഓഗസ്റ്റ്28|Thrissur PG center - August 28, Wednesday]]&lt;br /&gt;
* [[വാര്‍ഷികപൊതുപരിപാടി_2013/IRC_25-08-2013|IRC Meeting - August 25, Sunday]]&lt;br /&gt;
&lt;br /&gt;
== Publicity programs ==&lt;br /&gt;
To introduce SMC, at least one program is to be organized in every district with engineering colleges as venues. &lt;br /&gt;
* [[വാര്‍ഷികപൊതുപരിപാടി_2013/SMC_Camp|SMC camps]]&lt;br /&gt;
&lt;br /&gt;
== Social media ==&lt;br /&gt;
&lt;br /&gt;
== Programs ==&lt;br /&gt;
[[വാര്‍ഷികപൊതുപരിപാടി 2013/സാങ്കേതികപ്രദര്‍ശനം/en|Technical exhibitions]]&lt;br /&gt;
[[വാര്‍ഷികപൊതുപരിപാടി 2013/കാര്യപരിപാടി/വിക്കിസംഗമം|Wiki meetup]]&lt;br /&gt;
&lt;br /&gt;
===Day 1===&lt;br /&gt;
SMC general body meeting. Discussing about the future plans of SMC.&lt;br /&gt;
&lt;br /&gt;
===Day 2===&lt;br /&gt;
Inauguration 9 AM&lt;br /&gt;
&lt;br /&gt;
Computer &amp;quot;Harisree&amp;quot;&lt;br /&gt;
&lt;br /&gt;
* Session 1 History of Malayalam computing&lt;br /&gt;
* Session 2 Introducing main tools&lt;br /&gt;
Scribus&lt;br /&gt;
&lt;br /&gt;
C-DAC&lt;br /&gt;
&lt;br /&gt;
Parallel session: panel discussion.&lt;br /&gt;
&lt;br /&gt;
===Day 3===&lt;br /&gt;
&lt;br /&gt;
Presenting GSoC projects 9 AM&lt;/div&gt;</summary>
		<author><name>Nandaja</name></author>
	</entry>
	<entry>
		<id>https://wiki.smc.org.in/index.php?title=%E0%B4%B8%E0%B5%8D%E0%B4%B5%E0%B4%A4%E0%B4%A8%E0%B5%8D%E0%B4%A4%E0%B5%8D%E0%B4%B0%E0%B4%AE%E0%B4%B2%E0%B4%AF%E0%B4%BE%E0%B4%B3%E0%B4%82%E0%B4%95%E0%B4%AE%E0%B5%8D%E0%B4%AA%E0%B5%8D%E0%B4%AF%E0%B5%82%E0%B4%9F%E0%B5%8D%E0%B4%9F%E0%B4%BF%E0%B4%99%E0%B5%8D%E0%B4%99%E0%B4%BF%E0%B4%A8%E0%B5%8D%E0%B4%B1%E0%B5%86_%E0%B4%92%E0%B4%B0%E0%B5%81_%E0%B4%B5%E0%B5%8D%E0%B4%AF%E0%B4%BE%E0%B4%B4%E0%B4%B5%E0%B4%9F%E0%B5%8D%E0%B4%9F%E0%B4%82/en&amp;diff=4392</id>
		<title>സ്വതന്ത്രമലയാളംകമ്പ്യൂട്ടിങ്ങിന്റെ ഒരു വ്യാഴവട്ടം/en</title>
		<link rel="alternate" type="text/html" href="https://wiki.smc.org.in/index.php?title=%E0%B4%B8%E0%B5%8D%E0%B4%B5%E0%B4%A4%E0%B4%A8%E0%B5%8D%E0%B4%A4%E0%B5%8D%E0%B4%B0%E0%B4%AE%E0%B4%B2%E0%B4%AF%E0%B4%BE%E0%B4%B3%E0%B4%82%E0%B4%95%E0%B4%AE%E0%B5%8D%E0%B4%AA%E0%B5%8D%E0%B4%AF%E0%B5%82%E0%B4%9F%E0%B5%8D%E0%B4%9F%E0%B4%BF%E0%B4%99%E0%B5%8D%E0%B4%99%E0%B4%BF%E0%B4%A8%E0%B5%8D%E0%B4%B1%E0%B5%86_%E0%B4%92%E0%B4%B0%E0%B5%81_%E0%B4%B5%E0%B5%8D%E0%B4%AF%E0%B4%BE%E0%B4%B4%E0%B4%B5%E0%B4%9F%E0%B5%8D%E0%B4%9F%E0%B4%82/en&amp;diff=4392"/>
		<updated>2013-09-17T08:14:27Z</updated>

		<summary type="html">&lt;p&gt;Nandaja: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[File:Smc-logo.png|thumb|]]&lt;br /&gt;
Twelfth anniversary programs of Swathanthra Malayalam Computing will take palce in Thrissur, Sahithya Academy Hall on 14th and 15th of October with wide variety of programs.&lt;br /&gt;
&lt;br /&gt;
== Discussions ==&lt;br /&gt;
* [[വാര്‍ഷികപൊതുപരിപാടി_2013/കൂടിയാലോചനകള്‍/ഐസാറ്റ്_ഓഗസ്റ്റ്29|Ernakulam ISAT - 29th August, Thursday]]&lt;br /&gt;
* [[വാര്‍ഷികപൊതുപരിപാടി_2013/കൂടിയാലോചനകള്‍/പിജി_സെന്റര്‍_ഓഗസ്റ്റ്28|Thrissur PG center - August 28, Wednesday]]&lt;br /&gt;
* [[വാര്‍ഷികപൊതുപരിപാടി_2013/IRC_25-08-2013|IRC Meeting - August 25, Sunday]]&lt;br /&gt;
&lt;br /&gt;
== Publicity programs ==&lt;br /&gt;
To introduce SMC, at least one program is to be organized in every district with engineering colleges as venues. &lt;br /&gt;
* [[വാര്‍ഷികപൊതുപരിപാടി_2013/SMC_Camp|SMC camps]]&lt;br /&gt;
&lt;br /&gt;
== Social media ==&lt;br /&gt;
&lt;br /&gt;
== Programs ==&lt;br /&gt;
[[വാര്‍ഷികപൊതുപരിപാടി 2013/സാങ്കേതികപ്രദര്‍ശനം/en|Technical exhibitions]]&lt;br /&gt;
[[വാര്‍ഷികപൊതുപരിപാടി 2013/കാര്യപരിപാടി/വിക്കിസംഗമം|Wiki meetup]]&lt;br /&gt;
&lt;br /&gt;
===Day 1===&lt;br /&gt;
&lt;br /&gt;
===Day 2===&lt;br /&gt;
Inauguration 9 AM&lt;br /&gt;
&lt;br /&gt;
Computer &amp;quot;Harisree&amp;quot;&lt;br /&gt;
&lt;br /&gt;
* Session 1 History of Malayalam computing&lt;br /&gt;
* Session 2 Introducing main tools&lt;br /&gt;
Scribus&lt;br /&gt;
&lt;br /&gt;
C-DAC&lt;br /&gt;
&lt;br /&gt;
Parallel session: panel discussion.&lt;br /&gt;
&lt;br /&gt;
===Day 3===&lt;br /&gt;
&lt;br /&gt;
Presenting GSoC projects 9 AM&lt;/div&gt;</summary>
		<author><name>Nandaja</name></author>
	</entry>
	<entry>
		<id>https://wiki.smc.org.in/index.php?title=%E0%B4%B5%E0%B4%BE%E0%B4%B0%E0%B5%8D%E2%80%8D%E0%B4%B7%E0%B4%BF%E0%B4%95%E0%B4%AA%E0%B5%8A%E0%B4%A4%E0%B5%81%E0%B4%AA%E0%B4%B0%E0%B4%BF%E0%B4%AA%E0%B4%BE%E0%B4%9F%E0%B4%BF_2013/%E0%B4%B8%E0%B4%BE%E0%B4%99%E0%B5%8D%E0%B4%95%E0%B5%87%E0%B4%A4%E0%B4%BF%E0%B4%95%E0%B4%AA%E0%B5%8D%E0%B4%B0%E0%B4%A6%E0%B4%B0%E0%B5%8D%E2%80%8D%E0%B4%B6%E0%B4%A8%E0%B4%82/en&amp;diff=4391</id>
		<title>വാര്‍ഷികപൊതുപരിപാടി 2013/സാങ്കേതികപ്രദര്‍ശനം/en</title>
		<link rel="alternate" type="text/html" href="https://wiki.smc.org.in/index.php?title=%E0%B4%B5%E0%B4%BE%E0%B4%B0%E0%B5%8D%E2%80%8D%E0%B4%B7%E0%B4%BF%E0%B4%95%E0%B4%AA%E0%B5%8A%E0%B4%A4%E0%B5%81%E0%B4%AA%E0%B4%B0%E0%B4%BF%E0%B4%AA%E0%B4%BE%E0%B4%9F%E0%B4%BF_2013/%E0%B4%B8%E0%B4%BE%E0%B4%99%E0%B5%8D%E0%B4%95%E0%B5%87%E0%B4%A4%E0%B4%BF%E0%B4%95%E0%B4%AA%E0%B5%8D%E0%B4%B0%E0%B4%A6%E0%B4%B0%E0%B5%8D%E2%80%8D%E0%B4%B6%E0%B4%A8%E0%B4%82/en&amp;diff=4391"/>
		<updated>2013-09-17T08:14:00Z</updated>

		<summary type="html">&lt;p&gt;Nandaja: Redirected page to സ്വതന്ത്രമലയാളംകമ്പ്യൂട്ടിങ്ങിന്റെ ഒരു വ്യാഴവട്ടം/സാങ്കേതികപ്രദര്‍ശനം/en&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;#Redirect [[സ്വതന്ത്രമലയാളംകമ്പ്യൂട്ടിങ്ങിന്റെ ഒരു വ്യാഴവട്ടം/സാങ്കേതികപ്രദര്‍ശനം/en]]&lt;/div&gt;</summary>
		<author><name>Nandaja</name></author>
	</entry>
	<entry>
		<id>https://wiki.smc.org.in/index.php?title=%E0%B4%B8%E0%B5%8D%E0%B4%B5%E0%B4%A4%E0%B4%A8%E0%B5%8D%E0%B4%A4%E0%B5%8D%E0%B4%B0%E0%B4%AE%E0%B4%B2%E0%B4%AF%E0%B4%BE%E0%B4%B3%E0%B4%82%E0%B4%95%E0%B4%AE%E0%B5%8D%E0%B4%AA%E0%B5%8D%E0%B4%AF%E0%B5%82%E0%B4%9F%E0%B5%8D%E0%B4%9F%E0%B4%BF%E0%B4%99%E0%B5%8D%E0%B4%99%E0%B4%BF%E0%B4%A8%E0%B5%8D%E0%B4%B1%E0%B5%86_%E0%B4%92%E0%B4%B0%E0%B5%81_%E0%B4%B5%E0%B5%8D%E0%B4%AF%E0%B4%BE%E0%B4%B4%E0%B4%B5%E0%B4%9F%E0%B5%8D%E0%B4%9F%E0%B4%82/en&amp;diff=4390</id>
		<title>സ്വതന്ത്രമലയാളംകമ്പ്യൂട്ടിങ്ങിന്റെ ഒരു വ്യാഴവട്ടം/en</title>
		<link rel="alternate" type="text/html" href="https://wiki.smc.org.in/index.php?title=%E0%B4%B8%E0%B5%8D%E0%B4%B5%E0%B4%A4%E0%B4%A8%E0%B5%8D%E0%B4%A4%E0%B5%8D%E0%B4%B0%E0%B4%AE%E0%B4%B2%E0%B4%AF%E0%B4%BE%E0%B4%B3%E0%B4%82%E0%B4%95%E0%B4%AE%E0%B5%8D%E0%B4%AA%E0%B5%8D%E0%B4%AF%E0%B5%82%E0%B4%9F%E0%B5%8D%E0%B4%9F%E0%B4%BF%E0%B4%99%E0%B5%8D%E0%B4%99%E0%B4%BF%E0%B4%A8%E0%B5%8D%E0%B4%B1%E0%B5%86_%E0%B4%92%E0%B4%B0%E0%B5%81_%E0%B4%B5%E0%B5%8D%E0%B4%AF%E0%B4%BE%E0%B4%B4%E0%B4%B5%E0%B4%9F%E0%B5%8D%E0%B4%9F%E0%B4%82/en&amp;diff=4390"/>
		<updated>2013-09-17T08:05:39Z</updated>

		<summary type="html">&lt;p&gt;Nandaja: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[File:Smc-logo.png|thumb|]]&lt;br /&gt;
Twelfth anniversary programs of Swathanthra Malayalam Computing will take palce in Thrissur, Sahithya Academy Hall on 14th and 15th of October with wide variety of programs.&lt;br /&gt;
&lt;br /&gt;
== Discussions ==&lt;br /&gt;
* [[വാര്‍ഷികപൊതുപരിപാടി_2013/കൂടിയാലോചനകള്‍/ഐസാറ്റ്_ഓഗസ്റ്റ്29|Ernakulam ISAT - 29th August, Thursday]]&lt;br /&gt;
* [[വാര്‍ഷികപൊതുപരിപാടി_2013/കൂടിയാലോചനകള്‍/പിജി_സെന്റര്‍_ഓഗസ്റ്റ്28|Thrissur PG center - August 28, Wednesday]]&lt;br /&gt;
* [[വാര്‍ഷികപൊതുപരിപാടി_2013/IRC_25-08-2013|IRC Meeting - August 25, Sunday]]&lt;br /&gt;
&lt;br /&gt;
== Publicity programs ==&lt;br /&gt;
To introduce SMC, at least one program is to be organized in every district with engineering colleges as venues. &lt;br /&gt;
* [[വാര്‍ഷികപൊതുപരിപാടി_2013/SMC_Camp|SMC camps]]&lt;br /&gt;
&lt;br /&gt;
== Social media ==&lt;br /&gt;
&lt;br /&gt;
== Programs ==&lt;br /&gt;
[[വാര്‍ഷികപൊതുപരിപാടി_2013/സാങ്കേതികപ്രദര്‍ശനം|Technical exhibitions]]&lt;br /&gt;
[[വാര്‍ഷികപൊതുപരിപാടി 2013/കാര്യപരിപാടി/വിക്കിസംഗമം|Wiki meetup]]&lt;br /&gt;
&lt;br /&gt;
===Day 1===&lt;br /&gt;
&lt;br /&gt;
===Day 2===&lt;br /&gt;
Inauguration 9 AM&lt;br /&gt;
&lt;br /&gt;
Computer &amp;quot;Harisree&amp;quot;&lt;br /&gt;
&lt;br /&gt;
* Session 1 History of Malayalam computing&lt;br /&gt;
* Session 2 Introducing main tools&lt;br /&gt;
Scribus&lt;br /&gt;
&lt;br /&gt;
C-DAC&lt;br /&gt;
&lt;br /&gt;
Parallel session: panel discussion.&lt;br /&gt;
&lt;br /&gt;
===Day 3===&lt;br /&gt;
&lt;br /&gt;
Presenting GSoC projects 9 AM&lt;/div&gt;</summary>
		<author><name>Nandaja</name></author>
	</entry>
	<entry>
		<id>https://wiki.smc.org.in/index.php?title=%E0%B4%B8%E0%B5%8D%E0%B4%B5%E0%B4%A4%E0%B4%A8%E0%B5%8D%E0%B4%A4%E0%B5%8D%E0%B4%B0%E0%B4%AE%E0%B4%B2%E0%B4%AF%E0%B4%BE%E0%B4%B3%E0%B4%82%E0%B4%95%E0%B4%AE%E0%B5%8D%E0%B4%AA%E0%B5%8D%E0%B4%AF%E0%B5%82%E0%B4%9F%E0%B5%8D%E0%B4%9F%E0%B4%BF%E0%B4%99%E0%B5%8D%E0%B4%99%E0%B4%BF%E0%B4%A8%E0%B5%8D%E0%B4%B1%E0%B5%86_%E0%B4%92%E0%B4%B0%E0%B5%81_%E0%B4%B5%E0%B5%8D%E0%B4%AF%E0%B4%BE%E0%B4%B4%E0%B4%B5%E0%B4%9F%E0%B5%8D%E0%B4%9F%E0%B4%82/en&amp;diff=4389</id>
		<title>സ്വതന്ത്രമലയാളംകമ്പ്യൂട്ടിങ്ങിന്റെ ഒരു വ്യാഴവട്ടം/en</title>
		<link rel="alternate" type="text/html" href="https://wiki.smc.org.in/index.php?title=%E0%B4%B8%E0%B5%8D%E0%B4%B5%E0%B4%A4%E0%B4%A8%E0%B5%8D%E0%B4%A4%E0%B5%8D%E0%B4%B0%E0%B4%AE%E0%B4%B2%E0%B4%AF%E0%B4%BE%E0%B4%B3%E0%B4%82%E0%B4%95%E0%B4%AE%E0%B5%8D%E0%B4%AA%E0%B5%8D%E0%B4%AF%E0%B5%82%E0%B4%9F%E0%B5%8D%E0%B4%9F%E0%B4%BF%E0%B4%99%E0%B5%8D%E0%B4%99%E0%B4%BF%E0%B4%A8%E0%B5%8D%E0%B4%B1%E0%B5%86_%E0%B4%92%E0%B4%B0%E0%B5%81_%E0%B4%B5%E0%B5%8D%E0%B4%AF%E0%B4%BE%E0%B4%B4%E0%B4%B5%E0%B4%9F%E0%B5%8D%E0%B4%9F%E0%B4%82/en&amp;diff=4389"/>
		<updated>2013-09-17T08:04:24Z</updated>

		<summary type="html">&lt;p&gt;Nandaja: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[File:Smc-logo.png|thumb|]]&lt;br /&gt;
Twelfth anniversary programs of Swathanthra Malayalam Computing will take palce in Thrissur, Sahithya Academy Hall on 14th and 15th of October with wide variety of programs.&lt;br /&gt;
&lt;br /&gt;
== Discussions ==&lt;br /&gt;
* [[വാര്‍ഷികപൊതുപരിപാടി_2013/കൂടിയാലോചനകള്‍/ഐസാറ്റ്_ഓഗസ്റ്റ്29|Ernakulam ISAT - 29th August, Thursday]]&lt;br /&gt;
* [[വാര്‍ഷികപൊതുപരിപാടി_2013/കൂടിയാലോചനകള്‍/പിജി_സെന്റര്‍_ഓഗസ്റ്റ്28|Thrissur PG center - August 28, Wednesday]]&lt;br /&gt;
* [[വാര്‍ഷികപൊതുപരിപാടി_2013/IRC_25-08-2013|IRC Meeting - August 25, Sunday]]&lt;br /&gt;
&lt;br /&gt;
== Publicity programs ==&lt;br /&gt;
To introduce SMC, at least one program is to be organized in every district with engineering colleges as venues. &lt;br /&gt;
* [[വാര്‍ഷികപൊതുപരിപാടി_2013/SMC_Camp|SMC camps]]&lt;br /&gt;
&lt;br /&gt;
== Social media ==&lt;br /&gt;
&lt;br /&gt;
== Programs ==&lt;br /&gt;
[[http://wiki.smc.org.in/%E0%B4%B8%E0%B5%8D%E0%B4%B5%E0%B4%A4%E0%B4%A8%E0%B5%8D%E0%B4%A4%E0%B5%8D%E0%B4%B0%E0%B4%AE%E0%B4%B2%E0%B4%AF%E0%B4%BE%E0%B4%B3%E0%B4%82%E0%B4%95%E0%B4%AE%E0%B5%8D%E0%B4%AA%E0%B5%8D%E0%B4%AF%E0%B5%82%E0%B4%9F%E0%B5%8D%E0%B4%9F%E0%B4%BF%E0%B4%99%E0%B5%8D%E0%B4%99%E0%B4%BF%E0%B4%A8%E0%B5%8D%E0%B4%B1%E0%B5%86_%E0%B4%92%E0%B4%B0%E0%B5%81_%E0%B4%B5%E0%B5%8D%E0%B4%AF%E0%B4%BE%E0%B4%B4%E0%B4%B5%E0%B4%9F%E0%B5%8D%E0%B4%9F%E0%B4%82/%E0%B4%B8%E0%B4%BE%E0%B4%99%E0%B5%8D%E0%B4%95%E0%B5%87%E0%B4%A4%E0%B4%BF%E0%B4%95%E0%B4%AA%E0%B5%8D%E0%B4%B0%E0%B4%A6%E0%B4%B0%E0%B5%8D%E2%80%8D%E0%B4%B6%E0%B4%A8%E0%B4%82/en|Technical exhibitions]]&lt;br /&gt;
[[വാര്‍ഷികപൊതുപരിപാടി 2013/കാര്യപരിപാടി/വിക്കിസംഗമം|Wiki meetup]]&lt;br /&gt;
&lt;br /&gt;
===Day 1===&lt;br /&gt;
&lt;br /&gt;
===Day 2===&lt;br /&gt;
Inauguration 9 AM&lt;br /&gt;
&lt;br /&gt;
Computer &amp;quot;Harisree&amp;quot;&lt;br /&gt;
&lt;br /&gt;
* Session 1 History of Malayalam computing&lt;br /&gt;
* Session 2 Introducing main tools&lt;br /&gt;
Scribus&lt;br /&gt;
&lt;br /&gt;
C-DAC&lt;br /&gt;
&lt;br /&gt;
Parallel session: panel discussion.&lt;br /&gt;
&lt;br /&gt;
===Day 3===&lt;br /&gt;
&lt;br /&gt;
Presenting GSoC projects 9 AM&lt;/div&gt;</summary>
		<author><name>Nandaja</name></author>
	</entry>
	<entry>
		<id>https://wiki.smc.org.in/index.php?title=%E0%B4%B8%E0%B5%8D%E0%B4%B5%E0%B4%A4%E0%B4%A8%E0%B5%8D%E0%B4%A4%E0%B5%8D%E0%B4%B0%E0%B4%AE%E0%B4%B2%E0%B4%AF%E0%B4%BE%E0%B4%B3%E0%B4%82%E0%B4%95%E0%B4%AE%E0%B5%8D%E0%B4%AA%E0%B5%8D%E0%B4%AF%E0%B5%82%E0%B4%9F%E0%B5%8D%E0%B4%9F%E0%B4%BF%E0%B4%99%E0%B5%8D%E0%B4%99%E0%B4%BF%E0%B4%A8%E0%B5%8D%E0%B4%B1%E0%B5%86_%E0%B4%92%E0%B4%B0%E0%B5%81_%E0%B4%B5%E0%B5%8D%E0%B4%AF%E0%B4%BE%E0%B4%B4%E0%B4%B5%E0%B4%9F%E0%B5%8D%E0%B4%9F%E0%B4%82/en&amp;diff=4388</id>
		<title>സ്വതന്ത്രമലയാളംകമ്പ്യൂട്ടിങ്ങിന്റെ ഒരു വ്യാഴവട്ടം/en</title>
		<link rel="alternate" type="text/html" href="https://wiki.smc.org.in/index.php?title=%E0%B4%B8%E0%B5%8D%E0%B4%B5%E0%B4%A4%E0%B4%A8%E0%B5%8D%E0%B4%A4%E0%B5%8D%E0%B4%B0%E0%B4%AE%E0%B4%B2%E0%B4%AF%E0%B4%BE%E0%B4%B3%E0%B4%82%E0%B4%95%E0%B4%AE%E0%B5%8D%E0%B4%AA%E0%B5%8D%E0%B4%AF%E0%B5%82%E0%B4%9F%E0%B5%8D%E0%B4%9F%E0%B4%BF%E0%B4%99%E0%B5%8D%E0%B4%99%E0%B4%BF%E0%B4%A8%E0%B5%8D%E0%B4%B1%E0%B5%86_%E0%B4%92%E0%B4%B0%E0%B5%81_%E0%B4%B5%E0%B5%8D%E0%B4%AF%E0%B4%BE%E0%B4%B4%E0%B4%B5%E0%B4%9F%E0%B5%8D%E0%B4%9F%E0%B4%82/en&amp;diff=4388"/>
		<updated>2013-09-17T08:01:38Z</updated>

		<summary type="html">&lt;p&gt;Nandaja: /* Publicity programs */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[File:Smc-logo.png|thumb|]]&lt;br /&gt;
Twelfth anniversary programs of Swathanthra Malayalam Computing will take palce in Thrissur, Sahithya Academy Hall on 14th and 15th of October with wide variety of programs.&lt;br /&gt;
&lt;br /&gt;
== Discussions ==&lt;br /&gt;
* [[വാര്‍ഷികപൊതുപരിപാടി_2013/കൂടിയാലോചനകള്‍/ഐസാറ്റ്_ഓഗസ്റ്റ്29|Ernakulam ISAT - 29th August, Thursday]]&lt;br /&gt;
* [[വാര്‍ഷികപൊതുപരിപാടി_2013/കൂടിയാലോചനകള്‍/പിജി_സെന്റര്‍_ഓഗസ്റ്റ്28|Thrissur PG center - August 28, Wednesday]]&lt;br /&gt;
* [[വാര്‍ഷികപൊതുപരിപാടി_2013/IRC_25-08-2013|IRC Meeting - August 25, Sunday]]&lt;br /&gt;
&lt;br /&gt;
== Publicity programs ==&lt;br /&gt;
To introduce SMC, at least one program is to be organized in every district with engineering colleges as venues. &lt;br /&gt;
* [[വാര്‍ഷികപൊതുപരിപാടി_2013/SMC_Camp|SMC camps]]&lt;br /&gt;
&lt;br /&gt;
== Social media ==&lt;br /&gt;
&lt;br /&gt;
== Programs ==&lt;br /&gt;
[[വാര്‍ഷികപൊതുപരിപാടി_2013/സാങ്കേതികപ്രദര്‍ശനം|Technical exhibitions]]&lt;br /&gt;
[[വാര്‍ഷികപൊതുപരിപാടി 2013/കാര്യപരിപാടി/വിക്കിസംഗമം|Wiki meetup]]&lt;br /&gt;
&lt;br /&gt;
===Day 1===&lt;br /&gt;
&lt;br /&gt;
===Day 2===&lt;br /&gt;
Inauguration 9 AM&lt;br /&gt;
&lt;br /&gt;
Computer &amp;quot;Harisree&amp;quot;&lt;br /&gt;
&lt;br /&gt;
* Session 1 History of Malayalam computing&lt;br /&gt;
* Session 2 Introducing main tools&lt;br /&gt;
Scribus&lt;br /&gt;
&lt;br /&gt;
C-DAC&lt;br /&gt;
&lt;br /&gt;
Parallel session: panel discussion.&lt;br /&gt;
&lt;br /&gt;
===Day 3===&lt;br /&gt;
&lt;br /&gt;
Presenting GSoC projects 9 AM&lt;/div&gt;</summary>
		<author><name>Nandaja</name></author>
	</entry>
	<entry>
		<id>https://wiki.smc.org.in/index.php?title=%E0%B4%B8%E0%B5%8D%E0%B4%B5%E0%B4%A4%E0%B4%A8%E0%B5%8D%E0%B4%A4%E0%B5%8D%E0%B4%B0%E0%B4%AE%E0%B4%B2%E0%B4%AF%E0%B4%BE%E0%B4%B3%E0%B4%82%E0%B4%95%E0%B4%AE%E0%B5%8D%E0%B4%AA%E0%B5%8D%E0%B4%AF%E0%B5%82%E0%B4%9F%E0%B5%8D%E0%B4%9F%E0%B4%BF%E0%B4%99%E0%B5%8D%E0%B4%99%E0%B4%BF%E0%B4%A8%E0%B5%8D%E0%B4%B1%E0%B5%86_%E0%B4%92%E0%B4%B0%E0%B5%81_%E0%B4%B5%E0%B5%8D%E0%B4%AF%E0%B4%BE%E0%B4%B4%E0%B4%B5%E0%B4%9F%E0%B5%8D%E0%B4%9F%E0%B4%82/en&amp;diff=4387</id>
		<title>സ്വതന്ത്രമലയാളംകമ്പ്യൂട്ടിങ്ങിന്റെ ഒരു വ്യാഴവട്ടം/en</title>
		<link rel="alternate" type="text/html" href="https://wiki.smc.org.in/index.php?title=%E0%B4%B8%E0%B5%8D%E0%B4%B5%E0%B4%A4%E0%B4%A8%E0%B5%8D%E0%B4%A4%E0%B5%8D%E0%B4%B0%E0%B4%AE%E0%B4%B2%E0%B4%AF%E0%B4%BE%E0%B4%B3%E0%B4%82%E0%B4%95%E0%B4%AE%E0%B5%8D%E0%B4%AA%E0%B5%8D%E0%B4%AF%E0%B5%82%E0%B4%9F%E0%B5%8D%E0%B4%9F%E0%B4%BF%E0%B4%99%E0%B5%8D%E0%B4%99%E0%B4%BF%E0%B4%A8%E0%B5%8D%E0%B4%B1%E0%B5%86_%E0%B4%92%E0%B4%B0%E0%B5%81_%E0%B4%B5%E0%B5%8D%E0%B4%AF%E0%B4%BE%E0%B4%B4%E0%B4%B5%E0%B4%9F%E0%B5%8D%E0%B4%9F%E0%B4%82/en&amp;diff=4387"/>
		<updated>2013-09-17T08:00:51Z</updated>

		<summary type="html">&lt;p&gt;Nandaja: /* Programs */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[File:Smc-logo.png|thumb|]]&lt;br /&gt;
Twelfth anniversary programs of Swathanthra Malayalam Computing will take palce in Thrissur, Sahithya Academy Hall on 14th and 15th of October with wide variety of programs.&lt;br /&gt;
&lt;br /&gt;
== Discussions ==&lt;br /&gt;
* [[വാര്‍ഷികപൊതുപരിപാടി_2013/കൂടിയാലോചനകള്‍/ഐസാറ്റ്_ഓഗസ്റ്റ്29|Ernakulam ISAT - 29th August, Thursday]]&lt;br /&gt;
* [[വാര്‍ഷികപൊതുപരിപാടി_2013/കൂടിയാലോചനകള്‍/പിജി_സെന്റര്‍_ഓഗസ്റ്റ്28|Thrissur PG center - August 28, Wednesday]]&lt;br /&gt;
* [[വാര്‍ഷികപൊതുപരിപാടി_2013/IRC_25-08-2013|IRC Meeting - August 25, Sunday]]&lt;br /&gt;
&lt;br /&gt;
== Publicity programs ==&lt;br /&gt;
To introduce SMC, at least one program is to be organized in every district with engineering colleges as venues. *[[വാര്‍ഷികപൊതുപരിപാടി_2013/SMC_Camp|SMC camps]]&lt;br /&gt;
&lt;br /&gt;
== Social media ==&lt;br /&gt;
&lt;br /&gt;
== Programs ==&lt;br /&gt;
[[വാര്‍ഷികപൊതുപരിപാടി_2013/സാങ്കേതികപ്രദര്‍ശനം|Technical exhibitions]]&lt;br /&gt;
[[വാര്‍ഷികപൊതുപരിപാടി 2013/കാര്യപരിപാടി/വിക്കിസംഗമം|Wiki meetup]]&lt;br /&gt;
&lt;br /&gt;
===Day 1===&lt;br /&gt;
&lt;br /&gt;
===Day 2===&lt;br /&gt;
Inauguration 9 AM&lt;br /&gt;
&lt;br /&gt;
Computer &amp;quot;Harisree&amp;quot;&lt;br /&gt;
&lt;br /&gt;
* Session 1 History of Malayalam computing&lt;br /&gt;
* Session 2 Introducing main tools&lt;br /&gt;
Scribus&lt;br /&gt;
&lt;br /&gt;
C-DAC&lt;br /&gt;
&lt;br /&gt;
Parallel session: panel discussion.&lt;br /&gt;
&lt;br /&gt;
===Day 3===&lt;br /&gt;
&lt;br /&gt;
Presenting GSoC projects 9 AM&lt;/div&gt;</summary>
		<author><name>Nandaja</name></author>
	</entry>
	<entry>
		<id>https://wiki.smc.org.in/index.php?title=%E0%B4%B8%E0%B5%8D%E0%B4%B5%E0%B4%A4%E0%B4%A8%E0%B5%8D%E0%B4%A4%E0%B5%8D%E0%B4%B0%E0%B4%AE%E0%B4%B2%E0%B4%AF%E0%B4%BE%E0%B4%B3%E0%B4%82%E0%B4%95%E0%B4%AE%E0%B5%8D%E0%B4%AA%E0%B5%8D%E0%B4%AF%E0%B5%82%E0%B4%9F%E0%B5%8D%E0%B4%9F%E0%B4%BF%E0%B4%99%E0%B5%8D%E0%B4%99%E0%B4%BF%E0%B4%A8%E0%B5%8D%E0%B4%B1%E0%B5%86_%E0%B4%92%E0%B4%B0%E0%B5%81_%E0%B4%B5%E0%B5%8D%E0%B4%AF%E0%B4%BE%E0%B4%B4%E0%B4%B5%E0%B4%9F%E0%B5%8D%E0%B4%9F%E0%B4%82/en&amp;diff=4386</id>
		<title>സ്വതന്ത്രമലയാളംകമ്പ്യൂട്ടിങ്ങിന്റെ ഒരു വ്യാഴവട്ടം/en</title>
		<link rel="alternate" type="text/html" href="https://wiki.smc.org.in/index.php?title=%E0%B4%B8%E0%B5%8D%E0%B4%B5%E0%B4%A4%E0%B4%A8%E0%B5%8D%E0%B4%A4%E0%B5%8D%E0%B4%B0%E0%B4%AE%E0%B4%B2%E0%B4%AF%E0%B4%BE%E0%B4%B3%E0%B4%82%E0%B4%95%E0%B4%AE%E0%B5%8D%E0%B4%AA%E0%B5%8D%E0%B4%AF%E0%B5%82%E0%B4%9F%E0%B5%8D%E0%B4%9F%E0%B4%BF%E0%B4%99%E0%B5%8D%E0%B4%99%E0%B4%BF%E0%B4%A8%E0%B5%8D%E0%B4%B1%E0%B5%86_%E0%B4%92%E0%B4%B0%E0%B5%81_%E0%B4%B5%E0%B5%8D%E0%B4%AF%E0%B4%BE%E0%B4%B4%E0%B4%B5%E0%B4%9F%E0%B5%8D%E0%B4%9F%E0%B4%82/en&amp;diff=4386"/>
		<updated>2013-09-17T08:00:12Z</updated>

		<summary type="html">&lt;p&gt;Nandaja: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[File:Smc-logo.png|thumb|]]&lt;br /&gt;
Twelfth anniversary programs of Swathanthra Malayalam Computing will take palce in Thrissur, Sahithya Academy Hall on 14th and 15th of October with wide variety of programs.&lt;br /&gt;
&lt;br /&gt;
== Discussions ==&lt;br /&gt;
* [[വാര്‍ഷികപൊതുപരിപാടി_2013/കൂടിയാലോചനകള്‍/ഐസാറ്റ്_ഓഗസ്റ്റ്29|Ernakulam ISAT - 29th August, Thursday]]&lt;br /&gt;
* [[വാര്‍ഷികപൊതുപരിപാടി_2013/കൂടിയാലോചനകള്‍/പിജി_സെന്റര്‍_ഓഗസ്റ്റ്28|Thrissur PG center - August 28, Wednesday]]&lt;br /&gt;
* [[വാര്‍ഷികപൊതുപരിപാടി_2013/IRC_25-08-2013|IRC Meeting - August 25, Sunday]]&lt;br /&gt;
&lt;br /&gt;
== Publicity programs ==&lt;br /&gt;
To introduce SMC, at least one program is to be organized in every district with engineering colleges as venues. *[[വാര്‍ഷികപൊതുപരിപാടി_2013/SMC_Camp|SMC camps]]&lt;br /&gt;
&lt;br /&gt;
== Social media ==&lt;br /&gt;
&lt;br /&gt;
== Programs ==&lt;br /&gt;
[[വാര്‍ഷികപൊതുപരിപാടി_2013/സാങ്കേതികപ്രദര്‍ശനം/en|Technical exhibitions]]&lt;br /&gt;
[[വാര്‍ഷികപൊതുപരിപാടി 2013/കാര്യപരിപാടി/വിക്കിസംഗമം|Wiki meetup]]&lt;br /&gt;
&lt;br /&gt;
===Day 1===&lt;br /&gt;
&lt;br /&gt;
===Day 2===&lt;br /&gt;
Inauguration 9 AM&lt;br /&gt;
&lt;br /&gt;
Computer &amp;quot;Harisree&amp;quot;&lt;br /&gt;
&lt;br /&gt;
* Session 1 History of Malayalam computing&lt;br /&gt;
* Session 2 Introducing main tools&lt;br /&gt;
Scribus&lt;br /&gt;
&lt;br /&gt;
C-DAC&lt;br /&gt;
&lt;br /&gt;
Parallel session: panel discussion.&lt;br /&gt;
&lt;br /&gt;
===Day 3===&lt;br /&gt;
&lt;br /&gt;
Presenting GSoC projects 9 AM&lt;/div&gt;</summary>
		<author><name>Nandaja</name></author>
	</entry>
	<entry>
		<id>https://wiki.smc.org.in/index.php?title=%E0%B4%B8%E0%B5%8D%E0%B4%B5%E0%B4%A4%E0%B4%A8%E0%B5%8D%E0%B4%A4%E0%B5%8D%E0%B4%B0%E0%B4%AE%E0%B4%B2%E0%B4%AF%E0%B4%BE%E0%B4%B3%E0%B4%82%E0%B4%95%E0%B4%AE%E0%B5%8D%E0%B4%AA%E0%B5%8D%E0%B4%AF%E0%B5%82%E0%B4%9F%E0%B5%8D%E0%B4%9F%E0%B4%BF%E0%B4%99%E0%B5%8D%E0%B4%99%E0%B4%BF%E0%B4%A8%E0%B5%8D%E0%B4%B1%E0%B5%86_%E0%B4%92%E0%B4%B0%E0%B5%81_%E0%B4%B5%E0%B5%8D%E0%B4%AF%E0%B4%BE%E0%B4%B4%E0%B4%B5%E0%B4%9F%E0%B5%8D%E0%B4%9F%E0%B4%82/en&amp;diff=4385</id>
		<title>സ്വതന്ത്രമലയാളംകമ്പ്യൂട്ടിങ്ങിന്റെ ഒരു വ്യാഴവട്ടം/en</title>
		<link rel="alternate" type="text/html" href="https://wiki.smc.org.in/index.php?title=%E0%B4%B8%E0%B5%8D%E0%B4%B5%E0%B4%A4%E0%B4%A8%E0%B5%8D%E0%B4%A4%E0%B5%8D%E0%B4%B0%E0%B4%AE%E0%B4%B2%E0%B4%AF%E0%B4%BE%E0%B4%B3%E0%B4%82%E0%B4%95%E0%B4%AE%E0%B5%8D%E0%B4%AA%E0%B5%8D%E0%B4%AF%E0%B5%82%E0%B4%9F%E0%B5%8D%E0%B4%9F%E0%B4%BF%E0%B4%99%E0%B5%8D%E0%B4%99%E0%B4%BF%E0%B4%A8%E0%B5%8D%E0%B4%B1%E0%B5%86_%E0%B4%92%E0%B4%B0%E0%B5%81_%E0%B4%B5%E0%B5%8D%E0%B4%AF%E0%B4%BE%E0%B4%B4%E0%B4%B5%E0%B4%9F%E0%B5%8D%E0%B4%9F%E0%B4%82/en&amp;diff=4385"/>
		<updated>2013-09-17T07:59:39Z</updated>

		<summary type="html">&lt;p&gt;Nandaja: Created page with &amp;quot;thumb| Twelfth anniversary programs of Swathanthra Malayalam Computing will take palce in Thrissur, Sahithya Academy Hall on 14th and 15th of October wit...&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[File:Smc-logo.png|thumb|]]&lt;br /&gt;
Twelfth anniversary programs of Swathanthra Malayalam Computing will take palce in Thrissur, Sahithya Academy Hall on 14th and 15th of October with wide variety of programs.&lt;br /&gt;
&lt;br /&gt;
== Discussions ==&lt;br /&gt;
* [[വാര്‍ഷികപൊതുപരിപാടി_2013/കൂടിയാലോചനകള്‍/ഐസാറ്റ്_ഓഗസ്റ്റ്29|Ernakulam ISAT - 29th August, Thursday]]&lt;br /&gt;
* [[വാര്‍ഷികപൊതുപരിപാടി_2013/കൂടിയാലോചനകള്‍/പിജി_സെന്റര്‍_ഓഗസ്റ്റ്28|Thrissur PG center - August 28, Wednesday]]&lt;br /&gt;
* [[വാര്‍ഷികപൊതുപരിപാടി_2013/IRC_25-08-2013|IRC Meeting - August 25, Sunday]]&lt;br /&gt;
&lt;br /&gt;
== Publicity programs ==&lt;br /&gt;
To introduce SMC, at least one program is to be organized in every district with engineering colleges as venues. *[[വാര്‍ഷികപൊതുപരിപാടി_2013/SMC_Camp|SMC camps]]&lt;br /&gt;
&lt;br /&gt;
== Social media ==&lt;br /&gt;
&lt;br /&gt;
== Programs ==&lt;br /&gt;
[[വാര്‍ഷികപൊതുപരിപാടി_2013/സാങ്കേതികപ്രദര്‍ശനം|Technical exhibitions]]&lt;br /&gt;
[[വാര്‍ഷികപൊതുപരിപാടി 2013/കാര്യപരിപാടി/വിക്കിസംഗമം|Wiki meetup]]&lt;br /&gt;
&lt;br /&gt;
===Day 1===&lt;br /&gt;
&lt;br /&gt;
===Day 2===&lt;br /&gt;
Inauguration 9 AM&lt;br /&gt;
&lt;br /&gt;
Computer &amp;quot;Harisree&amp;quot;&lt;br /&gt;
&lt;br /&gt;
* Session 1 History of Malayalam computing&lt;br /&gt;
* Session 2 Introducing main tools&lt;br /&gt;
Scribus&lt;br /&gt;
&lt;br /&gt;
C-DAC&lt;br /&gt;
&lt;br /&gt;
Parallel session: panel discussion.&lt;br /&gt;
&lt;br /&gt;
===Day 3===&lt;br /&gt;
&lt;br /&gt;
Presenting GSoC projects 9 AM&lt;/div&gt;</summary>
		<author><name>Nandaja</name></author>
	</entry>
	<entry>
		<id>https://wiki.smc.org.in/index.php?title=%E0%B4%B8%E0%B5%8D%E0%B4%B5%E0%B4%A4%E0%B4%A8%E0%B5%8D%E0%B4%A4%E0%B5%8D%E0%B4%B0%E0%B4%AE%E0%B4%B2%E0%B4%AF%E0%B4%BE%E0%B4%B3%E0%B4%82%E0%B4%95%E0%B4%AE%E0%B5%8D%E0%B4%AA%E0%B5%8D%E0%B4%AF%E0%B5%82%E0%B4%9F%E0%B5%8D%E0%B4%9F%E0%B4%BF%E0%B4%99%E0%B5%8D%E0%B4%99%E0%B4%BF%E0%B4%A8%E0%B5%8D%E0%B4%B1%E0%B5%86_%E0%B4%92%E0%B4%B0%E0%B5%81_%E0%B4%B5%E0%B5%8D%E0%B4%AF%E0%B4%BE%E0%B4%B4%E0%B4%B5%E0%B4%9F%E0%B5%8D%E0%B4%9F%E0%B4%82/%E0%B4%B8%E0%B4%BE%E0%B4%99%E0%B5%8D%E0%B4%95%E0%B5%87%E0%B4%A4%E0%B4%BF%E0%B4%95%E0%B4%AA%E0%B5%8D%E0%B4%B0%E0%B4%A6%E0%B4%B0%E0%B5%8D%E2%80%8D%E0%B4%B6%E0%B4%A8%E0%B4%82/en&amp;diff=4384</id>
		<title>സ്വതന്ത്രമലയാളംകമ്പ്യൂട്ടിങ്ങിന്റെ ഒരു വ്യാഴവട്ടം/സാങ്കേതികപ്രദര്‍ശനം/en</title>
		<link rel="alternate" type="text/html" href="https://wiki.smc.org.in/index.php?title=%E0%B4%B8%E0%B5%8D%E0%B4%B5%E0%B4%A4%E0%B4%A8%E0%B5%8D%E0%B4%A4%E0%B5%8D%E0%B4%B0%E0%B4%AE%E0%B4%B2%E0%B4%AF%E0%B4%BE%E0%B4%B3%E0%B4%82%E0%B4%95%E0%B4%AE%E0%B5%8D%E0%B4%AA%E0%B5%8D%E0%B4%AF%E0%B5%82%E0%B4%9F%E0%B5%8D%E0%B4%9F%E0%B4%BF%E0%B4%99%E0%B5%8D%E0%B4%99%E0%B4%BF%E0%B4%A8%E0%B5%8D%E0%B4%B1%E0%B5%86_%E0%B4%92%E0%B4%B0%E0%B5%81_%E0%B4%B5%E0%B5%8D%E0%B4%AF%E0%B4%BE%E0%B4%B4%E0%B4%B5%E0%B4%9F%E0%B5%8D%E0%B4%9F%E0%B4%82/%E0%B4%B8%E0%B4%BE%E0%B4%99%E0%B5%8D%E0%B4%95%E0%B5%87%E0%B4%A4%E0%B4%BF%E0%B4%95%E0%B4%AA%E0%B5%8D%E0%B4%B0%E0%B4%A6%E0%B4%B0%E0%B5%8D%E2%80%8D%E0%B4%B6%E0%B4%A8%E0%B4%82/en&amp;diff=4384"/>
		<updated>2013-09-17T07:18:09Z</updated>

		<summary type="html">&lt;p&gt;Nandaja: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;The technical exhibitions for the twelfth anniversary programs of Swathanthra Malayalam Computing to be held on 14th and 15th of October at Thrissur, Sahithya Academy hall will be compiled in this page.&lt;br /&gt;
&lt;br /&gt;
Nandaja, Arjun and Manoj are mainly in charge of these programs.&lt;br /&gt;
&lt;br /&gt;
=== Malayalam Computing Milestones/History ===&lt;br /&gt;
Details has to be collected and documents. Posters are to be made. --&amp;gt; Anivar, Sooraj&lt;br /&gt;
&lt;br /&gt;
=== Swathanthra Malayalam Computing ===&lt;br /&gt;
Milestones/history of SMC so far. &lt;br /&gt;
&lt;br /&gt;
=== Freedom toaster + Install fest ===&lt;br /&gt;
Responsibility to get freedom toaster ready --&amp;gt; Anish, Sooraj&lt;br /&gt;
&lt;br /&gt;
=== Fonts ===&lt;br /&gt;
(Fonts maintained by SMC, other free software fonts, Battathiri&#039;s Calligraphy, Magra, typography etc will be exhibited.)&lt;br /&gt;
Responsibility --&amp;gt; Arjun, Hiran Venugopalan&lt;br /&gt;
&lt;br /&gt;
=== Wiki Grandhasala ===&lt;br /&gt;
Responsibility --&amp;gt; Manoj&lt;br /&gt;
&lt;br /&gt;
=== Publication ===&lt;br /&gt;
(Books printed in original script. A similar idea was presented by Rachana Aksharavedi in last year&#039;s book fest.)&lt;br /&gt;
Responsibility --&amp;gt; Hussain Sir, Hrishikesh&lt;br /&gt;
&lt;br /&gt;
=== Silpa project ===&lt;br /&gt;
Swathanthra Indian Language Processing Application&lt;br /&gt;
In charge --&amp;gt; Anish, Hrishikesh&lt;br /&gt;
&lt;br /&gt;
=== Typing tools ===&lt;br /&gt;
(Varamozhi, keyman, Swanalekha, Inscript, Narayam, Lalitha, Varnam, ULS etc.)&lt;br /&gt;
Everything has to be documented neatly and made presentable&lt;br /&gt;
In charge --&amp;gt; Balu&lt;br /&gt;
&lt;br /&gt;
=== Localization hut ===&lt;br /&gt;
(Introducing different localization projects)&lt;br /&gt;
Responsibility --&amp;gt; Ani peter&lt;br /&gt;
&lt;br /&gt;
=== Dictionary - Olam ===&lt;br /&gt;
Responsibility --&amp;gt; Kailash Nath&lt;br /&gt;
&lt;br /&gt;
=== Grandhasoochi ===&lt;br /&gt;
Responsibility --&amp;gt; Ershad, Anivar&lt;br /&gt;
&lt;br /&gt;
=== Dhwani ===&lt;br /&gt;
Will be made presentable by Santhosh/Kavya&lt;br /&gt;
&lt;br /&gt;
=== Android Malayalam ===&lt;br /&gt;
Responsibility --&amp;gt; Jishnu&lt;br /&gt;
&lt;br /&gt;
=== Malayalam Mapping (GIS) ===&lt;br /&gt;
Responsibility ---&amp;gt; Jaisen Nedumpala&lt;br /&gt;
&lt;br /&gt;
=== Payyans and Chathans (ASCII to Unicode) ===&lt;br /&gt;
Responsibility --&amp;gt; Manoj&lt;br /&gt;
&lt;br /&gt;
=== Malayalam Spellchecker ===&lt;br /&gt;
Responsibility --&amp;gt; Santhosh/Kavya&lt;br /&gt;
&lt;br /&gt;
=== Malayalam Capcha ===&lt;br /&gt;
Responsibility --&amp;gt; Hrishikesh &lt;br /&gt;
&lt;br /&gt;
=== Letter splitter ===&lt;br /&gt;
&lt;br /&gt;
=== Fortune Malayalam ===&lt;br /&gt;
&lt;br /&gt;
=== Hyphenation ===&lt;br /&gt;
&lt;br /&gt;
=== Paralperu ===&lt;br /&gt;
&lt;br /&gt;
=== Sharika ===&lt;br /&gt;
&lt;br /&gt;
=== Malayalam Matrix - Screen saver ===&lt;br /&gt;
No much work.&lt;br /&gt;
&lt;br /&gt;
=== Libre Office auto correct ===&lt;br /&gt;
Responsibility --&amp;gt; Manoj&lt;br /&gt;
&lt;br /&gt;
=== Orca ===&lt;br /&gt;
Sathyasheelan sir will help&lt;br /&gt;
&lt;br /&gt;
=== Sharada Braille Writer ===&lt;br /&gt;
Nalin will help&lt;br /&gt;
&lt;br /&gt;
=== Scribus Malayalam ===&lt;br /&gt;
Anil will help&lt;br /&gt;
&lt;br /&gt;
=== OCR ===&lt;br /&gt;
&lt;br /&gt;
=== Machine translation ===&lt;br /&gt;
Responsibility --&amp;gt; Aboobacker&lt;br /&gt;
&lt;br /&gt;
=== Scan tyler demo ===&lt;br /&gt;
&lt;br /&gt;
=== Help desk ===&lt;br /&gt;
Of free software user group ilegtvm, ilegcochin..)&lt;br /&gt;
Coordination --&amp;gt; Soorah Kennoth&lt;br /&gt;
&lt;br /&gt;
=== Irumbanam school ===&lt;br /&gt;
Tux paint + Subtitle activities by students from Irumbanam School&lt;br /&gt;
Responsibility --&amp;gt; Sanal Kumar Sir&lt;br /&gt;
&lt;br /&gt;
=== IT@School ===&lt;br /&gt;
IT@School has to be officially invited&lt;br /&gt;
&lt;br /&gt;
=== Wikipedia + other wiki projects ===&lt;br /&gt;
A wiki page has been created for the event.&lt;br /&gt;
&lt;br /&gt;
=== Bloggers&#039; union ===&lt;br /&gt;
&lt;br /&gt;
=== M3DB + Eenam ===&lt;br /&gt;
Responsibility --&amp;gt; Manoj &lt;br /&gt;
&lt;br /&gt;
=== Malayalam Subtitles M-zone ===&lt;br /&gt;
&lt;br /&gt;
=== Logopedia ===&lt;br /&gt;
&lt;br /&gt;
=== Sayahnna ===&lt;br /&gt;
Manoj&lt;br /&gt;
&lt;br /&gt;
=== Chamba ===&lt;br /&gt;
&lt;br /&gt;
=== Diaspora and Savepoddery ===&lt;br /&gt;
Substitute social network.&lt;/div&gt;</summary>
		<author><name>Nandaja</name></author>
	</entry>
	<entry>
		<id>https://wiki.smc.org.in/index.php?title=%E0%B4%B8%E0%B5%8D%E0%B4%B5%E0%B4%A4%E0%B4%A8%E0%B5%8D%E0%B4%A4%E0%B5%8D%E0%B4%B0%E0%B4%AE%E0%B4%B2%E0%B4%AF%E0%B4%BE%E0%B4%B3%E0%B4%82%E0%B4%95%E0%B4%AE%E0%B5%8D%E0%B4%AA%E0%B5%8D%E0%B4%AF%E0%B5%82%E0%B4%9F%E0%B5%8D%E0%B4%9F%E0%B4%BF%E0%B4%99%E0%B5%8D%E0%B4%99%E0%B4%BF%E0%B4%A8%E0%B5%8D%E0%B4%B1%E0%B5%86_%E0%B4%92%E0%B4%B0%E0%B5%81_%E0%B4%B5%E0%B5%8D%E0%B4%AF%E0%B4%BE%E0%B4%B4%E0%B4%B5%E0%B4%9F%E0%B5%8D%E0%B4%9F%E0%B4%82/%E0%B4%B8%E0%B4%BE%E0%B4%99%E0%B5%8D%E0%B4%95%E0%B5%87%E0%B4%A4%E0%B4%BF%E0%B4%95%E0%B4%AA%E0%B5%8D%E0%B4%B0%E0%B4%A6%E0%B4%B0%E0%B5%8D%E2%80%8D%E0%B4%B6%E0%B4%A8%E0%B4%82/en&amp;diff=4383</id>
		<title>സ്വതന്ത്രമലയാളംകമ്പ്യൂട്ടിങ്ങിന്റെ ഒരു വ്യാഴവട്ടം/സാങ്കേതികപ്രദര്‍ശനം/en</title>
		<link rel="alternate" type="text/html" href="https://wiki.smc.org.in/index.php?title=%E0%B4%B8%E0%B5%8D%E0%B4%B5%E0%B4%A4%E0%B4%A8%E0%B5%8D%E0%B4%A4%E0%B5%8D%E0%B4%B0%E0%B4%AE%E0%B4%B2%E0%B4%AF%E0%B4%BE%E0%B4%B3%E0%B4%82%E0%B4%95%E0%B4%AE%E0%B5%8D%E0%B4%AA%E0%B5%8D%E0%B4%AF%E0%B5%82%E0%B4%9F%E0%B5%8D%E0%B4%9F%E0%B4%BF%E0%B4%99%E0%B5%8D%E0%B4%99%E0%B4%BF%E0%B4%A8%E0%B5%8D%E0%B4%B1%E0%B5%86_%E0%B4%92%E0%B4%B0%E0%B5%81_%E0%B4%B5%E0%B5%8D%E0%B4%AF%E0%B4%BE%E0%B4%B4%E0%B4%B5%E0%B4%9F%E0%B5%8D%E0%B4%9F%E0%B4%82/%E0%B4%B8%E0%B4%BE%E0%B4%99%E0%B5%8D%E0%B4%95%E0%B5%87%E0%B4%A4%E0%B4%BF%E0%B4%95%E0%B4%AA%E0%B5%8D%E0%B4%B0%E0%B4%A6%E0%B4%B0%E0%B5%8D%E2%80%8D%E0%B4%B6%E0%B4%A8%E0%B4%82/en&amp;diff=4383"/>
		<updated>2013-09-17T07:17:42Z</updated>

		<summary type="html">&lt;p&gt;Nandaja: /* = Fonts */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;The technical exhibitions for the twelfth anniversary programs of Swathanthra Malayalam Computing to be held on 14th and 15th of October at Thrissur, Sahithya Academy hall will be compiled in this page.&lt;br /&gt;
&lt;br /&gt;
Nandaja, Arjun and Manoj are mainly in charge of this programs.&lt;br /&gt;
&lt;br /&gt;
=== Malayalam Computing Milestones/History ===&lt;br /&gt;
Details has to be collected and documents. Posters are to be made. --&amp;gt; Anivar, Sooraj&lt;br /&gt;
&lt;br /&gt;
=== Swathanthra Malayalam Computing ===&lt;br /&gt;
Milestones/history of SMC so far. &lt;br /&gt;
&lt;br /&gt;
=== Freedom toaster + Install fest ===&lt;br /&gt;
Responsibility to get freedom toaster ready --&amp;gt; Anish, Sooraj&lt;br /&gt;
&lt;br /&gt;
=== Fonts ===&lt;br /&gt;
(Fonts maintained by SMC, other free software fonts, Battathiri&#039;s Calligraphy, Magra, typography etc will be exhibited.)&lt;br /&gt;
Responsibility --&amp;gt; Arjun, Hiran Venugopalan&lt;br /&gt;
&lt;br /&gt;
=== Wiki Grandhasala ===&lt;br /&gt;
Responsibility --&amp;gt; Manoj&lt;br /&gt;
&lt;br /&gt;
=== Publication ===&lt;br /&gt;
(Books printed in original script. A similar idea was presented by Rachana Aksharavedi in last year&#039;s book fest.)&lt;br /&gt;
Responsibility --&amp;gt; Hussain Sir, Hrishikesh&lt;br /&gt;
&lt;br /&gt;
=== Silpa project ===&lt;br /&gt;
Swathanthra Indian Language Processing Application&lt;br /&gt;
In charge --&amp;gt; Anish, Hrishikesh&lt;br /&gt;
&lt;br /&gt;
=== Typing tools ===&lt;br /&gt;
(Varamozhi, keyman, Swanalekha, Inscript, Narayam, Lalitha, Varnam, ULS etc.)&lt;br /&gt;
Everything has to be documented neatly and made presentable&lt;br /&gt;
In charge --&amp;gt; Balu&lt;br /&gt;
&lt;br /&gt;
=== Localization hut ===&lt;br /&gt;
(Introducing different localization projects)&lt;br /&gt;
Responsibility --&amp;gt; Ani peter&lt;br /&gt;
&lt;br /&gt;
=== Dictionary - Olam ===&lt;br /&gt;
Responsibility --&amp;gt; Kailash Nath&lt;br /&gt;
&lt;br /&gt;
=== Grandhasoochi ===&lt;br /&gt;
Responsibility --&amp;gt; Ershad, Anivar&lt;br /&gt;
&lt;br /&gt;
=== Dhwani ===&lt;br /&gt;
Will be made presentable by Santhosh/Kavya&lt;br /&gt;
&lt;br /&gt;
=== Android Malayalam ===&lt;br /&gt;
Responsibility --&amp;gt; Jishnu&lt;br /&gt;
&lt;br /&gt;
=== Malayalam Mapping (GIS) ===&lt;br /&gt;
Responsibility ---&amp;gt; Jaisen Nedumpala&lt;br /&gt;
&lt;br /&gt;
=== Payyans and Chathans (ASCII to Unicode) ===&lt;br /&gt;
Responsibility --&amp;gt; Manoj&lt;br /&gt;
&lt;br /&gt;
=== Malayalam Spellchecker ===&lt;br /&gt;
Responsibility --&amp;gt; Santhosh/Kavya&lt;br /&gt;
&lt;br /&gt;
=== Malayalam Capcha ===&lt;br /&gt;
Responsibility --&amp;gt; Hrishikesh &lt;br /&gt;
&lt;br /&gt;
=== Letter splitter ===&lt;br /&gt;
&lt;br /&gt;
=== Fortune Malayalam ===&lt;br /&gt;
&lt;br /&gt;
=== Hyphenation ===&lt;br /&gt;
&lt;br /&gt;
=== Paralperu ===&lt;br /&gt;
&lt;br /&gt;
=== Sharika ===&lt;br /&gt;
&lt;br /&gt;
=== Malayalam Matrix - Screen saver ===&lt;br /&gt;
No much work.&lt;br /&gt;
&lt;br /&gt;
=== Libre Office auto correct ===&lt;br /&gt;
Responsibility --&amp;gt; Manoj&lt;br /&gt;
&lt;br /&gt;
=== Orca ===&lt;br /&gt;
Sathyasheelan sir will help&lt;br /&gt;
&lt;br /&gt;
=== Sharada Braille Writer ===&lt;br /&gt;
Nalin will help&lt;br /&gt;
&lt;br /&gt;
=== Scribus Malayalam ===&lt;br /&gt;
Anil will help&lt;br /&gt;
&lt;br /&gt;
=== OCR ===&lt;br /&gt;
&lt;br /&gt;
=== Machine translation ===&lt;br /&gt;
Responsibility --&amp;gt; Aboobacker&lt;br /&gt;
&lt;br /&gt;
=== Scan tyler demo ===&lt;br /&gt;
&lt;br /&gt;
=== Help desk ===&lt;br /&gt;
Of free software user group ilegtvm, ilegcochin..)&lt;br /&gt;
Coordination --&amp;gt; Soorah Kennoth&lt;br /&gt;
&lt;br /&gt;
=== Irumbanam school ===&lt;br /&gt;
Tux paint + Subtitle activities by students from Irumbanam School&lt;br /&gt;
Responsibility --&amp;gt; Sanal Kumar Sir&lt;br /&gt;
&lt;br /&gt;
=== IT@School ===&lt;br /&gt;
IT@School has to be officially invited&lt;br /&gt;
&lt;br /&gt;
=== Wikipedia + other wiki projects ===&lt;br /&gt;
A wiki page has been created for the event.&lt;br /&gt;
&lt;br /&gt;
=== Bloggers&#039; union ===&lt;br /&gt;
&lt;br /&gt;
=== M3DB + Eenam ===&lt;br /&gt;
Responsibility --&amp;gt; Manoj &lt;br /&gt;
&lt;br /&gt;
=== Malayalam Subtitles M-zone ===&lt;br /&gt;
&lt;br /&gt;
=== Logopedia ===&lt;br /&gt;
&lt;br /&gt;
=== Sayahnna ===&lt;br /&gt;
Manoj&lt;br /&gt;
&lt;br /&gt;
=== Chamba ===&lt;br /&gt;
&lt;br /&gt;
=== Diaspora and Savepoddery ===&lt;br /&gt;
Substitute social network.&lt;/div&gt;</summary>
		<author><name>Nandaja</name></author>
	</entry>
	<entry>
		<id>https://wiki.smc.org.in/index.php?title=%E0%B4%B8%E0%B5%8D%E0%B4%B5%E0%B4%A4%E0%B4%A8%E0%B5%8D%E0%B4%A4%E0%B5%8D%E0%B4%B0%E0%B4%AE%E0%B4%B2%E0%B4%AF%E0%B4%BE%E0%B4%B3%E0%B4%82%E0%B4%95%E0%B4%AE%E0%B5%8D%E0%B4%AA%E0%B5%8D%E0%B4%AF%E0%B5%82%E0%B4%9F%E0%B5%8D%E0%B4%9F%E0%B4%BF%E0%B4%99%E0%B5%8D%E0%B4%99%E0%B4%BF%E0%B4%A8%E0%B5%8D%E0%B4%B1%E0%B5%86_%E0%B4%92%E0%B4%B0%E0%B5%81_%E0%B4%B5%E0%B5%8D%E0%B4%AF%E0%B4%BE%E0%B4%B4%E0%B4%B5%E0%B4%9F%E0%B5%8D%E0%B4%9F%E0%B4%82/%E0%B4%B8%E0%B4%BE%E0%B4%99%E0%B5%8D%E0%B4%95%E0%B5%87%E0%B4%A4%E0%B4%BF%E0%B4%95%E0%B4%AA%E0%B5%8D%E0%B4%B0%E0%B4%A6%E0%B4%B0%E0%B5%8D%E2%80%8D%E0%B4%B6%E0%B4%A8%E0%B4%82/en&amp;diff=4382</id>
		<title>സ്വതന്ത്രമലയാളംകമ്പ്യൂട്ടിങ്ങിന്റെ ഒരു വ്യാഴവട്ടം/സാങ്കേതികപ്രദര്‍ശനം/en</title>
		<link rel="alternate" type="text/html" href="https://wiki.smc.org.in/index.php?title=%E0%B4%B8%E0%B5%8D%E0%B4%B5%E0%B4%A4%E0%B4%A8%E0%B5%8D%E0%B4%A4%E0%B5%8D%E0%B4%B0%E0%B4%AE%E0%B4%B2%E0%B4%AF%E0%B4%BE%E0%B4%B3%E0%B4%82%E0%B4%95%E0%B4%AE%E0%B5%8D%E0%B4%AA%E0%B5%8D%E0%B4%AF%E0%B5%82%E0%B4%9F%E0%B5%8D%E0%B4%9F%E0%B4%BF%E0%B4%99%E0%B5%8D%E0%B4%99%E0%B4%BF%E0%B4%A8%E0%B5%8D%E0%B4%B1%E0%B5%86_%E0%B4%92%E0%B4%B0%E0%B5%81_%E0%B4%B5%E0%B5%8D%E0%B4%AF%E0%B4%BE%E0%B4%B4%E0%B4%B5%E0%B4%9F%E0%B5%8D%E0%B4%9F%E0%B4%82/%E0%B4%B8%E0%B4%BE%E0%B4%99%E0%B5%8D%E0%B4%95%E0%B5%87%E0%B4%A4%E0%B4%BF%E0%B4%95%E0%B4%AA%E0%B5%8D%E0%B4%B0%E0%B4%A6%E0%B4%B0%E0%B5%8D%E2%80%8D%E0%B4%B6%E0%B4%A8%E0%B4%82/en&amp;diff=4382"/>
		<updated>2013-09-17T07:17:23Z</updated>

		<summary type="html">&lt;p&gt;Nandaja: Created page with &amp;quot;The technical exhibitions for the twelfth anniversary programs of Swathanthra Malayalam Computing to be held on 14th and 15th of October at Thrissur, Sahithya Academy hall wil...&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;The technical exhibitions for the twelfth anniversary programs of Swathanthra Malayalam Computing to be held on 14th and 15th of October at Thrissur, Sahithya Academy hall will be compiled in this page.&lt;br /&gt;
&lt;br /&gt;
Nandaja, Arjun and Manoj are mainly in charge of this programs.&lt;br /&gt;
&lt;br /&gt;
=== Malayalam Computing Milestones/History ===&lt;br /&gt;
Details has to be collected and documents. Posters are to be made. --&amp;gt; Anivar, Sooraj&lt;br /&gt;
&lt;br /&gt;
=== Swathanthra Malayalam Computing ===&lt;br /&gt;
Milestones/history of SMC so far. &lt;br /&gt;
&lt;br /&gt;
=== Freedom toaster + Install fest ===&lt;br /&gt;
Responsibility to get freedom toaster ready --&amp;gt; Anish, Sooraj&lt;br /&gt;
&lt;br /&gt;
=== Fonts ==&lt;br /&gt;
(Fonts maintained by SMC, other free software fonts, Battathiri&#039;s Calligraphy, Magra, typography etc will be exhibited.)&lt;br /&gt;
Responsibility --&amp;gt; Arjun, Hiran Venugopalan&lt;br /&gt;
&lt;br /&gt;
=== Wiki Grandhasala ===&lt;br /&gt;
Responsibility --&amp;gt; Manoj&lt;br /&gt;
&lt;br /&gt;
=== Publication ===&lt;br /&gt;
(Books printed in original script. A similar idea was presented by Rachana Aksharavedi in last year&#039;s book fest.)&lt;br /&gt;
Responsibility --&amp;gt; Hussain Sir, Hrishikesh&lt;br /&gt;
&lt;br /&gt;
=== Silpa project ===&lt;br /&gt;
Swathanthra Indian Language Processing Application&lt;br /&gt;
In charge --&amp;gt; Anish, Hrishikesh&lt;br /&gt;
&lt;br /&gt;
=== Typing tools ===&lt;br /&gt;
(Varamozhi, keyman, Swanalekha, Inscript, Narayam, Lalitha, Varnam, ULS etc.)&lt;br /&gt;
Everything has to be documented neatly and made presentable&lt;br /&gt;
In charge --&amp;gt; Balu&lt;br /&gt;
&lt;br /&gt;
=== Localization hut ===&lt;br /&gt;
(Introducing different localization projects)&lt;br /&gt;
Responsibility --&amp;gt; Ani peter&lt;br /&gt;
&lt;br /&gt;
=== Dictionary - Olam ===&lt;br /&gt;
Responsibility --&amp;gt; Kailash Nath&lt;br /&gt;
&lt;br /&gt;
=== Grandhasoochi ===&lt;br /&gt;
Responsibility --&amp;gt; Ershad, Anivar&lt;br /&gt;
&lt;br /&gt;
=== Dhwani ===&lt;br /&gt;
Will be made presentable by Santhosh/Kavya&lt;br /&gt;
&lt;br /&gt;
=== Android Malayalam ===&lt;br /&gt;
Responsibility --&amp;gt; Jishnu&lt;br /&gt;
&lt;br /&gt;
=== Malayalam Mapping (GIS) ===&lt;br /&gt;
Responsibility ---&amp;gt; Jaisen Nedumpala&lt;br /&gt;
&lt;br /&gt;
=== Payyans and Chathans (ASCII to Unicode) ===&lt;br /&gt;
Responsibility --&amp;gt; Manoj&lt;br /&gt;
&lt;br /&gt;
=== Malayalam Spellchecker ===&lt;br /&gt;
Responsibility --&amp;gt; Santhosh/Kavya&lt;br /&gt;
&lt;br /&gt;
=== Malayalam Capcha ===&lt;br /&gt;
Responsibility --&amp;gt; Hrishikesh &lt;br /&gt;
&lt;br /&gt;
=== Letter splitter ===&lt;br /&gt;
&lt;br /&gt;
=== Fortune Malayalam ===&lt;br /&gt;
&lt;br /&gt;
=== Hyphenation ===&lt;br /&gt;
&lt;br /&gt;
=== Paralperu ===&lt;br /&gt;
&lt;br /&gt;
=== Sharika ===&lt;br /&gt;
&lt;br /&gt;
=== Malayalam Matrix - Screen saver ===&lt;br /&gt;
No much work.&lt;br /&gt;
&lt;br /&gt;
=== Libre Office auto correct ===&lt;br /&gt;
Responsibility --&amp;gt; Manoj&lt;br /&gt;
&lt;br /&gt;
=== Orca ===&lt;br /&gt;
Sathyasheelan sir will help&lt;br /&gt;
&lt;br /&gt;
=== Sharada Braille Writer ===&lt;br /&gt;
Nalin will help&lt;br /&gt;
&lt;br /&gt;
=== Scribus Malayalam ===&lt;br /&gt;
Anil will help&lt;br /&gt;
&lt;br /&gt;
=== OCR ===&lt;br /&gt;
&lt;br /&gt;
=== Machine translation ===&lt;br /&gt;
Responsibility --&amp;gt; Aboobacker&lt;br /&gt;
&lt;br /&gt;
=== Scan tyler demo ===&lt;br /&gt;
&lt;br /&gt;
=== Help desk ===&lt;br /&gt;
Of free software user group ilegtvm, ilegcochin..)&lt;br /&gt;
Coordination --&amp;gt; Soorah Kennoth&lt;br /&gt;
&lt;br /&gt;
=== Irumbanam school ===&lt;br /&gt;
Tux paint + Subtitle activities by students from Irumbanam School&lt;br /&gt;
Responsibility --&amp;gt; Sanal Kumar Sir&lt;br /&gt;
&lt;br /&gt;
=== IT@School ===&lt;br /&gt;
IT@School has to be officially invited&lt;br /&gt;
&lt;br /&gt;
=== Wikipedia + other wiki projects ===&lt;br /&gt;
A wiki page has been created for the event.&lt;br /&gt;
&lt;br /&gt;
=== Bloggers&#039; union ===&lt;br /&gt;
&lt;br /&gt;
=== M3DB + Eenam ===&lt;br /&gt;
Responsibility --&amp;gt; Manoj &lt;br /&gt;
&lt;br /&gt;
=== Malayalam Subtitles M-zone ===&lt;br /&gt;
&lt;br /&gt;
=== Logopedia ===&lt;br /&gt;
&lt;br /&gt;
=== Sayahnna ===&lt;br /&gt;
Manoj&lt;br /&gt;
&lt;br /&gt;
=== Chamba ===&lt;br /&gt;
&lt;br /&gt;
=== Diaspora and Savepoddery ===&lt;br /&gt;
Substitute social network.&lt;/div&gt;</summary>
		<author><name>Nandaja</name></author>
	</entry>
	<entry>
		<id>https://wiki.smc.org.in/index.php?title=User:Nandaja/GSoC_2013_Automated_Rendering_Testing&amp;diff=4362</id>
		<title>User:Nandaja/GSoC 2013 Automated Rendering Testing</title>
		<link rel="alternate" type="text/html" href="https://wiki.smc.org.in/index.php?title=User:Nandaja/GSoC_2013_Automated_Rendering_Testing&amp;diff=4362"/>
		<updated>2013-09-09T10:05:39Z</updated>

		<summary type="html">&lt;p&gt;Nandaja: /* Progress */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== &#039;&#039;&#039;Personal information&#039;&#039;&#039; ==&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;Name&#039;&#039;&#039;: Nandaja Varma&lt;br /&gt;
* &#039;&#039;&#039;Email Address&#039;&#039;&#039;: &amp;lt;nandaja.varma AT gmail DOT com&amp;gt;&lt;br /&gt;
* &#039;&#039;&#039;Freenode IRC Nick&#039;&#039;&#039;: gem&lt;br /&gt;
* &#039;&#039;&#039;University and current education&#039;&#039;&#039; ː BTech Computer Science, Calicut University (NSS College palakkad)&lt;br /&gt;
* &#039;&#039;&#039;Blog URL&#039;&#039;&#039;: nandajavarma.wordpress.com&lt;br /&gt;
&lt;br /&gt;
===Why do you want to work with the Swathanthra Malayalam Computing?===&lt;br /&gt;
&lt;br /&gt;
Since I came to know about the activities of SMC (That would be by the starting of my second year studies at college), I wanted to be a part of this community and make some significant contributions to it. I see this as a great opportunity for it. Would like to do the same through any other means possible, as well. &lt;br /&gt;
&lt;br /&gt;
===Do you have any past involvement with the Swathanthra Malayalam Computing or another open source project as a contributor?===&lt;br /&gt;
 &lt;br /&gt;
Yes, I have recently started contributing to SMC&#039;s Gnome localization team. I make contributions to Debian community as a packager, mainly  packaging Ruby gems for Debian. I also got involved in digitalization works with Malayalam Wikigrandhashala recently. &lt;br /&gt;
&lt;br /&gt;
===Did you participate with the past GSoC programs, if so which years, which organizations?===&lt;br /&gt;
&lt;br /&gt;
No, I did not.&lt;br /&gt;
&lt;br /&gt;
===Do you have other obligations between May and August? Please note that we expect the Summer of Code to be a full time, 40 hours a week commitment ?===&lt;br /&gt;
&lt;br /&gt;
I have no other obligations whatsoever between the proposed months. I will be able to make this 40 hours a week commitment GSoC.&lt;br /&gt;
&lt;br /&gt;
===Will you continue contributing/ supporting the Swathanthra Malayalam Computing after the GSoC 2013 program, if yes, which area(s), you are interested in?===&lt;br /&gt;
&lt;br /&gt;
Yes, Most definitely. I would like to continue my contributions with the localization works as translation is one of my area of            interests. I would also like to make major contributions to SMC&#039;s rendering fixing related works. &lt;br /&gt;
&lt;br /&gt;
===Why should we choose you over other applicants?===&lt;br /&gt;
&lt;br /&gt;
I have understanding of the rendering engine, Harfbuzz&#039;s working and I have played with a couple of scripts which basically prints the glyph index of a particular text in a particular font. As of implementing my project idea, I have good knowledge in C programming language and have good reading and writing skills in Malayalam. This would definitely help me in creating the list of base glyph words for this project. Also I also have quite a clear knowledge on test rendering stack and its constituent modules.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Project Description ==&lt;br /&gt;
&lt;br /&gt;
===An Overview of your proposal===&lt;br /&gt;
&lt;br /&gt;
Harfbuzz is an opensource development library for shaping Unicode text, specifically complex scripts. Developing an automated mechanism to test what has been rendered by harfbuzz for different Indic languages is the main objective of this project. As of now, there is no actual mechanism to check if Harfbuzz is rendering the text correctly. As harfbuzz is a very efficient, widely used and undoubtedly about to be used for a long time to come, the project is highly relevant. The proposed system has the ability to test renderings in different indic languages using different fonts.&lt;br /&gt;
&lt;br /&gt;
===The need you think it fulfills===&lt;br /&gt;
&lt;br /&gt;
Implementation of the above mentioned idea can make sure that what is being rendered be harfbuzz is actually correct. It would make it easier for developers or users if such a mechanism exists because now the only way to do is manually testing it, which can be time consuming and is error prone. Also, anyone can get the renderings tested even if she knows the particular language that  is being rendered or not. &lt;br /&gt;
&lt;br /&gt;
===Any relevant experience you have===&lt;br /&gt;
&lt;br /&gt;
I have decent knowledge in C programming language, in which Harfbuzz is implemented. I am quite familiar with harfbuzz architecture and its renderings. Also my knowledge on test rendering stacks, glyphs and Unicode encoding would definitely help in taking me further. I also have experience in localization and digitalization works which, I hope, will help me at some points of the project.&lt;br /&gt;
&lt;br /&gt;
===How you intend to implement your proposal===&lt;br /&gt;
&lt;br /&gt;
Harfbuzz is a shape rendering engine for Unicode text, especially complex scripts. Harfbuzz basically offers two utilities hb-view and hb-shape for testing and viewing the rendering. hb-view gives as its output the view of the rendered unicode character based on its font, basically as an image where as hb-shape actually gives as its output the glyph index of that particular character based on its font. For example if we give the command: &lt;br /&gt;
hb-view Rachana.ttf മലയാളം , We get an output like this: [m1=0+1046|l3=1+1462|y1=2+1624|uni0D3E=2+826|lh=4+1134|uni0D02=4+856], which is basically the glyph index of the word &#039;മലയാളം&#039;. Glyphs represent the shapes that characters can have when they are rendered or displayed. Opentype is the prominent font standard used today. Opentype font technology deals with glyphs where as Unicode deals with characters. Glyph indices are mapping between a Unicode character to its corresponding glyph(s). So Glyph indices are one of the most important things to be dealt with when it comes to rendering.&lt;br /&gt;
&lt;br /&gt;
So, to implement this idea of making the testing automated, What will be done is evaluating the output of hb-shape functionality. As it shows the glyph index of any word that we give as input, we can check this value for correctness. So the methodology to be followed to check this for correctness will be as follows:&lt;br /&gt;
Create a baseline glyph  words list that consist of a word and it&#039;s corresponding glyph index for each font. This must contain the correct rendering of each of the words specified. We will have to create this particular list for every indic language for which we are planning to implement this testing. For creating this table, we can make use of fontforge, which is a font editor that can be used to create fonts. So we will get the layout of each character in this application. We can create a baseline glyph words table using the glyph index data that we can fetch from fontforge for different indic languages. But, obviously, we cannot create a table with every single character or character combinations possible, which is difficult as well as less efficient as it will drastically affect the comparing procedure. So special care should be taken to create a table that consists of most important characters that might go wrong and should not, special case characters , etc. We have to intelligently pick the words or character combinations which can significantly decrease the total number of entries in this list, which presumably can be entered into a database or a more efficient database like a hash table or a trie can be used to fastly search for the data while providing our list as a separate text file. &lt;br /&gt;
&lt;br /&gt;
Then script should be written, in C,  to accept hb-shape output as input and then check it against out baseline glyph word, find the exact matching word as see if the glyph indices match. If it doesn&#039;t, then that can be flagged as being incorrectly rendered. Also, it might so happen that the comparing words do not appear in the list we provide. Here comes the efficiency of the words we have chosen. Either we can assume that the particular word or character is very rarely used or assume that the word input was given wrong. If the hit of a same word happens more than a certain number of times we can say that out assumptions were wrong and we can think of a mechanism to get this particular word flagged and then add its  corresponding glyph index, as an upgrade.&lt;br /&gt;
&lt;br /&gt;
Also, to interact with this proposed library, a Web front end can also be made, in PHP, to make it more user friendly rather that using the command line.&lt;br /&gt;
&lt;br /&gt;
===A rough timeline for your progress with phases===&lt;br /&gt;
* &#039;&#039;&#039;Week 1 - 2&#039;&#039;&#039;   : Learn more about Opentype and Unicode. Learn well the way usually font shapes are rendered in engines and how to they appear when we combine characters to words and what will the changes happened to the glyph indices be.&lt;br /&gt;
* &#039;&#039;&#039;Week 2 - 3&#039;&#039;&#039;   : Create a list of words or characters in Unicode that necessarily is needed to test against with harfbuzz output. Most preferably, this one in Malayalam. Select the words efficiently to make the whole list effective as well as concise. &lt;br /&gt;
* &#039;&#039;&#039;Week 4 - 5&#039;&#039;&#039;   : Start coding for the application with the collected data as the baseline.&lt;br /&gt;
* &#039;&#039;&#039;week 6&#039;&#039;&#039;     : Test the code against some Harfbuzz Malayalam Renderings against the provided list and make changes accordingly to make it perform perfect and faster.&lt;br /&gt;
* &#039;&#039;&#039;Week 7 - 8&#039;&#039;&#039;   : Create the baseline glyph word index for as many indic languages as possible, although there is time and linguistic barriers. Planning to collect it at least for Hindi.&lt;br /&gt;
* &#039;&#039;&#039;Week 9&#039;&#039;&#039;     : Creating the web front end for the application.&lt;br /&gt;
* &#039;&#039;&#039;Week 10&#039;&#039;&#039;    : Testing, reviewing and documentation.&lt;br /&gt;
&lt;br /&gt;
===Tell us something about you have created===&lt;br /&gt;
&lt;br /&gt;
I have created a prototype search engine, using Hadoop in the back end and python for further ranking processes with a web page as an interface.&lt;br /&gt;
&lt;br /&gt;
===Have you communicated with a potential mentor? If so who?===&lt;br /&gt;
&lt;br /&gt;
Yes, I have communicated with the mentor Rajeesh K Nambiar.&lt;br /&gt;
&lt;br /&gt;
===SMC Wiki link of your proposal===&lt;br /&gt;
&lt;br /&gt;
[http://wiki.smc.org.in/index.php?title=User:Nandaja/GSoC_2013_Automated_Rendering_Testing SMC wiki link ]&lt;br /&gt;
&lt;br /&gt;
==Progress==&lt;br /&gt;
&lt;br /&gt;
===20/07/2013===&lt;br /&gt;
&lt;br /&gt;
* Started coding for the project three days ago. &lt;br /&gt;
* As for my current developing code the inputs needed are a file with a list of words/characters, the rendering of which are to be tested. Along with that, the correct glyph names of the words/characters. This is extracted manually from font forge at the moment. Eg: ക[k1]&lt;br /&gt;
* The next file needed is a file with output of harfbuzz renderings of all the words/characters chosen for testing. A separate script is written for this purpose which is to be executed on the test words file which will yield an output of the form: ക[k1=0+1588]. This is actually the output of hb-shape command. The value following the = will be ignored for now.&lt;br /&gt;
* In the testing script, the first file will be opened, read the characters appearing before [, i.e our word/character. Then until the ] sign is encountered the strings(elimination =, + and digits) will be added to an array. The same character will be looked up in the harfbuzz rendered outputs&#039; file and the glyph names will be similarly collected in an array.&lt;br /&gt;
* Then compare the two strings. If both are the same we enter a value 0 to a check array. Check[i] = 0. Otherwise, check[i] = 1.&lt;br /&gt;
* The last two steps are repeated until end of the file is encountered.&lt;br /&gt;
* After that, we look up the check array. All the words listed at ith position with check[i] = 1 will be stored on to a separate file.&lt;br /&gt;
* Finally we can run another script on this results file to get the hb-view outputs of these words to get a better understanding of the rendering mistake. &lt;br /&gt;
* Further corrections to the above algorithm will be updated periodically.&lt;br /&gt;
&lt;br /&gt;
===29/07/2013===&lt;br /&gt;
&lt;br /&gt;
Coding period for GSoC has started the past week and I have been working on a very simple implementation of the proposal in C and two tiny bash scripts. My code is available here: https://gitlab.com/gem/automated-rendering-testing&lt;br /&gt;
&lt;br /&gt;
The first thing to be done to test using these scripts is create a file that contains a set of words to be tested to see if their rendering is correct. Here I have taken a sample test data file created by SMC a while ago (ml-harfbuzz-testdata,txt). Now pass this file through the script render_test.sh along with the necessary font file. That is:&lt;br /&gt;
&lt;br /&gt;
./render_test.sh ml-harfbuzz-testdata.txt /path/to/fontfile&lt;br /&gt;
&lt;br /&gt;
This will create a file named rendered_glyphs.txt that contains the output of hb-shape function of harfbuzz, i.e. the glyph name followed by some additional numbers (which will be ignored for now).&lt;br /&gt;
&lt;br /&gt;
Now create a file that contains the actual glyph names of the words in the the test data wordfile. I got the data from font forge. This has to be created manually and, as of now, obeying the following structure:&lt;br /&gt;
&lt;br /&gt;
[glyph11,glyph12,glyph13,...,glyph1n]&lt;br /&gt;
&lt;br /&gt;
[glyph21,glyph22,glyph33,....,glyph2n]&lt;br /&gt;
&lt;br /&gt;
.&lt;br /&gt;
&lt;br /&gt;
.&lt;br /&gt;
&lt;br /&gt;
.&lt;br /&gt;
&lt;br /&gt;
Also make sure that glyph names of each word is in the same order as that of the corresponding words in the test data file. I have named it orig_glyphs.txt Once this is done, we can pass the above two files through the executable of the script rendering_testing.c, say rendering_testing. That is:&lt;br /&gt;
&lt;br /&gt;
./rendering_testing orig_glyphs.txt rendered_glyphs.txt&lt;br /&gt;
&lt;br /&gt;
This script will compare the glyphs in order and if it find any pairs that doesn’t match, it will write to a file, result.txt, the line number in which the word appears in the test data file. Otherwise it will tell you the renderings are perfect.&lt;br /&gt;
&lt;br /&gt;
Once this is done, to see the words with wrong renderings we will have to run the third script show_rendering.sh. It takes as input the result.txt file, the test data file and also the font file. That is:&lt;br /&gt;
&lt;br /&gt;
./show_rendering.sh result.txt ml-harfbuzz-testdata.txt /path/to/fontfile&lt;br /&gt;
&lt;br /&gt;
This script will create png images of the wrongly rendered words in the current directory.&lt;br /&gt;
&lt;br /&gt;
That is all about my scripts. But the C code is very much inefficient. It even spits segmentation faults with some files. Once I make sure that I am on the right path after discussing with my mentor, I will be working on improving my algorithm and making this code better. That would be my next week’s work.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===14/07/2013===&lt;br /&gt;
&lt;br /&gt;
This week I&#039;ve been working on generating a baseline glyphs file for 4 fonts: Rachana, Meera, Suruma and Lohith-Malayalam. I have selected some malayalam words from harfbuzz tree and Santhosh Thottingal&#039;s test cases which I thought would be enough to test rendering problems. Then I started listing the glyph names of these files for each fonts in separate text files. To get the corresponding Unicode code point of each word, I wrote a small Java code. So I executed the script on each word, found all the code points and made 4 text files that contains the corresponding glyph names of the four fonts I mentioned earlier. &lt;br /&gt;
&lt;br /&gt;
Although my mentor did tell me that it is not possible to generate glyph names automatically, I wasted more than a couple of days on a Font Forge script to make it automatically output the glyph names. But that gives the glyph name only if we click on each character, which became terribly disappointing. So instead I used it to make the baseline glyphs file in the structure I want if I click on the necessary characters. But this code is trivial as far as rendering testing is concerned and will leave it out from now (Just noting it down as it wasted a very non-trivial amount of my time ;-) ).&lt;br /&gt;
&lt;br /&gt;
I have modified the main C code such that it will ask the tester which font she wants and after choosing the one she needs it will output the result based on the words I have given.&lt;br /&gt;
&lt;br /&gt;
But my mentor pointed out that it looks quite messy looking at codes in 3 different languages for a single framework so I&#039;ll be re-writing my code in Python this week.&lt;br /&gt;
&lt;br /&gt;
You can find my code here: https://github.com/nandajavarma/Automated-Rendering-Testing (although the README is not up-to-date)&lt;br /&gt;
&lt;br /&gt;
(The above content are from my blog: http://nandajavarma.wordpress.com/)&lt;br /&gt;
&lt;br /&gt;
===21/7/13===&lt;br /&gt;
&lt;br /&gt;
This week my main task was to migrate my code to Python. As of now I have&lt;br /&gt;
implemented my algorithm in Python. Here is the link to the repo: https://gitlab.com/gem/automated-rendering-testing/tree/master&lt;br /&gt;
&lt;br /&gt;
I have expanded my test cases&#039; list a bit. Now it has 243 Malayalam words.&lt;br /&gt;
I have manually created files with glyph names of these test cases in four&lt;br /&gt;
fonts: Rachana, Meera, Suruma and Lohith-Malayalam in files names&lt;br /&gt;
rachana-glyph.txt,  meera-glyph.txt etc. (It is still a bit buggy, so&lt;br /&gt;
haven&#039;t pushed the latest commit of this yet).&lt;br /&gt;
&lt;br /&gt;
What the code basically does is, it will ask the tester which font she/he&lt;br /&gt;
wants to test in. Say it is Meera. The code will look for the reference&lt;br /&gt;
file which we have manually created and the file with harfbuzz renderings&lt;br /&gt;
of the test cases, named hb_meera_rendering.txt. This file can be created&lt;br /&gt;
by running harfbuzzrendering.py script with proper font files in the&lt;br /&gt;
current directory. The main script rendering_testing.py will scan both&lt;br /&gt;
these files and compare the glyph name corresponding to each word and&lt;br /&gt;
stores the wrongly rendered words to a new list. Finally hb-view will be&lt;br /&gt;
executed on the words inside this list and a file named output.png will be&lt;br /&gt;
generated in the same directory that pictorially represents the wrong&lt;br /&gt;
renderings.&lt;br /&gt;
&lt;br /&gt;
One can even provide a separate test cases files (but by preparing the&lt;br /&gt;
reference file in specific structure) and/or a separate font (but&lt;br /&gt;
generating the renderings files directly by running hb-view on the test&lt;br /&gt;
cases) . If the font file of any of these given four fonts are being&lt;br /&gt;
updated, just copy the new version and execute the harfbuzzrendering.py&lt;br /&gt;
script. Then testing can be done as mentioned earlier.&lt;br /&gt;
&lt;br /&gt;
The baseline glyph names&#039; files aren&#039;t ready yet with complete glyph names&lt;br /&gt;
of all the 243 words. Will be able to complete it within 1-2 days.&lt;br /&gt;
&lt;br /&gt;
===28/7/13===&lt;br /&gt;
&lt;br /&gt;
The works this week has been a little slow with college exams and assignments. This is what I have done so far this week.&lt;br /&gt;
&lt;br /&gt;
I have completed the list of reference files containing glyph names of 243 words from four fonts each. Fonts being: Rachana, Meera, Suruma and Lohit-Malayalaam.&lt;br /&gt;
&lt;br /&gt;
The code has been modified to equip not only harfbuzz renderings but renderings from other engines line Uniscribe, provided the user will produce the output of the rendering engine herself/himself. I have created a Python package containing 2 modules each for testing and creating output. The main script automated_rendering_testing.py  will make use of this package to test and give the final result. To test the framework, one can just run ./automated_rendering_testing and then provide the necessary  information, when asked.&lt;br /&gt;
&lt;br /&gt;
Coming to the tester, first it will compare the reference file and the rendering output. The it will create a file named result.txt containing the wrongly rendered words along with the number corresponding to the word in test cases’ file. This file is used only to create the png file of the wrongly rendered words, if the engine is harfbuzz. Other wise this file is ignored. Now the actual output is a file test_result.txt with the format:&lt;br /&gt;
&lt;br /&gt;
Sl.No Word Rendering status(correct/wrong)&lt;br /&gt;
&lt;br /&gt;
User can view this file, see the status and see the wrongly rendered word.&lt;br /&gt;
The agenda for this week is to re-write the whole code in C.&lt;br /&gt;
One can view code from here: https://github.com/nandajavarma/Automated-Rendering-Testing&lt;br /&gt;
&lt;br /&gt;
===11/06/2013===&lt;br /&gt;
&lt;br /&gt;
The following modifications were asked to be made on the existing framework by my mentor after a Hangout session as part of the evaluations:&lt;br /&gt;
&lt;br /&gt;
1. Modify the comparison algorithm so as to show positive results for the words with multiple correct renderings - This modification is made. Now, the user can give multiple glyph names separated by comma in the reference file and if the rendering matches any one of these, the framework will return a positive response.&lt;br /&gt;
&lt;br /&gt;
2. Modify the reference glyph file, adding the glyph names of words with multiple correct renderings. Also some corrections were asked to be made in the existing reference file. &lt;br /&gt;
&lt;br /&gt;
3. Modify the framework such that the user can even test by giving the file names as parameters. This one needs a little more work as I didn&#039;t give options in argument parser for all the necessary file inputs. Will update this soon.&lt;br /&gt;
&lt;br /&gt;
Along with these some minor fixes were asked to be done on the script and all those are taken care of.&lt;br /&gt;
&lt;br /&gt;
As for the further developments, planned to create a web interface for this framework. I am trying to create this interface using Flask and I am currently working on it.&lt;br /&gt;
After that, the framework will be implemented in C. I have added a partially working implementation of this in the repo. &lt;br /&gt;
After the completion of all these, if time permits, references for other fonts are also planned to be made.&lt;br /&gt;
&lt;br /&gt;
Find my code here: https://gitlab.com/gem/automated-rendering-testing/tree/master&lt;br /&gt;
&lt;br /&gt;
===17/08/2013===&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
I have changed the framework interface from its previous form, although the previous front end automated_rendering_testing.py is still present in the repo. Now the new interface, rendering_testing.py, need all the file names to be provided as command line arguments. The user gets the convenience  of using the tab completion this way. The user will have to give as command line arguments 6 files (font  file, test cases file, reference file, rendering output and files to store output) and an optional directory name(if the engine is harfbuzz).&lt;br /&gt;
&lt;br /&gt;
If the rendering engine is harfbuzz, user can run the script generate_hb_rendering.py  along with the test cases file and font file as parameters, to create the rendered output file. If that is not the case, the user will have to create this file as well in the prescribed form. &lt;br /&gt;
&lt;br /&gt;
Now, the algorithm that actually test the rendering was a bit buggy and was giving certain wrong outputs for words with multiple rendering engines and I have cleared this error. This feature gives correct output now for the files I tried it with. &lt;br /&gt;
The next thing I am working on is the web interface and I am using Flask framework. Will make this code public as soon as I get the script running from the page. &lt;br /&gt;
Find the code here: https://gitlab.com/gem/automated-rendering-testing/tree/master&lt;br /&gt;
More info in the README&lt;br /&gt;
&lt;br /&gt;
===25/08/2013===&lt;br /&gt;
&lt;br /&gt;
The work of mine has been correcting the reference glyph files and developing a web interface for the proposed framework. I had tried and made the reference files least buggy as possible. I have gone through the glyph names of almost all the 243 words in 4 fonts. I had to invest a lot of time on this especially due to one minor misunderstanding of mine on the multiple correct renderings of the words. And I hope it will get much refined after Rajeeshettan proof read it for 2 fonts as he has suggested.&lt;br /&gt;
(I have changed the renderings of words with repham in Rachana such that the dotreph comes first. So words like these http://troll.ws/image/2e3a872e, http://troll.ws/image/469dd87a, http://troll.ws/image/5838dbec although looks correct, will be in the wrongly rendered words list by harfbuzz.)&lt;br /&gt;
&lt;br /&gt;
The next part of this weeks work was developing the web interface (Excuse my poor design, I am cleaning it up as I write). It doesn&#039;t actually spits output to the user now or doesn&#039;t make it easier for the user to open files. I am hoping to make it run the script well in a week&#039;s time and don&#039;t think it is ready yet for the review. So I would like another week to make it ready for reviewing.&lt;br /&gt;
&lt;br /&gt;
And finally about the C code I have added to the repo. I will start working on a new code in C++ once I am done with the webpage as I find the present code massively buggy and really inefficient. I hope I&#039;ll be able to update it the week after next.&lt;br /&gt;
&lt;br /&gt;
My code here: https://gitlab.com/gem/automated-rendering-testing/tree/master&lt;br /&gt;
&lt;br /&gt;
===9/09/2013===&lt;br /&gt;
&lt;br /&gt;
Here is the present status of the project.&lt;br /&gt;
&lt;br /&gt;
* The testing framework now can evaluate words with multiple correct renderings, provided the correct renderings are provided in the reference file separated by semi colon.&lt;br /&gt;
&lt;br /&gt;
* Reference glyph for both Rachana and Meera has been updated as per the latest updates (changes in glyph names) in the upstream.&lt;br /&gt;
&lt;br /&gt;
* Reference for Devanagari font is being added to the repo.&lt;br /&gt;
&lt;br /&gt;
Present status of the framework is:&lt;br /&gt;
&lt;br /&gt;
* rendering_test.py can accept  up to 7 inputs, which being the test cases file, reference file, rendered output file, font file, output file, error file and a directory name.&lt;br /&gt;
* Of this everything but reference file and rendering output are optional.&lt;br /&gt;
* Output will be produced as per the parameters passed. &lt;br /&gt;
* pep-8 errors reported before has been cleared.&lt;br /&gt;
&lt;br /&gt;
By the end of this week, I am planning to finish:&lt;br /&gt;
&lt;br /&gt;
* Complete Devanagari references&lt;br /&gt;
* The immediate next priority being C++ implementation of the code, I will be working on that.&lt;br /&gt;
* Proof read Suruma and Lohith-Malayalam test cases&lt;br /&gt;
&lt;br /&gt;
Once this is all done, I will work on the web interface.&lt;br /&gt;
&lt;br /&gt;
Find my code here: https://github.com/nandajavarma/Automated-Rendering-Testing&lt;/div&gt;</summary>
		<author><name>Nandaja</name></author>
	</entry>
	<entry>
		<id>https://wiki.smc.org.in/index.php?title=%E0%B4%B8%E0%B5%8D%E0%B4%B5%E0%B4%A4%E0%B4%A8%E0%B5%8D%E0%B4%A4%E0%B5%8D%E0%B4%B0%E0%B4%AE%E0%B4%B2%E0%B4%AF%E0%B4%BE%E0%B4%B3%E0%B4%82%E0%B4%95%E0%B4%AE%E0%B5%8D%E0%B4%AA%E0%B5%8D%E0%B4%AF%E0%B5%82%E0%B4%9F%E0%B5%8D%E0%B4%9F%E0%B4%BF%E0%B4%99%E0%B5%8D%E0%B4%99%E0%B4%BF%E0%B4%A8%E0%B5%8D%E0%B4%B1%E0%B5%86_%E0%B4%92%E0%B4%B0%E0%B5%81_%E0%B4%B5%E0%B5%8D%E0%B4%AF%E0%B4%BE%E0%B4%B4%E0%B4%B5%E0%B4%9F%E0%B5%8D%E0%B4%9F%E0%B4%82/SMC_Camp/Level1&amp;diff=4307</id>
		<title>സ്വതന്ത്രമലയാളംകമ്പ്യൂട്ടിങ്ങിന്റെ ഒരു വ്യാഴവട്ടം/SMC Camp/Level1</title>
		<link rel="alternate" type="text/html" href="https://wiki.smc.org.in/index.php?title=%E0%B4%B8%E0%B5%8D%E0%B4%B5%E0%B4%A4%E0%B4%A8%E0%B5%8D%E0%B4%A4%E0%B5%8D%E0%B4%B0%E0%B4%AE%E0%B4%B2%E0%B4%AF%E0%B4%BE%E0%B4%B3%E0%B4%82%E0%B4%95%E0%B4%AE%E0%B5%8D%E0%B4%AA%E0%B5%8D%E0%B4%AF%E0%B5%82%E0%B4%9F%E0%B5%8D%E0%B4%9F%E0%B4%BF%E0%B4%99%E0%B5%8D%E0%B4%99%E0%B4%BF%E0%B4%A8%E0%B5%8D%E0%B4%B1%E0%B5%86_%E0%B4%92%E0%B4%B0%E0%B5%81_%E0%B4%B5%E0%B5%8D%E0%B4%AF%E0%B4%BE%E0%B4%B4%E0%B4%B5%E0%B4%9F%E0%B5%8D%E0%B4%9F%E0%B4%82/SMC_Camp/Level1&amp;diff=4307"/>
		<updated>2013-08-29T23:03:24Z</updated>

		<summary type="html">&lt;p&gt;Nandaja: /* നന്ദജ */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;ക്യാമ്പുകള്‍ക്ക് ക്ലാസ് എടുക്കാനായി മുന്നോട്ട് വന്നിട്ടുള്ളവര്‍ താഴെപ്പറയുന്നവരാണ്.&lt;br /&gt;
{{TOC hidden}}&lt;br /&gt;
== ഇര്‍ഷാദ് ==&lt;br /&gt;
&lt;br /&gt;
== അനീഷ് ==&lt;br /&gt;
&lt;br /&gt;
== ബാലശങ്കര്‍ ==&lt;br /&gt;
* ചെറിയൊരു program/code പ്രവര്‍ത്തിച്ച് കാണിക്കും.&lt;br /&gt;
* അതിന്റെ പ്രവര്‍ത്തനം വിവരിക്കും&lt;br /&gt;
* അതിന്റെ source code വിശദീകരിക്കും&lt;br /&gt;
* അതിലുള്ള മറ്റു സാധ്യതകള്‍ വിദ്യാര്‍ത്ഥികളെ കൊണ്ട് സ്വയം കണ്ടുപിടിച്ച് നടപ്പില്‍ വരുത്താന്‍ സഹായിക്കും.&lt;br /&gt;
*ആ പ്രവര്‍ത്തത്തില്‍ ഇത്രയും ഉള്‍പ്പെടുന്നു.&lt;br /&gt;
** Bug reporting&lt;br /&gt;
**Error diagnosis&lt;br /&gt;
**Error correction&lt;br /&gt;
**സാഹയം തേടല്‍&lt;br /&gt;
**Bug handling&lt;br /&gt;
**Version control&lt;br /&gt;
**Commeting&lt;br /&gt;
**Documentation&lt;br /&gt;
**Variable naming&lt;br /&gt;
**Optimal coding&lt;br /&gt;
&lt;br /&gt;
ഉദാഹരണങ്ങള്‍ക്ക് ഉപയോഗിക്കുന്ന&lt;br /&gt;
*ഭാഷ: python&lt;br /&gt;
*ഉപയോഗിക്കുന്ന പ്രൊജക്റ്റ്: ശില്പ (മിക്കവാറും)&lt;br /&gt;
*ബഗ് റിപ്പോര്‍ട്ടിങ്ങ് ടൂള്‍:Bugzzilla&lt;br /&gt;
* version controlling: git&lt;br /&gt;
* Editor: vi/nano/gedit&lt;br /&gt;
&lt;br /&gt;
Syatem Requirements:&lt;br /&gt;
OS: Debinan wheezy&lt;br /&gt;
Softwares: git, python, Bugzzilla&lt;br /&gt;
&lt;br /&gt;
== ശ്രീഹരി ==&lt;br /&gt;
&lt;br /&gt;
== നന്ദജ ==&lt;br /&gt;
&lt;br /&gt;
*ലിനക്സിന്റെ സഹായത്തോടെ എങ്ങിനെ നമ്മുടെ വര്‍ക്കുകള്‍ ലഘൂകരിക്കാം. &lt;br /&gt;
*വളരെ ഉപയോഗപ്രതമായ യുണിക്ക്സ് കമാന്റുകള്‍ പരിചയപ്പെടുത്തുക. &lt;br /&gt;
*കൗതുകമേറിയ ചെറിയ സ്ക്രിപ്റ്റുകള്‍ ഗ്രപ്പും മറ്റുമുപയോഗിച്ച് ഡെമോണ്‍സ്ട്രേറ്റ് ചെയ്ത് കമാന്റ് ലൈനിന്റെ സാധ്യതകള്‍ മനസ്സിലാക്കിക്കുക.&lt;br /&gt;
*പ്രോഗ്രാമ്മിങ്ങ് സുഖമമാക്കാന്‍ ഉപയോഗിക്കാവുന്ന ടൂളുകള്‍ പരിചയപ്പെടിത്തി അതിന്റെ സാധ്യതകള്‍ ഡെമോണ്‍സ്ട്രേറ്റ് ചെയ്യുക. (ഈമാക്ക്സ്, വിം, zsh മുതലായവ)&lt;br /&gt;
*ഡെബിയന്‍ ഡിസ്ട്രിബ്യൂഷനെ കുറിച്ച് ചെറിയ സെഷന്‍.&lt;br /&gt;
**പാക്കേജുകള്‍, ഡെബിയന്‍ ആര്‍കൈവ്.&lt;br /&gt;
**ഒപ്പം കമ്മ്യൂണിറ്റി പ്രൊജക്റ്റുകള്‍ എങ്ങനെ നടക്കുന്നു.&lt;br /&gt;
**ബഗ് റിപ്പോര്‍ട്ടിംഗ്&lt;br /&gt;
**മെയിലിങ്ങ് ലിസ്റ്റ് മുതലായ വിഷയങ്ങള്‍&lt;br /&gt;
**ഈ കൂട്ടായ്മയുടെ ഭാഗമായി നമുക്കെങ്ങനെ മാറാമെന്നും എങ്ങനെ ഓപണ്‍ സോഴ്സ് പ്രൊജക്റ്റുകളിലേക്ക് കോണ്‍ട്രിബ്യൂട്ട് ചെയ്യാമെന്നും അത് കൊണ്ടുണ്ടാകാവുന്ന നേട്ടങ്ങളും വിവരിക്കും&lt;br /&gt;
&lt;br /&gt;
System Requirements: OS: Debian&lt;br /&gt;
&lt;br /&gt;
== ജിഷ്ണു ==&lt;br /&gt;
&lt;br /&gt;
== ഹൃഷികേശ് ==&lt;br /&gt;
&lt;br /&gt;
== മനുകൃഷ്ണന്‍ ==&lt;br /&gt;
&lt;br /&gt;
== ആദില്‍ ==&lt;br /&gt;
&lt;br /&gt;
== അബുബക്കര്‍ ==&lt;br /&gt;
&lt;br /&gt;
== രാഹുല്‍ ==&lt;br /&gt;
&lt;br /&gt;
== ശ്രീനാഥ് ==&lt;br /&gt;
&lt;br /&gt;
== സജാദ് ==&lt;/div&gt;</summary>
		<author><name>Nandaja</name></author>
	</entry>
	<entry>
		<id>https://wiki.smc.org.in/index.php?title=Talk:%E0%B4%B8%E0%B5%8D%E0%B4%B5%E0%B4%A4%E0%B4%A8%E0%B5%8D%E0%B4%A4%E0%B5%8D%E0%B4%B0%E0%B4%AE%E0%B4%B2%E0%B4%AF%E0%B4%BE%E0%B4%B3%E0%B4%82%E0%B4%95%E0%B4%AE%E0%B5%8D%E0%B4%AA%E0%B5%8D%E0%B4%AF%E0%B5%82%E0%B4%9F%E0%B5%8D%E0%B4%9F%E0%B4%BF%E0%B4%99%E0%B5%8D%E0%B4%99%E0%B4%BF%E0%B4%A8%E0%B5%8D%E0%B4%B1%E0%B5%86_%E0%B4%92%E0%B4%B0%E0%B5%81_%E0%B4%B5%E0%B5%8D%E0%B4%AF%E0%B4%BE%E0%B4%B4%E0%B4%B5%E0%B4%9F%E0%B5%8D%E0%B4%9F%E0%B4%82/SMC_Camp&amp;diff=4300</id>
		<title>Talk:സ്വതന്ത്രമലയാളംകമ്പ്യൂട്ടിങ്ങിന്റെ ഒരു വ്യാഴവട്ടം/SMC Camp</title>
		<link rel="alternate" type="text/html" href="https://wiki.smc.org.in/index.php?title=Talk:%E0%B4%B8%E0%B5%8D%E0%B4%B5%E0%B4%A4%E0%B4%A8%E0%B5%8D%E0%B4%A4%E0%B5%8D%E0%B4%B0%E0%B4%AE%E0%B4%B2%E0%B4%AF%E0%B4%BE%E0%B4%B3%E0%B4%82%E0%B4%95%E0%B4%AE%E0%B5%8D%E0%B4%AA%E0%B5%8D%E0%B4%AF%E0%B5%82%E0%B4%9F%E0%B5%8D%E0%B4%9F%E0%B4%BF%E0%B4%99%E0%B5%8D%E0%B4%99%E0%B4%BF%E0%B4%A8%E0%B5%8D%E0%B4%B1%E0%B5%86_%E0%B4%92%E0%B4%B0%E0%B5%81_%E0%B4%B5%E0%B5%8D%E0%B4%AF%E0%B4%BE%E0%B4%B4%E0%B4%B5%E0%B4%9F%E0%B5%8D%E0%B4%9F%E0%B4%82/SMC_Camp&amp;diff=4300"/>
		<updated>2013-08-29T20:23:20Z</updated>

		<summary type="html">&lt;p&gt;Nandaja: /* രൂപരേഖ - നന്ദജ */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;SMC camp structure എങ്ങനെ വേണം എന്ന് ഒരു ചെറിയ ചര്‍ച്ച.&lt;br /&gt;
&lt;br /&gt;
ആദ്യകാലത്ത് തര്‍ജ്ജിമയുടെ പേരിലാണ് പല ക്യാമ്പുകളും നടത്തിയിരുന്നത്. ചുമ്മാ ഒരു അനക്കം ഉണ്ടാക്കി, കുറച്ച് പുതുമുഖങ്ങള്‍ വന്നു എന്നാല്ലാതെ ഒരു ഔട്ട്പുട്ട് എന്ന് പറയാന്‍ ക്യാമ്പിലും ഒന്നും ഉണ്ടായിരുന്നില്ല. ഇവിടേയും കൂടുതല്‍ ഒന്നും പ്രതീക്ഷിക്കുന്നില്ല. എന്നാലും നമ്മള്‍ ഇത്തവണ ഇത്തിരിക്കൂടി ട്യൂണ്‍ഡ് ആവണം. ഒരു ചിത്രം ഞാന്‍ പറയാം. എല്ലാരും കൂടിയാല്‍ അത് ഭംഗിയാക്കം.. ഞാനതിന്റെ പശ്ചാത്തലം വിവരിക്കാം.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
SMC-വാര്‍ഷികം പൊതുജനങ്ങളെ ഉദ്ദേശിച്ചാണ് നടത്തുന്നത് എങ്കിലും, ഫലത്തില്‍ അത് ടെക്കി/കമ്പ്യൂട്ടര്‍ സാവി എന്നൊക്കെ പറയുന്ന ചെറിയൊരു കൂട്ടമാണ് അതിലെ പ്രധാന stake holders. അത്തരത്തിലുള്ളവര്‍ ഏറ്റവും കൂടുതല്‍ ഉണ്ടാവുന്നത് engineering college-കളിലാണ്. അപ്പോ നമ്മുടെ ആദ്യഘട്ടം engineering കോളേജുകളിലായിരിക്കും.&lt;br /&gt;
&lt;br /&gt;
തിരഞ്ഞെടുത്ത കോളേജുകളില്‍(ചുരുങ്ങിയത് 16) നമ്മള്‍ ഒന്നാം ഘട്ടം നടത്തും. താഴെ പറയുന്നത് ഒരു ചെറിയ ചിത്രം, എല്ലാവരും കൂടി മാന്തി വൃത്തിയാക്കുയോ വൃത്തികേടാക്കുയോ ചെയ്യാം. നന്നായാല്‍ പിതൃത്വം ഏറ്റെടുക്കാന്‍ ആള് കൂടും എന്നൊരു മെച്ചമുണ്ട്. :)&lt;br /&gt;
&lt;br /&gt;
ലിസ്റ്റില്‍ പറഞ്ഞത്രയും  കാര്യങ്ങളുടെ ഒരു ചിത്രം കൊടുക്കാന്‍ പറ്റണം. ഇതില്‍ എല്ലാം എല്ലായിടത്തും പറയാനല്ല. ആളെ നോക്കി filter ചെയ്ത് പറയാം. എന്നാലും ഒരു ഉദ്ദേശം കിട്ടാന്‍ ഇതുപോലൊരെണ്ണം ഉപയോഗിക്കാം.&lt;br /&gt;
&lt;br /&gt;
==ഒരു രൂപരേഖ - ബാലു==&lt;br /&gt;
കോളേജ് പിള്ളേര്‍ക്ക് എന്തെങ്കിലും സൃഷ്ടിക്കുന്നതിലായിരിക്കും, അല്ലെങ്കില്‍ എന്തെങ്കിലും മോഡിഫിക്കേഷൻ വരുത്തുന്നതിലായിരിക്കും താല്‍പര്യം. അപ്പോള്‍ എന്റെ ഐഡിയ ഇതാണ് :, &lt;br /&gt;
*നമ്മള്‍ ഒരു സിമ്പിള്‍ സാധനം കാണിക്കും... &lt;br /&gt;
*അത് അവര്‍ക്ക് ഇഷ്ടപ്പെടും... (അങ്ങനത്തെ സാധനമേ കാണിക്കൂ)&lt;br /&gt;
*അതെങ്ങനെയാ ഉണ്ടാക്കിയതെന്ന് നമ്മള്‍ സിമ്പിളായിട്ട് പറഞ്ഞ് കൊടുക്കും..&lt;br /&gt;
*അപ്പോ അവര്‍ക്ക് തോന്നും &amp;quot;ഈ സംഗതി കൊള്ളാല്ലോ, എന്നാ പിന്നെ നുമ്മക്കും ഒന്ന് കൈവെച്ചൂടേ&amp;quot;&lt;br /&gt;
*അതില്‍ ഇത്തിരി മോഡിഫിക്കേഷൻ വരുത്തിയാലോ എന്ന് &amp;quot;ഹൈ, ഇത് ദേ ഞാൻ പറയണ പോലെ മാറ്റിയാല്‍, ഇത്തിരൂടെ നൈസാകില്ലേ... അങ്ങ് മാറ്റി നോക്കാം...&amp;quot;. &lt;br /&gt;
*അപ്പോ ദേ വരുന്നു എറര്‍... അതങ്ങ് ഫിക്സ് ചെയ്യല്‍ എങ്ങനാന്ന് പറഞ്ഞു കൊടുക്കും... എറര്‍ ഡയഗ്നോസിങ്ങ്, എറര്‍ കറക്ഷൻ, അതിനുള്ള ഹെല്‍പ് എങ്ങനെ കണ്ടുപിടിക്കും എന്നൊക്കെ ഒരു ഓട്ടപ്രദക്ഷിണം....&lt;br /&gt;
*എറര്‍ ഒക്കെ ഫിക്സ് ചെയ്ത് അതിന് ഒന്ന് വൃത്തി വരുത്തിയാലോ?? &amp;quot;നോക്കിയേടാ ഗഡി, ഞാൻ ഒരു സാധനം ഉണ്ടാക്കി.. ഇത് കൊള്ളാല്ലോ പരിപാടി..&amp;quot; . &lt;br /&gt;
&#039;&lt;br /&gt;
&amp;lt;big&amp;gt;&amp;lt;big&amp;gt;&amp;lt;big&amp;gt;&#039;&#039;എന്റെ ഉദ്ദേശ്ശം തീർന്നു.. ആ ഒരു താല്‍പര്യം അവരില്‍ ഉണ്ടാക്കുക.&#039;&#039;&#039;&amp;lt;/big&amp;gt;&amp;lt;/big&amp;gt;&amp;lt;/big&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*ഇനി, അടുത്ത തലം ആണെങ്കില്‍, ഞാൻ ഒരു സോഫ്റ്റ്‌വെയര്‍ കണ്ടു.. അതില്‍ ഒരു ബഗ്ഗ് ഉണ്ടായിരുന്നു.. അതിപ്പോ എങ്ങനാ അത് ഉണ്ടാക്കിയവനെ ഒന്ന് അറിയിക്കുക?? ബഗ്ഗ് റിപ്പോര്‍ട്ടിങ്ങില്‍ ഒരു ഓട്ട പ്രദക്ഷിണം..&lt;br /&gt;
*ശരി, ഞാൻ ഉണ്ടാക്കിയ ഒരു സോഫ്റ്റ്‌വെയറില്‍ ഒരുത്തൻ ഒരു ബഗ് റിപ്പോര്‍ട്ട് ചെയ്തു... എന്ത് ചെയ്യും.. വര്‍ക്ക് ചെയ്യുന്നതിനെ ബാധിക്കാതെ എങ്ങനെ ഒന്ന് മാറ്റി നോക്കും?? ബഗ് ഹാൻഡ്ലിങ്ങ്, വേര്‍ഷൻ കണ്ട്രോള്‍ എന്നിവയില്‍ കൂടിയും ഒന്ന് ഓടും.&lt;br /&gt;
*അവസാനം, സോഫ്റ്റ്‌വെയര്‍ ഒക്കെ കൊള്ളാം.. പക്ഷേ ഇത് ഇതിലും വൃത്തിയായി, കരക്കാര്‍ക്ക് വായിച്ചാ മനസ്സിലാവണ രീതിയില്‍ അതൊന്ന് ഡോക്യുമെന്റ് ചെയ്യല്‍ എങ്ങനാ.. മനസ്സിലാവണ വേരിയബിള്‍ പേരുകള്‍ എങ്ങനെ എടുക്കാം, എല്ലാത്തിനും ഉപരി, ഏറ്റവും കുറച്ച് റിസോഴ്സ് കൊണ്ട്, ഏറ്റവും കൂടുതല്‍ ഔട്ട്പുട്ട് എങ്ങനെ ഉണ്ടാക്കാം എന്ന് ഒന്ന് പറഞ്ഞ് കൊടുക്കുക.&lt;br /&gt;
&lt;br /&gt;
പറഞ്ഞത് അനൗപചാരികമായ ഭാഷയില്‍ ആയെങ്കില്‍ ക്ഷമിക്കുക. മനസ്സില്‍ തോന്നിയത് പറഞ്ഞു. ത്രേ ഉള്ളു --[[User:Balasankarc|Balasankarc]] ([[User talk:Balasankarc|talk]]) 12:23, 29 August 2013 (PDT)&lt;br /&gt;
:കൊല്ലരുതു് --[[User:Manojk|&amp;amp;#91;&amp;amp;#91;User:Manojk&amp;amp;#124;മനോജ്.കെ&amp;amp;#124;Manoj. K&amp;amp;#93;&amp;amp;#93; (&amp;amp;#91;&amp;amp;#91;User_talk:Manojk&amp;amp;#124;Talk&amp;amp;#93;&amp;amp;#93;)]] ([[User talk:Manojk|talk]]) 12:49, 29 August 2013 (PDT)&lt;br /&gt;
&lt;br /&gt;
==രൂപരേഖ - നന്ദജ==&lt;br /&gt;
എഞ്ചിനീയറിങ്ങ് വിദ്യാര്‍ത്ഥികളെ മുന്നില്‍ കണ്ടുകൊണ്ടുള്ള ഒന്നാം ഘട്ട ക്യാമ്പുകളുടെ രൂപരേഖ ഇങ്ങനെയായിരിക്കണമെന്നാണ് എന്റെ അഭിപ്രായം:&lt;br /&gt;
&lt;br /&gt;
*ലിനക്സിന്റെ സഹായത്തോടെ എങ്ങിനെ നമ്മുടെ വര്‍ക്കുകള്‍ ലഘൂകരിക്കാം. &lt;br /&gt;
*വളരെ ഉപയോഗപ്രതമായ യുണിക്ക്സ് കമാന്റുകള്‍ പരിചയപ്പെടുത്തുക. &lt;br /&gt;
*കൗതുകമേറിയ ചെറിയ സ്ക്രിപ്റ്റുകള്‍ ഗ്രപ്പും മറ്റുമുപയോഗിച്ച് ഡെമോണ്‍സ്ട്രേറ്റ് ചെയ്ത് കമാന്റ് ലൈനിന്റെ സാധ്യതകള്‍ മനസ്സിലാക്കിക്കുക.&lt;br /&gt;
*പ്രോഗ്രാമ്മിങ്ങ് സുഖമമാക്കാന്‍ ഉപയോഗിക്കാവുന്ന ടൂളുകള്‍ പരിചയപ്പെടിത്തി അതിന്റെ സാധ്യതകള്‍ ഡെമോണ്‍സ്ട്രേറ്റ് ചെയ്യുക. (ഈമാക്ക്സ്, വിം, zsh മുതലായവയാണുദ്ദേശിക്കുന്നത്)&lt;br /&gt;
*മുകളില്‍ പറയുന്നതെല്ലാം ഡെബിയനില്‍ ഡെമോണ്‍സ്ട്രേറ്റ് ചെയ്യാന്‍ താല്‍പര്യപ്പെടുന്നു.&lt;br /&gt;
*ഇവയ്ക്ക് ശേഷം ഡെബിയന്‍ ഡിസ്ട്രിബ്യൂഷനെ കുറിച്ച് ചെറിയ സെഷന്‍.&lt;br /&gt;
*പാക്കേജുകള്‍, ഡെബിയന്‍ ആര്‍കൈവ് എല്ലാം കവര്‍ ചെയ്യാന്‍ സാധിക്കുന്ന പോലെ.&lt;br /&gt;
*ഒപ്പം കമ്മ്യൂണിറ്റി പ്രൊജക്റ്റുകള്‍ എങ്ങനെ നടക്കുന്നു. ബഗ് റിപ്പോര്‍ട്ടിംഗ്, മെയിലിങ്ങ് ലിസ്റ്റ് മുതലായ വിഷയങ്ങളും ഡെബിയന്റെ ഉദാഹരണമെടുത്ത് പറയാന്‍ സാധിക്കും.&lt;br /&gt;
*ഈ കൂട്ടായ്മയുടെ ഭാഗമായി നമുക്കെങ്ങനെ മാറാമെന്നും എങ്ങനെ ഓപണ്‍ സോഴ്സ് പ്രൊജക്റ്റുകളിലേക്ക് കോണ്‍ട്രിബ്യൂട്ട് ചെയ്യാമെന്നും അത് കൊണ്ടുണ്ടാകാവുന്ന നേട്ടങ്ങളും സൂചിപ്പിച്ചാല്‍ കംപ്യൂട്ടര്‍ സയന്‍സ് വിദ്യാര്‍ത്ഥികളുടെ ശ്രദ്ധ ആകര്‍ഷിക്കാന്‍ കഴിഞ്ഞേക്കും.&lt;br /&gt;
*ഇതിലൂടെ നമുക്ക് സ്വമക എന്ന ആശയവും മുന്നേട്ട് വെക്കാന്‍ കഴിഞ്ഞേക്കും എന്നാണ് എന്റെ വിശ്വാസം.&lt;/div&gt;</summary>
		<author><name>Nandaja</name></author>
	</entry>
</feed>