Open Source Projects for Tamil – Hackathon – Sunday – April 23 – Chennai


Are you looking for an interesting project to do?
Can you share some time and your programming skills for Tamil Language?
Do you like to meet the fellow open source contributors in Chennai?

Here is a Hackathon for Open Source Projects for Tamil.

Date : April 23, 2017, Sunday
Time : 10.00 am – 5.00 pm

Venue :
Manavai Mustafa Memorial,
A E 103, 6th Street, 10th Main Road
Anna nagar West, Chennai – 600040

Contact : T Shrinivasan 98417 9546 Eight

Send a mail to tshrinivasan@gmail.com
to confirm your participation.

Wondering what projects you can do?

Pick anything from here.

https://goinggnu.wordpress.com/2017/03/03/project-ideas-part-1-looking-for-contributors/
https://goinggnu.wordpress.com/2017/04/22/project-ideas-part-2-looking-for-contributors/
https://goinggnu.wordpress.com/2017/03/04/let-us-create-maps-in-tamil/

or, you can come with your own ideas and implement there.

Come, let us contribute to Tamil with our programming skills.

Why are you not using an application in your language?


Last week, listened a conversation between two of my friends, Khaleel and Navin.

Khaleel is contributing to Mozilla community by doing localization. i.e translating the strings on the user interface of Mozilla products like firefox in Tamil. Navin is a tech guy, who likes to read Tamil anywhere.

localization க்கான பட முடிவு

image source – http://www.softwaretestingclass.com/what-is-globalization-internationalization-and-localization-in-software-testing/

 

“Hi Navin, Do you know that the firefox in your mobile and computer can be converted to Tamil?” Khaleel Asked.

“Yes dude. I have heard about it. Tried few times. But, the tamil interface gave me some issues. So reverted back to English UI”. Navin replied.

 

khaleel

Khaleel

“Oh. Is it? It is just a habital issue. You are so used to English. I never faced any issues on using Tamil interface. What are the issues you faced?” Khaleel asked.

“New words to learn. All the new words make me to feel very unfriendly.” This is Navin.

“Yes. We have to learn something new. When dont hesitate to learn new words in English, why do we feel tired to learn new words in Tamil? Did you born with all the english words as File, Edit, Options menu? ”

“Agreed. It is just a one time learning to matching the words. Still, Laziness prevents me.”

“Fine. What are the other issues?”

“Seeking for help on any issues, is one big issue. When I am in Tamil interface, if somethings goes wrong, I have to search internet with the proper english words. When I do translate from Tamil to English, it goes wrong and not getting answers. On such times, I have to find menus, for switching languages. It is hidden somewhere deeper. Once I switched to english, I am not coming back to tamil interface to avoid a pressure on emergency”.

“True. For that only, we are trying to bring entire documentation in Tamil itself. Then, you can search in Tamil itself”. Khaleel answered. “To make you to use tamil interface, what we have to do?” Khaleel asked.

navin

Navin

Here comes an important answer from a different point of view, from a good user.

“The switching of languages in the interface should be one click or a simple gesture. Why you guys are buried that option in a deep menu?” Navin asked.

While listening this conversation, I searched and found on how to switch languages for Firefox and Libreoffice.

To change the UI of firefox to a new language:

Unlike themes, enabling a language pack in the Add-ons Manager only does the languages it provides available. To change the preferred language for the interface:

  1. In the address bar, type about:config and press Enter.
    • The about:config “This might void your warranty!” warning page may appear. Click I accept the risk! to continue to the about:config page.
  2. In the FilterSearch field, type intl.locale.matchOS.
  3. If the intl.locale.matchOS preference has a value of true, double-click it to toggle its value to false.
  4. Clear the FilterSearch field, and type general.useragent.locale.
  5. Double-click the general.useragent.locale preference, and enter the code of the language you want to use. This page lists most of the language codes used for Mozilla localizations.
  6. Click the menu button New Fx Menu and then click Quit Close 29 .

When you start Firefox again, you will see the interface in the new specified language.

source : https://support.mozilla.org/t5/Manage-preferences-and-add-ons/Use-the-Firefox-interface-in-other-languages-with-language-packs/ta-p/23542#w_how-to-change-the-language-of-the-user-interface

