JavaScript Dhivehi Character Recognition

Here is another of my pet projects brought back from the land of the deceased.

This one is called "JavaScript Dhivehi Character Recognition". It was created early 2003 (or maybe late 2002) and made available on bichoo.net. Basically, it lets you draw a Thaana character using your mouse and then it "recognizes" what you have drawn. The purpose was mostly to satisfy my curiosity into artificial intelligence and pattern recognition at the time, however it also showed promises of the beginnings of a future where Dhivehi documents maybe scanned in and processed by a computer to convert it to text just as Optical Character Recognition technology has been doing for English documents. I think this rudimentary application was the first ever Dhivehi character recognition implementation released to the public. More interestingly, this seems to be the only character recognition implementation programmed in JavaScript floating around on the Internet even now. :-D

I spent a bit of time tonight reworking some bits of the code for clarity. The entire implementation is done using JavaScript and DHTML. You are welcome to study the code to see how it works. The code is well commented and maybe a good starter into AI and pattern recognition basics. It uses a single layer single Perceptron model to really simplify things however it is a good enough practical implementation to work for characters drawn on a 10x10 grid. The grid makes up the input data to the neural network. The neural network is hard-coded into the page and has definitions for each character in the alphabet. I do hope you are surprised by the accurateness of the recognition of this little application.

Have a look at it HERE. Let me know if you find it amusing... or not.

My company - Technova Pvt Ltd - is currently working on bringing a full fledged Dhivehi OCR software to the Maldivian public. It will probably be made available early 2006, as a service for customers requiring bulk OCR processing. We shall be releasing Windows, Linux and Mac versions of the software for home and business use around mid 2006.

Blobsy : Relaunch

There are a lot of little "projects" that I start with much gusto; however me being me, I burn out of enthusiasm in a few months. So today, while I was in my happy place I felt this utter need to rejuvenate the orphaned projects and stuff I've created over the years and bring them back to life. This renewed enthusiasm, so far, extends as far as bringing back online the orphaned projects by injecting some vitality into them or in a lot of cases bringing them back from the land of the dead.

So tonight, I started with one of my once most beloved projects known as Blobsy (http://www.blobsy.org/). Blobsy is an MSN Messenger bot framework written in PHP and works with any PHP version 4.3.0 and above. It can run on both Linux and Windows. It was the first PHP based bot to be distributed on the net as far as I know but then again I might be buttering up myself too much. Blobsy got featured on the main MSN Messenger fan sites such as mess.be and msnfanatic.com over the various versions I released. The live Blobsy demo bots had 3000+ people using it before I took them down. I was quite a really happy teenager back then. :-)

What does Blobsy do? It provides a base framework for providing bot services to clients on MSN Messenger chat network. It was meant to do to Messenger chat, what Eggdrop did for IRC. Blobsy provides very flexible methods to extend the functionality of basic framework via what I've called Handlers. So if you want to provide news, phone number lookups, emailing, group chat or whatever else your imagination lets you conjure up with the MSN Messenger chat network, then Blobsy would probably be able to pull it off. Blobsy supports Custom Emoticons and Display pictures as well. The current release versioned B2 beta 5 is compliant with the MSNP9 protocol used by Messenger 6.

Some of you may have used my live Blobsy demo bots which carried the same name (post a comment if you have encountered it or used it!). It had features such as sending SMS to DhiMobile phones easily via MSN Messenger. It also let you see the latest news from Haveeru and Aafathis. It let you lookup phone numbers and addresses on the phone directory. You could also store notes on it so that you could retrieve it from wherever you had access to MSN Messenger. Another Blobsy experience would have been the IRC2MSN bot that I launched sometime late last year or early this year. It used the Blobsy framework to let you see what was going on the Maldivian IRC channels while you were on Messenger. There have been quite a number of Blobsy based bots run by various organizations and individuals around the globe over the years.

However, the usage and support has waned over the past months due to my lack of updating the Blobsy project. I hope to renew the Blobsy project by regularly updating the project to provide for the changes being brought to MSN Messenger. I also plan to relaunch the live Blobsy bots targeted mainly for the Maldivian MSN Messenger users, by providing the old live bot features in addition to a mix of new features such as chat rooms right on Messenger. Imagine the fun!

Drop me a line if you got any feedback regarding the project/code or if you have suggestions for the features of the live bot.

Blobsy 2 box

Science book for kids...

I started to write a book about three months back. The project has been idle for about a month now but I've returned to it today. The book is aimed at teaching or rather introducing science to children. It is being written in Dhivehi and is targeted mainly for distribution in the islands. Yes, I did say distribution - I have no intention of making this a for-profit endeavor. I have yet to work out the details of how the distribution shall take place. However, I certainly intend on letting it loose on the internet once it's done.

The book shall begin with a prologue to science, scientific methods, analysis and critical thinking - all simplified enough to suffice in communicating the essence of these topics while maintaining comprehensibility. The book then proceeds with a number of practical investigations and experiments each tackling a different phenomena. The investigations themselves are each divided into segments: introduction, materials used, step by step method, explanation and finishes off with further thoughts and suggestions. This method of hands-on investigation followed by theory elucidation is an often adopted form of teaching science used in many books. I hope this tried and tested formula stands true for teaching science in Dhivehi.

The experiments and ideas used in the book are more or less used universally as introductory material. The experiments featured also have reflections from my childhood, when day in and day out I used to experiment with stuff. I am running the material through a few of my friends as I write it, to get their comments and input. Much appreciation goes to my buddy Muththu for the help he has been lending to the project since I started it.

There are a few reasons why I have made the choice to write a science book and that too specifically for kids in the islands. I am targeting the islands because of its neglected status in our society. The islands have been under-served, especially in the educational sector, for a reason. I want to challenge that and will, hopefully, continue to do that through further activities. I chose to write a science book not only because of my love for the scientific field, but more because of the lack of Dhivehi literature in the field. This is especially true for material available to children. While there is a yearly award offered by the President to the authors of educational material for kids, it is generally seen as a superficial game to taint the record books by increasing the count of books rather than encouraging the production of quality and diverse material. I hope my book can do a little bit of good to my intended audience and that it may aid them in rising up to a better life.

Now, I have a request from any science aficionados among you. Please send in suggestions for experiments you think will be effective in teaching or inducing deeper thought in the little fellows who may read the book. I have a request from the rest of you as well. That is, to tell me of anything from your childhood that really got your mind whirring. Any help is much appreciated. Thanks in advance!