User:Navinct

From SMC Wiki

Personal Information

Name: Navin Cherian Thomas

Email: navinct123@gmail.com

Freenode IRC Nick: navinct

Current Education:

3rd year in Computer Science and Engineering, at College of Engineering Trivandrum,

University of Kerala.

Why do you want to work with the Swathanthra Malayalam Computing?

I like the open source model of project developement and SMC has numerous open source projects that improves the application and use of various Indian languages in computing. Being a malayali, I am happy to see the amount of focus SMC gives to Malayalam. I would be extremely delighted and proud if was able to take part in one of the SMC projects that would benefit my language and other Indian languages.

Do you have any past involvement with the Swathanthra Malayalam Computing or another open source project as a contributor?

No

Did you participate with the past GSoC programs, if so which years, which organizations?

No

Do you have other obligations between May and August ?

My University Exams will start around April end and finish before May last week. After that my classes will reopen. I understand that GSOC is a full time commitment. My free time during the exams might be slightly limited. But once the exams end I will be completely free. Classes wont be a hindrance and I can easily work 40 hrs a week.

Will you continue contributing/ supporting the Swathanthra Malayalam Computing after the GSOC 2014 program, if yes, which area(s), you are interested in?

I would love to continue working for SMC even after GSOC. I am interested in algorithms and data structures. I wish to contribute to projects that would benefit Malayalam such as Varnam, in which I am very much interested.

Why should we choose you over other applicants?

I love the concept of open source and wish to contribute to the open source world. I am dedicated and passionate about my work. I am an expert in c/c++ and Java. I also know a little bit of Python. Moreover, I am very fluent in Malayalam.


Proposal Description

Project Name:

Integrate Varnam into SILPA

Overview

Varnam is a cross platform, open source transliterater that enables us to input words in Indian languages using their phonetically equivalent English patterns and Swathanthra Indian Language Processing Applications(SILPA) is a web platform to host Free Software language processing applications.

The main aim of this project, as the title suggests, is to integrate Varnam into SILPA. This can be done by creating a SILPA module that hosts Varnam.

Motivation

English dominates the world of computing. Its hard to do anything on a computer without having a basic knowledge of English. In India, there is a huge number of people who don’t know English. It would be much easier to introduce them to technology such as mobiles and PCs if the devices use a familiar language. Even technophobic people can be encouraged to interact with technology if its in their native language. I believe that the Varnam project is a huge step forward in achieving that goal and I wish to contribute to it in any way possible.

Solution

We need to create a SILPA module that hosts Varnam. The first step would be to implement the Varnam library and functions in python. I went through the api.h of libvarnam. So now I have a basic idea how to use the Varnam functions. Then I went through the Python documentation of 'Extending Python with C/C++'. It is apparently easy to add new built in modules to Python and such extension modules can call C library functions and system calls. Extensions can be supported using the Python API incorporated in Python.h

Currently I plan to use the above method but the documentation recommended the use of ctypes module for C library functions and system calls. I haven’t heard about ctypes before and I need to improve my python before I attempt to learn it. I am not sure which one's the better method but for now, I am going to stick with the Python API method.

Have you communicated with a potential mentor? If so, who?

I have introduced myself in the student projects mailing list and the mentor, Navaneeth K N has responded.


Timeline

(will be updated soon)

Bonding Period:

Discuss with mentor and, if possible, other project members too. Choosing the best solution and modifying it with the help of feedback from mentors. Acquire an in-depth understanding of Varnam and SILPA and their future prospects.

June 2nd/3rd week:

Finish porting Varnam to python

June 23-27

Mid-Term GSoC Evaluation

July 3rd/4th week:

Finish adding varnam module to project silpa

August 1st/2nd week:

Code testing. Performance evaluation of code. Making improvements and final changes if needed. Documentation.

August 18-22

Final GSoC Evaluation

After GSoC:

Discussion about further involvement with SMC and future project ideas. Suggest new projects.