For libreoffice,   Tools▸Options▸Language settings▸Languages▸Language Of: User interface (applied after restart).

source: https://ask.libreoffice.org/en/question/61894/how-do-i-change-the-default-language-from-french-to-english/

Like this, KDE and Gnome have their own deep menus to change the language. For most of them, we have to restart the application or logout/login or restart the entire system.

“Why there is no one click or one gesture switching of user interface languages? If there is such option, I can use all the application in Tamil itself. Whenever I get any issues, I will hover on UI or do some gesture to know the equivalent English words, search for them, get answers, fix issues, switch back to Tamil interface.” Navin explained.

All he said is true. Being an old times contributor of localizing Gnome, KDE in Tamil, today I am not using them in Tamil. Suffering by the same issue what Navin explained.

Found that Firefox has a useful addon to switch languages easily. Simple Locale Switcher

https://addons.mozilla.org/en-US/firefox/addon/simple-locale-switcher/

This seems useful. But why do I have to restart entire firefox with all my 80 tabs, just to know how to mention something on another language?  When KDE or gnome ask me to logout and login, I never think to switch a language.

Thanks Navin and Khaleel for bringing out a wonderful design issues with the application architecture.

When a software supports localization, switching language should be as one click.

This should be implemented on the software, then only new people will start using the localized application without any hesitation.

Till then, we have to keep on worrying why the new people are not using the local language interfaces.

I will report this as a feature request for kde, gnome, firefox and libreoffice. If you are interested in contributing to any open source software, implement this feature to it or report this as feature request in their issue tracking system.

What do you think on this issue? What are the other possible solutions? Share your thoughts in the comments and start discussing about this with your tech communities.

 

 

 

Minutes – ILUGC Feb 2017 meet


Indian Linux Users Group, Chennai community is meeting every month second saturday at Aerospace Engineering, IIT Madras.

Yesterday, we had out feb 2017 meeting.

Ajay started with Various open source licenses available and explored their pros and cons. Explained how the Open Core business model is helping many companies to do their business by open sourcing the core of their software with releasing the other components as proprietary software.

See the slides here

http://slides.com/danatic/licensing#/

 

Then, Viswaprasath from Mozilla Tamilnadu community explained about Firefox’s new web extensions api. Now we can build cross browser extensions using simple HTML/JavaScript/CSS stack. No need to play around with XUL. He explained the architecture of a simple plugin he developed.

Few links to explore on this

http://thehackernews.com/2015/08/mozilla-firefox-web-extensions.html

https://developer.mozilla.org/en-US/Add-ons/WebExtensions

https://wiki.mozilla.org/WebExtensions

https://hacks.mozilla.org/2015/09/lets_write_a_webextension/

https://developer.mozilla.org/en-US/Add-ons/WebExtensions/Your_first_WebExtension

 

Then, Karthik from Mozilla Tamilnadu, explored webVR. Virtual reality using browser. Now with Three.js we can create 3d worlds that can be viewed on browser itself.

A-frame is a Javascript framework on top of threejs.

Few links

https://aframe.io/

https://aframe.io/docs/0.5.0/introduction/

https://aframe.io/aframe-presentation-kit/

Then, he explained how the mozilla Tamilnadu community is working to spread Free/Open Software on colleges and organizations.

Join the awesome community to learn and contribute for free software.

https://mozillatn.github.io/

https://www.facebook.com/MozillaTN

https://web.telegram.org/#/im?p=@mozillatnc

 

Then, I gave a lightning talk on few projects ideas to do. A firefox plugin to help proofreading tamil wikisource, flipboard alternate in tamil, epub cleaning for FreeTamilEbooks.com, Download report for wikisource ebooks, web application for OCR4WikiSource, Translating city/street names in Tamil for building maps in Tamil. Will write a new post with all the details of these project ideas.

Asked for contributors and ideas. Students from S.Joseph Institute of Tech accepted to help on these projects. We can have a hackathon to do these projects.

Reply here if you know any place to conduct a one day hackathon.

Finally, asked all to join in ILUGC mailing list at https://www.freelists.org/list/ilugc

