RIP Thulika Keyboard.. (sob).. (sob)

Just got to know that Google has came up with an handwriting recognition app – Google Handwriting Input.

And the good part is it has got Indian language support. Yay!!

But the bad part is that, it means the demise of my very own Thulika Keyboard. I had created it about 2 years back, and at that time there was no handwriting recognition app for any Indian language. I also had opensourced it, and have got requests from many to translate it to their language(Arabic, Hausa, Tamil to name a few) and some even have used it as part of their school/college projects.

RIP Thulika Keyboard, it was pleasure to have you around(it’s still out there, so you can download it and play with it, but with Google’s new app, mine seems a bit primitive 😦 ).


Google’s new app is awesome though, it recognises full words (mine could only do a letter at a time), and speaking about recognition, its very good at that.

So, here is me(Thulika), the old out dated tech giving way for the new stylish Google app πŸ˜‰


My New Nexus 7

After what seemed like a long wait, I finally got my own Nexus7 2nd generation. Am now playing with the device and the first impression is IT IS AWESOME!
A good friend of mine asked her family who was flying down from the US to get it for me.
The device landed last week but I got my hands on it only today as I was on a vacation last week. So at last here is my Nexus 7(courtesy: Ms.Shaniyaji and her family :P)
Am writing this post from my new Nexus 7 πŸ™‚
It’s sleek, not so large and not so small. The OpenGL ES 3 capability should make it a graphic powerhouse – just ideal for my experiments with Android!

Immortal Login

Download the app from PlayStore

Find the source on Github
I have got Asianet Broadband connection and they require me to log in inorder to have an internet connection. In Android whenever I log in, Android keeps the browser app alive only for about 15 minutes. So I used to get logged out frequently. I was fed up of this, and because of a Developer’s itch, I developed an Android app – Immortal Login. It is a very simple app and took only about 2 hours to create it completely. The app have got a web view using which the user can log in to a site. Then upon the pressing of a Start button, my activity starts a service. Since the activity has got a service, the app will not be killed by the Android system (at least it’ll try not to kill the app :)). Taadaa thats it.. you have got an Immortal Login app. Now there is no hassle of frequent log outs!
The app works with any ISP site. Also it need not be an ISP website, it can be any site which you want to keep alive so as not to get logged out πŸ™‚
The app is currently used by me and my friends who use this ISP. I have also got downloads and positive comments from users who use BSNL connection.

Thulika Keyboard

Download the app from PlayStore
On January 6th early morning(at about 3 AM), I created my Google Developer account, and published my first Android app – Thulika Keyboard – in the Play Store.
Thulika Keyboard is a Handwriting recognition keyboard. It is the first app that brings handwriting recognition to an Indian Language(Malayalam for the time being!). User writes a single symbol, the app recognizes it and may give a possible list of suggestions. Writing a keyboard for a language like Malayalam is not quite simple as Malayalam has a complex script compared to Latin languages. Some symbols may have more than one Unicode letters to accompany it. And in some cases more than one symbols make up a single Unicode letter!
Thulika uses machine learning/AI technique called SOM (Self Organising Map) using the library Encog. Encog is a great library and is quite easy to use. I have trained it using the handwriting of my own and some of my friends. I started writing the app in October, took a break for nearly 2 weeks in November end, and the app was completed by mid-December. Then I took it lazily, and waited till January to make some final polishes and then published it πŸ™‚
The entire application consists of Thulika Keyboard (the actual keyboard for end user), ThulikaTrainer (an Android app that helps in gathering user handwritings for a particular language) and ThulikaMaker (a Java application that helps in providing additional details required for the keyboard and also creates the language recognition engine). Anyone can easily help me in adding new languages for the Thulika Keyboard. Read this post to understand how.