August 2, 2002

As usual, I’ve been side-tracked by another project – and inundated with work too :p The other project is not something that a lot of you will find a use for since it’s Islam related – but I needed it (or thought I do …) and so I’m working on it <g> So what is it? Well, I guess I need to go into explanation mode for a bit – Islam (as you’ve probably heard before …) is not just a religion, it’s a way of life. There’s instructions on how you should dress, what you should eat, how you should eat it, how you behave, how you pray etc. The main source for these rules/laws is the Qur’an and the secondary source is the Hadith, or the prophet’s (peace be upon him) sayings. The sayings were collected by various people into several collections that people use to refer to when there is a doubt about a certain point of religion and it cannot be verified from the Qur’an alone.

Now the problem is that sometimes people will say that there is such and such a Hadith and that you should do something as if they really know what they are talking about but on reference, you’ll see there is no such Hadith at all or that they’d misinterpreted the Hadith. Like all things that we humans touch, we sometimes seem to pervert the Hadith too as an easy way to get something done “our” way or simply to spread mis-information, knowingly or unknowingly. In my case, my Dad told me a few days ago that an uncle of mine had told him of a Hadith which stated that a Muslims beard should be larger than his mustache. Of course, this happened because I sport a goatee these days and it’d become pretty tiny :p I just don’t like doing anything on hearsay and so I decided to do some research and went through several online Hadith databases and found that the Hadith had actually been misinterpreted (at least as far as I could tell …) – what was said (in effect) was that the beard should be *longer* than the mustache … or actually, to trim the mustache and let the beard grow. I have a feeling in this case that it simply got repeated from person to person and each changed the wording the way he saw it till it got to be “beard larger than mustache” …

Anyway, I decided that this is something that I shouldn’t let happen in the future and so I decided to create a program which would simply be a database of Hadith that could be referenced and searched easily. So I searched the web for a downloadable database that I could use in my program and was going to create my own database from the online ones by parsing the text if I didn’t find a downloadable database. To my surprise, I actually found a program (a freeware one at that …) which actually did exactly what I wanted … but it didn’t give me the degree of control I wanted since you had to select individual Hadith collections and weren’t able to search all available collections at once. So I was wondering whether I couldn’t use there data but create my own front-end :p And so began a project which currently seems on the verge of completion – though that’s the same way I’d looked at it yesterday and probably day before too :p

The first problem was that the data wasn’t in a database as I’d first thought but rather in a DLL! Then I discovered that the DLL had somehow been compressed and had to discover the exact program used to compress it and then find a decompressor for it. This took quite a bit of doing and I came to learn a lot about the currently available exe compressors 🙂 Once I finally found the correct unpacker, I then had to go through the DLL and figure out how the data was stored and figure out a database structure for the data, how to extract the data and to write the logic to do the actual extraction. I did all that day before yesterday but yesterday I realized that the data storage in the DLL files varied in very minimal fashion from DLL to DLL! So I had to go back again and rewrite some of the extraction code so that it will extract the data from all the DLL’s without me having to put in conditional stuff – I’m finicky that way :p Of course, I’m still dealing with all the conditions since three databases extract fairly well but the fourth suddenly breaks off in the middle of extraction with no error message. Guess, I’ll have to try and debug it today if possible …

Posted by Fahim at 6:36 am  |  1 Comment