Our meetings will end on the cafe nearby. old mohan, new mohan, yogesh, myself and other one(sorry dude, still trying to get your name) had great discussions at cafe on building Tamil Text to Speech engine, Advantages of go over python and a lot.

Returned to home by bus with Mohan, discussing various tech, social, academic, industry trends. Interacting with energetic young people makes me feel encouraged to learn new things always.

Thanks for all the speakers and participants for building a wonderful community for GNU/Linux. Let us hope to have more events like hackathon, FossConf etc, this year.

Few photos

https://goo.gl/photos/T3TSFw6vfcMFfwyN8

 

 

 

 

 

 

 

 

 

How to become a Software Tester?


Are you looking for a job as Software Tester?

Here are few thoughts on software testing.

  1. Get Knowledge and skills
  2. Learn the Concepts
  3. Learn the Testing Tools
  4. Learn a programming language
  5. Dont dream about playing games. Instead play any game
  6. Contribute to Open Source Software by Testing them
  7. Join Testing groups
  8. Write a blog
  9. Add all these things to your Resume

1. Get Knowledge and skills

Knowledge, skills and experience need not be gained only by taking up a job. We can grow these ourselves, Right?

What do most people say? “Give me a job. Then, I will learn all that is required. After that, I will grow my skills.” True.

Let us say, you buy a car to travel out of town with your family often. You are looking for a good driver. I have come for an interview. I have attended driving classes. But I do not have any experience.

“I have completed training. I have a certificate. But, I do not have experience. Give me employment. Let me have your new car. Give me training for a few months. Once I have learnt it well, I will drive your family wherever you want.”

If I say this, will you hire me? But, this is what you say to the companies.

For learning how to drive a car, you need a car that costs lakhs of rupees. But for learning computer skills you can use the computer you already have.

In cricket, if someone is not scoring runs, even if it is Sachin, we get annoyed. We expect them to score continuously and hit fours and sixes frequently. However, we dont do any useful things using your computer, but will listen to music, watch films, play games and keep chatting with your friends on social media. How is this justified?

2. Learn the Concepts

Software Testing is a vast industry. It has many concepts as

  • Test Cases
  • Test Results
  • Bug Tracking
  • Test case Tracking
  • Manual Testings
  • Automated Testing
  • BlackBox Testing
  • WhiteBox Testing
  • Functional Testing
  • Database Testing
  • Performance Testing
  • Unit Testing
  • Mobile Testing
  • Web Testing
  • GUI Testing

    and more.

There are many websites/books/presentations/videos/lessons available on Internet.

Learn about them.

3. Learn the Testing Tools

To implement all the above said testing concepts, there are many software/tools available.

Few software or so costly to buy.

Dont worry. There are equivalent Free/Open Source Software available for all the needs.

Test Case Management – Test Link and others.

see a big list here – http://www.opensourcetesting.org/testmgt.php

Bug Trackers – BugZilla, Mantis, Trac etc

Automated web testing – Selenium

GUI Testing – Sikuli.org

Performance Testing – JMeter

You can find all open source testing software here – http://www.opensourcetesting.org/

They all are 100% free. Download them and install in your computer and learn them.

4. Learn a programming language

Being in the Software Industry, we should know atleast one programming language.

I suggest “Python”. It is very easy/cross platform language.

We can do many automated/web/mobile/gui testing using Python.

Learn Python the Hard Way is the easiest book.

http://learnpythonthehardway.org/

Complete this one book alone.

It may few weeks only to complete this.

Google’s Python Course (with Lecture Videos)

https://developers.google.com/edu/python/

5. Dont dream about playing games. Instead play any game

Dont wait for getting a software tested job for doing testing.

The job of a cricket player is to practice regularly and display their talent. Nobody says, “Include me in the Indian cricket team! Then I will learn the game and then I will play well and after that I will win cups for the country.”

To become more skilled in cricket, you have to take the bat / ball and practice. For It Industry, it is enough if you practice with the computer you already have. To learn software testing all you need are a computer and internet connection.

Learn the concepts, Install the software and start testing the software you use daily and find bugs.

6. Contribute to Open Source Software by Testing them

There millions of Free/Open Source Software being developed. They all are looking for testers to find bugs, so that developers can improve them.

You can contribute by reporting bugs, confirming existing bugs, writing test cases, automated tests, etc.

