User:Renamed user ablguwe/GSoC 2014 proposal

What is the purpose?
Help people in reading complex texts by providing inline translation for unknown words. For me as a non-native English speaker student sometimes is hard to read complicated texts or articles, that’s why I need to search for translation or description every time. Why not to simplify this and change the flow from translate and understand to translate, learn and understand?

How inline translation will appear?
While user is reading an article, he could find some unknown words or words with confusing meaning for him. At this point he clicks on the selected word and the inline translation appears.

What should be included in inline translation?
Thus it is not just a translator, it should include not only one translation, but a couple or more. Also more data can be included such as synonyms, which can be discussed during project completion.

From which source gather the data?
Wiktionary is the best candidate, it is an open source and it has a wide database. It also suits for growing your project by adding different languages. Also other candidates can be found to make translation more precise.

Evaluation
There are two ways in my mind right now.
 * 1) First is to make a web-site built on Node.js with open API for users. Parsoid could be used for parsing data from Wiktionary API which is suitable for Node. A small JavaScript widget is also required for front-end representation.
 * 2) Second is to make a standalone library which can be used alone on other resources as an add-on or in browser extensions. Unfortunately, last option is more confusing for me at this point.

Example
After clicking on the word simple window appears with information about this word. Instead of "Info about this word" more data should be shown at least a couple of meanings like on this page.

Growth opportunities
As an example I am leaving in Finland right now and I don’t know Finnish as I should to understand locals, therefore this project can be expanded by adding more languages support for helping people like me reading, learning and understanding texts in foreign languages.

Suggested solution
“You could basically write a node service that pulls in the Parsoid HTML for a given wiktionary term and extracts the info you need from the DOM and returns it in a JSON response to a client-side library. Alternatively (or as a first step), you could download the Parsoid HTML of the wiktionary article on the client and extract the info there. This could even be implemented as a gadget. We recently set liberal CORS headers to make this easy.” by Gabriel Wicke.

General
I am an IT student from Turku, Finland, willing to learn new things and to increase knowledge in current skills.

Contacts

 * Email: romanznet@gmail.com (subscribed to wikimedia tech list)
 * IRC: zaynetro

Programming background
As I am quite new to an open-source community, I have already completed one project, which could be found on my github account page. To summarize I have a good command of php, JavaScript, and relational and non-relational databases.