Whatever the corporates are doing for testing their software, can be done for open source software too.

On any open source project website, look for “community/contribute by testing”.

They will give all the details on how you can contribute to that project by testing.

In a continuous effort for 3-4 months, you can become a QA team member of any big open source project.

That will become a great crown on your heads.

Ubuntu Linux –

https://wiki.ubuntu.com/QATeam

http://community.ubuntu.com/contribute/quality/

Mozilla –

https://quality.mozilla.org/

https://quality.mozilla.org/get-involved/

LibreOffice –

http://www.libreoffice.org/community/qa/

Fedora Linux –

https://fedoraproject.org/wiki/QA/Join

MediaWiki –

https://www.mediawiki.org/wiki/Quality_Assurance

Read these links too

http://blog.smartbear.com/programming/14-ways-to-contribute-to-open-source-without-being-a-programming-genius-or-a-rock-star/

http://www.infoworld.com/article/2860074/open-source-software/become-an-open-source-software-tester.html

http://programmers.stackexchange.com/questions/58850/open-source-is-testing-bug-reporting-a-major-contribution

Pick any of your favourite open source software and become its QA team member.

7. Join Testing groups

Search for local testing groups/communities.

Attend the meetings.

Have testing events.

If there is no group, start one and do some activities.

8. Write a blog

Write about everything you worked on in your blog. Write everyday without fail. Your blog will become your best Visiting Card.

9. Add all these things to your Resume

Add to your Resume your blog address, the list of Open Source software you are contributing to and all the skills you have.

Read these too

https://goinggnu.wordpress.com/2014/08/26/how-to-get-a-computer-science-career/

Wishes.

Reply here, if we can add any more stuff in this post.

New Open Source Text to Speech system for Tamil


Prof. Vasu Renganathan, Univ Pennsylvania, Philadelphia, USA, has released his Text to Speech for Tamil language as Open source.

Get the source at :

https://github.com/vasurenganathan/tamil-tts

See in action:

http://www.thetamillanguage.com/tamilnlp/speak/

http://www.thetamillanguage.com/tamilnlp/speak/listentome.html

http://www.thetamillanguage.com/tamilnlp/speak/url_talk.php?url=

It is written in php.

There are many open source TTS systems available as espeak, Festival, CMU Sphinx  etc.

But they work fine for English only. A new system is needed for Tamil.

Myself and my brother Arulalan are trying to build a TTS system using python.

He wrote script to convert tamil text to IPA.

http://tuxcoder.wordpress.com/2014/08/02/release-txt2ipa-converter-v0-1/

https://github.com/arulalant/txt2ipa

The next step is to record audio for each symbol and play with python.

In the meantime, the TTS by Vasu gives a great enlightenment on text and sound processing,a s it has all the sound files and code to process text, map to sound files and stitch as a word etc.

We will port it to python soon.

This is not a very perfect TTS.
Many things have to be improved.

  • There is little gap between letters.
  • Need few more gap between sentences.
  • Need more voices.

We can add all these features as we have the source now.

Please check the code and explore a how TTS works.

Reply here if you are interested in improving Tamil TTS System.

Thanks.

Thanks for prof.vasu for open sourcing his nice works.

INFITT 2014 – International Conference for Tamil Internet


Home

INFITT is an international organization which connects, Tamil Scholars, Government, IT Professionals and Public.

Every year it conducts “Tamil Internet Conference”. One time in India and Next time in any other country. This year “Tamil Internet Conference 2014” has been conducted in Pondicherry on Sep 19,20,21 2014.

Latest_INFITT_LOGO_2014_2_small

This was my first participation to a INFITT conference.

100 papers were presented from the scholars from 9 countries.

It was a great place to meet most of the Scholars in Tamil.

Around 50 scholars came from Malaysia for this conference.

So happy to meet my Malaysian friends after a year.

I presented a paper on “Open-Tamil” a python library for processing Tamil Text.

Here is the paper

https://docs.google.com/document/d/16PGCQxO-yx8h1JGqOo-YY7Sb2sz3D5YyV_PbaYPlwYU/edit?usp=sharing

Here is the presentation

http://www.slideshare.net/tshrinivasan/open-tamilpresentationta

Sibi from fsftn gave a talk on “Introduction to OCR using Tesseract”

My friends BalaVignesh and Arthi BalaVignesh are researching on OCR using Tesseract.

They are building a web application for training Tesseract for Tamil Text. They gave a talk on their research.

There were many talks in various topics like Fonts conversion, Text to speech, mobile application development, Spell Checker and more.

ElanTamil from Malaysia explained their work on Tamil SpellChecker using hunspell and Grammar Checker using LanguageTool.

Most of the talks were pure academic and there were not much demonstration on practical implementations.

There are tons of research happening on Tamil Computing, Linguistic areas. But the sad part is no one is ready to share their works for public.

Many Universities run funded research on various topics, but they are not ready to share their works.

OCR, Text to Speech, Annotated Corpus, Speech to Text, Spell Checker, Grammar Checker are the highly required softwares. People are asking for them for more than 10 years.

There are many academicians did funded research by universities on these areas and created some working products with the help of their research students. After they retired they package their products and selling them.

As they see that not many people are interested in buying their products, they expect government to buy their software and distribute to all public for free.

I had a discussion with the participants asking for releasing their software as Free/Open Source Software.

But, most of them are not ready for this. They had huge fears on this. If they open source their works, they fear that some big company will take their works, sell and see huge gains.

They really had huge research and created few working software. If I have to create similar software, I have to invest more then 10 years of research, which is impossible.

If they opened their research result and their working software, many people can jump in the Tamil Linguistic area and improve their software.

There are many open source developers are ready to contribute for Tamil. But as we don’t know from where to start, we stand still on the starting point itself.

The existing software sellers, ex professors are not ready to share their works.

They keep on telling that “I have spent 20 years of research on this. Why I have to give it for free? Why I have to open source it? I have to take back the huge revenue for my works.”

They all forget that they got paid for their research works by universities, i.e by public. It is their duty to release their works for public.

I agree that if a company invests huge money and creates some software for tamil, it can sell it and expect the ROI. Even it can sell the closed source software. If the software is really useful and working perfectly, people will buy it for sure.

But these Ex Professors build their products based on their universities fund. The universities should own these software and release to public as Free/Open Source Software. But, these universities are not aware of this truth and these professors sell their works.

This is the great loss for Tamil Computing and Tamil People.

English and other languages are having great software as most of the linguistic research by their universities are released as open source.

Thats why English has so many software available.

I dont know how many decades it may take for Universities to release their tamil research works as open source.

Till then, let us leave these ex professors worrying and wondering on why their software are not, selling.

I dont know what will happen to their hard work and software, after their lifetime.

It is a happy news that few young open source enthusiasts started working on Tamil Software.

There is open-tamil python library for processing tamil text. It can convert 25 types of Tamil Encoding to Unicode. It has tamil to IPA conversion, which is a base for Text to Speech conversion.

Tesseract is being used for Tamil OCR development. Libreoffice got spellchecker and grammar checker.

I hope we can get more contributors for these projects. If they grow well, Tamil will get great open source software.

Apart from these thoughts,

Good stuff about this conference:

  • Met many good contributors for Tamil Computing.
  • Many papers gave new ideas for new open source tamil software development.
  • Co-ordination was good for the talks.
  • Food was nice.
  • The Dinner Treat given by CM was awesome.

Things to improve:

  • Make the Conference free for the audience. So that interested people around the city can participant. The current models enables only paid members to talk and hear the talks.
  • When there are three tracks, place the notice boards and banners to show, the track, talk, and time details.
  • Add the Table of Contents in the Conference book.
  • Release the conference book in creative commons license.
  • Do something more than yearly conference.
  • To increase membership, explain the benefits of members in the website.

I received Rs 5000 Cash Prize for the works on Tamil computing like www.kaniyam.com and www.FreeTamilEbooks.com by Prof.C.R.Selvakumar, Waterloo University, Canada.

Thanks sir for the recognition. This reminds me that I have to do more and continue these projects. These projects are being driven by great volunteers around the globe. I dedicate all the praise and prize to all the volunteers.

20140921_180457

The next conference will be in Singapore.

Hope we can create more open source software for tamil to talk in next conference.