Thursday, December 30, 2010

Master's Thesis: Design and Implementation of a Scalable High-Speed Parallel Web Crawler

I have been planning to share this for quite sometime, and today finally I managed the time to do so. My Master's thesis covers a very fundamental component of search engines, namely Web crawlers. The research focus of my work is crawler efficiency which is related with scalability and speed of a Web crawler.

The proposed architecture extends the DRUM technique proposed in the best paper of WWW 2008 titled "IRLbot: Scaling to 6 Billion Pages and Beyond": the technique is used for a single-machine Web crawler. In the thesis, I extend it for a parallel crawler.

Following is my Master's thesis defense presentation, which I successfully passed on 16th December, 2010.

The full-text of the thesis will be available soon. Interested students/researchers may contact me for any questions, comments or feedback. Any researcher interested in the domain of Web crawling may also contact me if he/she has any suggestions. The full-text of the thesis can also be requested via email.

Tuesday, December 7, 2010

When There's Nothing to Eat in Korea There's Always Kimbab

Back in Pakistan when this situation arose of no time to cook anything, we had the option of Maggi noodles. But in Korea almost all noodles have some sort of pork (or pork ingredients) so is there no option of having some 2-minute thing? Nopes, there is the all-time Korean favorite Kimbab. Bab in Korean means cooked rice, so Pakistanis describe it as rice burger :), quite unusual and strange, right.

These days my husband and I are under the Masters thesis defense phase so most of the time we face this situation of no time but wanting something quick to eat so Kimbab comes to the rescue.

Gimbap or kimbap is a popular Korean dish made from steamed white rice (bap) and various other ingredients, rolled in gim (sheets of dried laver seaweed) and served in bite-size slices. Gimbap is often eaten during picnics or outdoor events, or as a light lunch, served with danmuji or kimchi. It is similar to the better-known Japanese sushi. We eat the Yaachae (vegetable) or chamchi (tuna) one as all the others have meat. Here are images of two variations of Kimbab. The first one is served in restaurants with a very delicious soya soup that is excellent for winters.
The second one is found in stores packed like a sandwich and is really cheap.

So now I am off to buy my Kimbab from the KAIST cafeteria store :)

Wednesday, November 17, 2010

South Korea: the Pioneer of Social Networks

Social networks have considerably revolutionized the Internet usage patterns. Some studies have estimated that users now spend more time on social networks than on search engines. The most popular social network services include Twitter and Facebook.

Today I will shed some light on use of social networks in South Korea and their role in what can be termed as the social network revolution.

To the surprise of many readers of my blog South Korea is the pioneer of social networks, although you cannot find widespread use of Facebook in South Korea. In South Korea Twitter and Facebook are dwarfed by the local social networks, the most popular of which is CyWorld by SK Communications. Cyworld social network is used by 78 percent of Koreans with Internet access. The Facebook-style service was a pioneer in social networking, launching way back in 1999 and launching as a mobile service in 2004. SK’s instant messaging service – known as NateOn – is also the most widely used in Korea, and is three times more popular than Microsoft’s Live Messenger. It is a popular myth especially amongst the Pakistanis that the credit for making social networks popular goes to Mark Zuckerberg and the likes whereas the real pioneer is South Korea. Furthermore, South Korea's CyWorld was so popular and unique that its US counterpart by name of CyWorld US was launched in 2006. In Korea social networks are not just a social gathering point; in fact they are a very successful business model and as per my Korean lab mates social networks have been known to the Koreans back from the age of the dial-up Internet.

Korea's example according to me is an example that we Pakistanis can learn from. Back in Pakistan when Facebook was banned after the "Draw Muhammad" fan page controversy some people argued that creation of a local social network is not a workable solution since we need to communicate internationally - that is an argument that in my opinion comes from defeated minds and without knowledge of the science of social networks and their evolution patterns - CyWorld is a forum which international community has joined (yes many foreigners joined CyWorld to interact with Koreans) and learned from leading Korea to earn a respectable place in the world of SNS and mobile services with all this causing international communications to increase. Moreover, the data users share on social networks is a critical asset for any country and should not become a commodity for any other country which is currently the case due to not having any idea of the significance of local social networks.

For all the above-mentioned reasons Korea's case is one that has important lessons for many countries in Asia and in particular Pakistan where anything foreign and in particular by US is considered irreplaceable whereas many other countries of the world are moving in a different direction.

Tuesday, September 14, 2010

Experience at TEDxKAIST: Happiness for Science and Science for Happiness

Almost all of us know about the TED platform which stands for Technology, Entertainment, Design and it is an annual event where world's leading thinkers and doers are invited to share what they are most passionate about. The TED platform gave birth to an accompanying, new initiative called TEDx and this is a new program that enables local communities such as schools, businesses, libraries, neighborhoods or just groups of friends to organize, design and host their own independent TED-like events. Such an event was organized in KAIST on 11th September, 2010 by some students of KAIST and the team was wonderfully led by Mark Whiting, a Masters student at the Department of Industrial Design, KAIST. They called it TEDxKAIST and it turned out to be an energizing event for the hard-working KAIST students.

KAIST is one of the nation's most prestigious science and technology institutions and keeping this in mind the theme was well-thought: "Happiness for Science and Science for Happiness" - its a significant one as KAIST is all about hard-working students actively engaged in scientific contributions and advancement. There is a famous saying for KAIST students that KAIST never sleeps - the KAISTIANs struggle hard to survive in the seeming paradox of hard work and true happiness. The inspiration for the theme came from this excerpt:

"Of the more highly educated sections of the community, the happiest in the present day are the men of science. Many of the most eminent of them are are emotionally simple, and obtain from their work a satisfaction so profound that they can derive pleasure from eating and even marrying." - Bertrand Russell (1930); The Conquest of Happiness

In this blog post I will share my take aways from TEDxKAIST and some of the key points from the speeches that all people associated with science should keep in mind to become a "happy scientist contributing to a happy world." Following is a brief profile of each of the speakers who spoke in TEDxKAIST and gave their view of a happy scientist:
  • Dr. Young Hae Noh who is a Professor at School of Humanities and Social Sciences at KAIST and has also served as dean of multiple departments at KAIST.
  • Dr. Minhwa Lee is the Business Ombudsman who makes a link between government and the small and medium businesses; he is also a Professor at KAIST.
  • Spanish Koffee, a very famous music group in Korea which pursues free distribution of digital music in their mission of "Passion worth Spreading."
  • Dr. Woonseung Yeo is a Professor at Graduate School of Culture Technology at KAIST and his PhD work at Stanford university includes introduction to the field of sonification which implies transmitting information through audio signals.
  • Sungdong Park is the CEO of Satrec Initiative which is the world's leading company in high-performance, cost-effective Earth observation small satellite solutions. He won a Civil Merit Medal, a presidential commandment and an Industrial Service Medal for his contributions to Korean space science and technology.
  • Byungwoo Jang is the CEO of LG OTIS and has served LG for many years. He comes from a family of great scholars of English literature.
  • Dr. Don Norman is a distinguished visiting Professor at KAIST and holds many other significant positions around the world. His work has resulted in a number of influential books including “The Design of Everyday Things” and most recently “Living With Complexity.”
Professor Noh began her speech with a quote on definition of success by Benjamin Zander, "Success is not about wealth, fame or power; it's about how many shining eyes I have found." She shared her story about her musical classes - a love story but a very different one: a Professor-student love story. She shared her tips on being a successful Professor - a Professor that brings out the talent in her students to the full, that is both loved by the students and loves the students and a Professor that incites passion and enthusiasm in the students which in my opinion is quite lacking in a majority of today's students. She advocated the idea that Professors should give freedom to students by allowing them to discover their potential and greatness in a journey of their own and at the same time Professors should be keen observers of students and should extract joy in discovering interesting features of their students.

It was really interesting to see and actually observe the scientist's definition of happiness: surpassing challenges and overcoming obstacles; sharing and inculcating passion all around is what happiness is from a scientist's point of view and this view came out more clearly in the talk by Sungdong Park. His story was one of courage and bravery, of making the impossible possible despite all hardships and of rising after setbacks. He shared a newspaper cutting which said, ""First Park Sung Dong got mad. Then he got even." Before establishing Satrec Initiative he was the leader in developing advanced small satellites in KAIST for 10 years - but then something happened which eventually led him to the success he enjoys today but the path was not easy. His government lab was laid off; it was a hard time but he did not lose hope and launched a venture with his old lab's technology. His vision was to make all of SATREC's engineers become millionaires - apparently a crazy idea but with passion and devotion Park made this possible and today Satrec is the only private company in Korea that is a member of the International Astronautical Federation (IAF) and is deploying satellite solutions for Dubai, Malaysia, Singapore and Turkey.

Another talk that inspired me a lot and in which were the things I have always advocated for science and engineering students was the talk of Byungwoo Jan, the main theme of the talk being technology needs art. His talk was about importance of literature for science and engineering students - without literature any student is incomplete for literature is a way to imagine yourself in the position of another person. Today there is lack of feeling of the pain of others which is making the world an insensitive place - one way to overcome this is through literature. The LG OTIS CEO highlighted how reading books makes life more meaningful and transforms individuals - many successful people have literature behind their back. Thomas Edison is reported to have read 3.5 million pages a life and think of all the imagination and creativity he derived from all these books. Abraham Lincoln had an unfortunate childhood, his life was transformed completely after reading the biography of President Washington and he decided to become a President. Reading books and works of literature that today's students of science and engineering do not do nor enjoy much is a very healthy habit for the mind and can be a new source of creativity and inspiration for tomorrow's scientists so they must not give up this habit.

At the end was the talk of Professor Don Norman which was undoubtedly the highlight of the entire event. The thing that was really surprising about this talk was that he did not use any slides, instead he drew all the material he wanted to present on a white board and the talk was inspiring indeed with lots and lots of lessons for people of science and engineering. The talk was fundamentally organized around the following

He first asked the audience about the ones who were happy and ones who were not and then moved on to say that those that said neither happy nor unhappy made a smart choice - because if you're happy then it means you are not doing well in your pursuit in life because on every path happiness comes with a lot and lot of unhappiness; being successful means not going through the normal way but through lots and lots of pain and difficulty. He then explained further about the happiness and sadness - it is just a state which can be measured and when on the path of achieving something one should not worry about being happy; satisfaction and dissatisfaction - it is a judgment which no one can measure except a person himself/herself and optimism and pessimism - these are points of views and this is what determines everything. As an example on point of view he explained the fear that a human feels when asked to walk on a plank placed in mid-air as opposed to no fear when he is asked to walk on the same plank placed on the floor meaning that points of views are driven by a human's emotional system, his approach and instincts and this has to be the driving factor if a scientist is to derive happiness from his science - happiness for both himself and the world.

He related a story about his experience at Apple which shows how a fusion of happiness and anxiety can lead to success in science - his tip was that when thinking about new ideas and when embarking on journey to creativity one must have fun, relax, be in a comfortable state of mind but when decision has been taken on some idea then accomplishment comes through anxiety and a worried state of mind. Lastly his talk threw light on the paradox of urgent problems vs. the important problems - it is the important problems that need to get done first because what you want to do in life is the important thing and that makes the difference.

This event was a great experience and a memorable one during my stay at KAIST and surely the lessons and tips given here will help me throughout my academic life.

Wednesday, September 1, 2010

Coling 2010 Workshop The People’s Web Meets NLP: Collaboratively Constructed Semantic Resources

Saturday, 28th August, 2010 was a long and eventful day as I attended a workshop co-located with COLING 2010 in Beijing, China. The workshop was organized by the Ubiquitous Knowledge Processing (UKP) Lab in the Department of Computer Science at the Technische Universität Darmstadt, Germany. The main theme of the workshop centered around collaboratively constructed semantic resources and their role and influence in Natural Language Processing researches of today. Though this workshop was organized for the second time and had a small community with new faces appearing this time yet the way the discussions were carried out seems to offer much promise for this community.

The following diagram gives a pictorial representation of what the workshop was all about:

Within the natural language processing domain there used to exist what we can call a knowledge acquisition bottleneck; earlier this bottleneck was resolved through development of semantic, lexical resources by experts; WordNet being a typical, classical example. However with the emergence of Web 2.0 the scenario has completely changed and the focus of the NLP community has moved from the classical resources to collaboratively constructed semantic resources (CCSRs); Wikipedia being the most popular example which is why we can now see an increasing number of research publications directed towards such themes in many reputed conferences such as CIKM, WWW, EMNLP etc.

As the diagram above shows the workshop's focus was on researches directed towards use of CCSR's for enhancement and furthering of NLP and also the other way around using NLP to improve CCSR's

The best thing about the workshop was that it welcomed researchers from diverse domains some this time and promising more for the next time; in fact the invited speech by Professor Tat-Seng Chua of National University of Singapore was also from a diverse area namely community-based question answering. Hence the papers presented were from two categories:
  • Those using collaboratively constructed resources as sources of lexical semantic information for NLP purposes such as information retrieval, named entity recognition, or keyword extraction
  • Those using NLP techniques to improve the resources or extract and analyze different types of lexical semantic information from them.
Overall there were 8 papers presented in the workshop of which 5 were on Wikipedia, 1 on Amazon Mechanical Turk, 1 on translation resources and 1 on the blogosphere.

The paper presentations at the workshop were followed by an extremely interactive and knowledgeable discussion on the theme of the workshop - collaboratively constructed semantic resources. In my opinion everyone amongst the attendees had something to take from the discussion and below I am sharing all the questions raised during the discussion along with the thoughts of the attendees. Readers can chip in their comments/thoughts/suggestions for the mutual benefit of the whole community.

The first question centered around the scope of the workshop's name i.e. whether the scope of name "Collaboratively Constructed Semantic Resources" was too wide or too narrow. The very first suggestion from the invited speaker Professor Tat-Seng Chua was a very useful one and he suggested using the term Community Based Semantic Resources instead. Two other suggestions suggested the use of the term crowd sourcing or wisdom of the crowds as these are the more popular terms used within this area and workshops co-located with other reputed conferences use these terms. However one of the workshop chairs Dr. Torsten Zesch put forward a valid argument against these two terms: one can find it hard to agree that Wikipedia falls under a crowd sourced resource and as such this term may narrow down the scope of the workshop too much; on the other hand wisdom of the crowds is a very widespread term for Web 2.0 tasks and many other conferences use it but it is too broad a theme keeping in mind that the workshop centers around use of the resources for NLP tasks and using NLP tasks for improving collaboratively constructed semantic resources.

The next question was a very important one as it bridges NLP researches of yesterday and today: what is the relation between expert-made and collaboratively constructed resources; are they complimentary or are they different? Further explanation of this question was provided by the workshop chair Professor Dr. Iryna Gurevych: for many years the NLP community has relied on classical lexical, semantic resources and they have served us well but with Web 2.0 CCSR's are in widespread use so do we still need the classical resources, shall we spend our efforts in improving the classical resources? On this question almost all the attendees were on agreement that the quality and correctness issues in CCSR's have to be addressed for example Wikipedia has some quality and correctness issues and there is very less work on addressing these issues. When compared to classical resources CCSR's are better in terms of coverage and the classical resources are better in terms of quality so the need is to incorporate quality of classical,expert-made resources into CCSR's and for this we need to provide incentives for guiding the crowds who are generating the CCSR's: Mechanical Turk for example has a nice way of ensuring quality through monetary incentives and the research community needs to think of more ways in which to ensure that CCSR's of high-quality are produced.

The third question focused on the various types of CCSR's and their classifications: what are the most valuable collaboratively constructed semantic resources, how can we classify them? The various types of CCSR's mentioned by the attendees were Wikipedia, Twitter and social networks, forums and CQA sites, YouTube, Flickr, Wiki family e.g. Wiktionary, Wikiversity, Wikitravel etc. As for the value of any CCSR the attendees held agreement that coverage and number of people involved in the resource creation are the determining factors. As for the most valuable CCSR's Wikipedia's importance cannot be denied by any means and there is ample evidence to suggest this; for the future of CCSR's Twitter may emerge as an extremely valuable resource as it a whole wealth of knowledge waiting to be mined; moreover Twitter has managed to attract the attention of the research community in a very short span of time and this can be assessed from the amount of research publications using Twitter as a source of data; reputed publication venues such as WWW, CIKM, SIGKDD, COLING etc. now have many papers on Twitter and if the NLP community directs its efforts towards this resource properly then it can be used as a very effective and useful CCSR. As for the classification of CCSR's a well-grounded classification of CCSR's does not exist and this may also be one research problem within this area as classification is a multi-dimensional thing. One significant line of discussion between Wikipedia and Twitter is that in Wikipedia the user's intention is to make a single,useful resource whereas on Twitter people share their thoughts/message separately in a 140-character long tweet implying that the nature of each CCSR is different and it is important to take this factor into account.

The fourth question centered around the impact CCSR's are having: where do CCSR's have the largest impact, do they really make a difference? Everyone agreed that impact of CCSR's is huge as it has solved the knowledge acquisition bottleneck for researchers and data is now a free resources and since free zones empower people hence its worth the effort and exertion of research efforts towards CCSR's will be beneficial in the future as well. People start to think in new ways with new resources and it benefits the whole community: within this direction an important point was raised by one of the attendees that the commercial giants such as search engines may already be using CCSR's for their tasks and this may also be a significant business secret for them. All this implies that CCSR's have a great potential to heavily impact both research and commercial applications and the community needs to think about more and more ways for creation and improvement of such resources: an example being "games for a purpose" which gives people a leisure incentive rather than monetary one for creating the resources and Google's Image Labeler is one such application which Google uses to generate image tags and hence improvement of its image search.

The fifth and last question concerned the different research areas that have interest in CCSR's: which scientific communities have collaboratively constructed semantic resources as their distinct topic, which fields other than Computational Linguistics/Natural Language Processing/Human Language Technologies should we collaborate with regarding CCSR's? This question has a broad range of answers in my opinion; some answers discussed during the workshop had suggestions to collaborate with people from the social sciences field as "Social Science meets Computer Science" is an emerging, prominent theme recently; moreover people from the computer networking domain can also provide useful insights with respect to CCSR's and hence in the future we may see a broad range of researchers gathering to work collaboratively on collaboratively constructed semantic resources.

The workshop was a great experience for me and I look forward to attending and presenting my work in it in future as well. Readers are advised to drop in any comments/suggestions with respect to collaboratively constructed semantic resources.

Friday, August 6, 2010

Applying for a Masters/PhD Program

I have been receiving many emails from students asking for guidance on the application procedure for Masters/PhD and at the same time many students seem concerned about scholarship.

So today I am writing a post to answer all these questions by the students.

Firstly and most importantly students should know that now Computer Science has turned into a very competitive field with largest number of conferences and yearly publications. It is what you can call a hyper-active field with lots and lots of research around the world. As such the model has now changed and the Masters program in Computer Science around the world now comes in two flavors: Masters by Coursework and Masters by Research, whereas PhD is a pure research-based program.

The difference between the two is that in Masters by Coursework you just have to finish course credits and that's it, you're not part of any lab or you don't have to be Research Associate under any Professor. You can say its just like the Masters program we have back there in Pakistan in universities like FAST-NU (though I have been told that as of now FAST-NU encourages research and a project/thesis is a mandatory part of MS degree requirement). On the other side of the spectrum the Masters by Research program is very much like PhD program and your transition to PhD is much easier if you go for Masters by Research program, you have to do a Masters Thesis and you basically work for a Professor as Research Associate. Your choice of thesis topic is with him and its pure research and quite tough too but yet a great learning experience. Some Masters by Coursework programs such as the Erasmus Mundus Masters program and Masters program in some Swedish universities also has the requirement of a Masters Thesis but the choice of your thesis is entirely upon you and little supervision is given during the thesis for example you don't have to complete a literature survey phase, design phase etc. with any Professor.

Applying to the Masters by Coursework program and getting admitted into it is considerably easy. All you have to do is go to the university website, search for the application instructions for applying to Masters by Coursework program, prepare your documents as per the instructions and send them by airmail. That's have applied to the Masters by Coursework program. Now you have to wait for admission results of the university to which you have applied.

Now coming to the procedure to apply for MS by Research or a PhD program you have to do the following:

  1. First you have to identify your research area and search for universities around the world that have research labs/groups working in those areas. This step has to be conducted really carefully as you are the one who knows your research aptitude and potential areas of your interest. Go through the lab's research work very thoroughly, read some of their important publications and decide on basis of that. There is no point in going for research in Computer Science if you have no aptitude for it or cannot narrow down any specific research area for yourself. Most students from Pakistan just want to get admitted anywhere and for that they even don't bother whether the field interests them or not. In fact some even change their field like they have one research area during Masters and land up in a completely different area during PhD, how could anyone who has love for scientific research not choose the area carefully in the first place. This approach may make you get admitted but is not going to help your career as a scientist if you are willing to become one that is.
  2. After you have completed step 1 you must have a list of potential universities in which you are interested and the research groups you find appropriate for yourself have to approached now. The way to do this is to approach through Professors, basically co-ordinating with a Professor from your research area before application. The main thing is getting some Professor interested in you joining as a Research Associate in his lab and the process of approaching Professor has to be well thought out. Dig deep into the work of his lab and explain to him clearly why you want to work with him and in what way you think you will contribute towards his research. Read some of his papers and then compose an email for him. That email should also be written after a lot of study and include a web link of your online profile for the Professor; if you do not have an online profile then create one. An online profile is extremely important in this era of competitiveness and more so if you want to do research in the field of Computer Science. It is better not to attach things with your first email as first email to Professor has to be very short and concise. Here are some great advices for prospective research students by a Professor of University of Virginia: advices.
  3. If after reading your email the Professor thinks you can be productive for his lab he will be ready to take you and agreement of Professor is like 70% of process done.
  4. For the next step he will ask you to send your application package to the university and will support your application. Professor's support of your application highly boosts your chances of successful admission.
Now coming to scholarship: that varies from country to country and university to university. Many universities of the world have tuition fees exemption for international students and in addition to that they give stipends for living expenses so no you don't have to do a job. This is the case in many Asian countries like Japan, China, South Korea, Hong Kong,Taiwan etc. and don't think that since these countries are in Asia their universities are not good. In fact these afore-mentioned countries currently have the highest academic publishing rate in the world even more than what is currently in the US......they have some excellent researchers and Professors with a brilliant environment for research. Whereas the case in most European and US universities is that scholarships/funding is not available for Masters students be it Masters by Coursework or Masters by Research and the situation after global economic crisis is even worse so you might have to do a job which may be a great burden for your research work or you may have to arrange for the amount beforehand which also is quite tough. The case for PhD programs is different; PhD students get scholarship by default almost everywhere since PhD implies you are a Research Associate in some lab so the lab is responsible for your funding.

This is about it, I hope students find this helpful. If there are any queries or any sort of help needed you may contact me on my personal email id: or

Friday, July 23, 2010

[From SIGIR 2010]: Best Paper on Value of Search Trails in Web Logs

We search daily for information; in fact it would not be wrong to say that search has become an integral part of our life on the Web. However while searching for particular information comes a complex range of interactions which varies for different users and different queries and it is these complex interactions that are recently attracting focus of researchers at Microsoft for their Bing search engine and this was the theme of the best paper in SIGIR 2010 "Assessing the Scenic Route: Measuring the Value of Search Trails in Web Logs."

The paper itself is very interesting and again it seems that the focus of future Information Retrieval researches would heavily come from Human Computer Interaction as was also obvious from keynote talk in SIGIR 2010.

What happens when you enter a keyword for searching on Google, Yahoo or Bing: a list of Web pages are returned which are ranked based on their relevance which has been computed for much time with the much-renowned PageRank and now variants of PageRank are used for the purpose. Now what do you do with these results? You either follow the different links one after another and finally set to a page that you find to be most satisfying for your query: the entire set of pages followed have been referred to as search trails by White of Microsoft Research and Huang of Washington University and in this research they have studied the value that users derive from this entire activity through a log-based analysis. The researchers collected logs of URL visits of users who opted to provide this data through a widely distributed browser toolbar; the data was collected over a three-month period from March 2009 to May 2009. Formally a search trail is defined a temporally-ordered sequence of URLs beginning with a search query and ending with either: (1) another query, (2) a period of inactivity of 30 or more minutes or (3) termination of browser instance or tab; the figure explains this more clearly:

In the figure the circle represents query along with search engine result page, rectangles represent web pages that user navigates to from the search engine result page, double vertical lines represent backtracking to an earlier state and back arrow shows that user has requested to see a page earlier in search trail. Example in the figure shows a typical example of a search trail with query Q1 initiating the trail and user navigating to page P2 from the results page, then to page P3 and from page P3 to page P4; page P4 does not satisfy the user so he returns to page P3 which is why page P3 has the double vertical lines and then finally navigates to page P5. In this context page P2 is origin page and P5 is destination page.

Currently search engines provide only the origin page in their results, this research aims to study the value derived from following of links so that in the future search engines may offer more refined results for example showing of full trails directly on search results, query-specific and user-specific search results etc. The findings showed that following search trails provides users with significant additional benefit in terms of coverage, diversity, novelty and utility: there is a lot of value in the trail and hence we may see in future recommendation pages in Bing with an integration between the recommendation systems and search engines.

Wednesday, July 21, 2010

[From SIGIR 2010]: KeyNote on Refactoring the Search Problem

The largest forum for researchers in the Information Retrieval community "ACM SIGIR" is underway in Geneva, Switzerland and it began yesterday. The best thing about social network platforms of today is that even though you are not in the conference, you are up to date with all the talks , the papers and new innovative ideas being presented and thanks to Twitter and blogosphere much of SIGIR 2010 happenings are coming to me straight and live :)

This year's SIGIR conference has 15 papers from Microsoft Research which clearly shows Microsoft is going to put a lot of effort into IR in the near future and researchers at Microsoft are certainly working hard to make Bing better and better.

Yesterday's keynote speech at SIGIR was presented on refactoring of the search problem in which Gary W Flake of Microsoft Live Labs described and demonstrated Microsoft Pivot.

From what I see it, Pivot seems to be a cross of the aspects of HCI (Human Computer Interaction) and Information Retrieval. Watch this TED talk for a live demo of Pivot:

Pivot's claim is to get rid of the curse of information overload in this information age by making the user search experience more near to a search rather than simple browsing.........this he said is achieved by taking raw data and combining it with metadata for faceted navigation. The idea seems promising but I find it is more so borrowed from Wolfram Alpha who have already experimented with this type of search engine which they call a computational knowledge engine:

Also some hard challenges in this task involve server-side issues and a question: is this style of search a good model for all kinds of searches? That the future will tell as Microsoft has plans to integrate Pivot technology with their recently released search engine Bing.

I will be blogging more on some key papers and talks in SIGIR...........if you are interested in live updates follow on twitter with hastag #sigir2010, #sigir and #sigir10.

Friday, July 2, 2010

Paper Reviews: A Great Learning Experience

Reading a fairly good, published paper is a very different thing from reading an unpublished paper submitted for a conference. Most papers presented in decent conferences are well organized and reasonably written and those are the only papers you probably have read in classes and for your research. For a task of reviewing as part of program committee, you get to read quite different papers and many of them are poorly written in one way or another. This I realized when I had to do my first paper review task for the papers submitted for the reputed CIKM conference of this year as my Professor is part of the program committee for this conference. The paper review task is assigned to all PhD students of our lab for learning how to write a good paper the premise behind it being that if you can review papers well then you can also write good papers, luckily I was the only MS student who got to do such a paper review job because out of the assigned papers by CIKM one was related to my MS thesis topic.

The review process is a very rigorous one with a whole round of discussions between the students and seniors (PhD and PostDoc students) ; we read each and every paper carefully along with identifying the problem statement in each paper, the related works in the dimension and the solution proposed to solve the problem. We then identify strong and weak points in each paper which is of course the tough part and is the determining criteria whether to accept or reject the paper.

This whole activity although time-consuming and cumbersome offers a lot to learn specially for students like me since you are in shoes of a reviewer who reads papers you submit to conferences. You are reminded of the do's and dont's while submitting your own paper and this is the entire point of this activity. Reading the papers makes you learn how to write a good paper by following some essential guidelines and keeping in mind the mistakes you should not do at all.

Most importantly the effort that goes into the review process of these credible and prestigious conferences is what Computer Science community in Pakistan should learn from..........these days there is a whole "blogging" boom with bloggers considering themselves extremely credible about which I also wrote and criticized few days back. The people who are related to Computer Science back in my home i.e. Pakistan and in other developing countries need to learn that credibility comes from published, reviewed and innovative work. At the end of the day Computer Science is a science and has to be treated like that, the technologists might be good in their respective fields but they lack the expertise needed to make a country prosper in the long run...............scientists are needed to create technologies of the future and this is what matters when it comes to real development of a country.

I wrote a quick post to voice out my concerns for the betterment of Computer Science in developing countries and now back to review job as writing the review is another tough part of the job which I have yet to finish.

Friday, May 28, 2010

Python and C++ Integration Tutorial

Today I am going to write for the wonderful Python community out there, beauty of open-source is the huge community and help that they provide to each other through blogs, forums, mailing lists etc. So after my struggle with Python and C++ few days ago I planned to write this post to help those who may be struggling with a similar problem.

Although Python is such a great programming language in which you can do almost anything as I mentioned in my previous post but when it comes to performance and efficiency C/C++ has no competitor. So there are times especially for large-scale systems where performance cannot be sacrificed and you have to resort to C/C++ but oh no!!! Most of your source code is already in what now?? Well not to worry. Another great thing about Python is the concept of extending it using C/C++ and that's exactly what I did. But it's easier said than done.

Calling C from Python is relatively easy but calling C++ is the real headache so I am sharing how to do it for any programmer that needs it, I had a tough time due to lack of proper tutorials on the subject and this also motivated me to write one :)

The sample class that we use here is Employee and we will use its data members and methods in Python. You can download the complete code here.

In the Employee.cpp file there is a piece of code that does the actual work, Python can call C functions with Python C API and hence its necessary to provide C extensions by keyword extern, here is the code that does it:

extern "C" {
Employee* Employee_new(){ return new Employee(); }
void Employee_promote(Employee* emp){ emp->promote(); }
void Employee_demote(Employee* emp){ emp->demote(); }
void Employee_hire(Employee* emp){ emp->hire(); }
void Employee_fire(Employee* emp){ emp->fire(); }
void Employee_display(Employee* emp){ emp->display(); }
void Employee_setFirstName(Employee* emp,char* inFirstName){ emp->setFirstName(inFirstName); }
void Employee_setLastName(Employee* emp,char* inLastName){ emp->setLastName(inLastName); }
void Employee_setEmployeeNumber(Employee* emp,int inEmployeeNumber){ emp->setEmployeeNumber(inEmployeeNumber); }
void Employee_setSalary(Employee* emp,int inNewSalary){ emp->setSalary(inNewSalary); }

In the code the return type of all methods is void, the constructor must have the form ClassName*...........the tough part is when you have methods that take arguments and I had quite a tough time figuring that out due to lack of tutorials on the subject. The way to do it is like this, within the extern block write the method signature as before but after the object you should have the parameter types in the signature as shown here: void Employee_setFirstName(Employee* emp,char* inFirstName){ emp->setFirstName(inFirstName); }

Now the library generation part, here's how to do it in g++

g++ -c -fPIC Employee.cpp -o Employee.o
g++ -shared -Wl,-soname, -o Employee.o

This will generate the dll (you can give it any name of your choice) and then it can be easily called in Python. Here is an example of Python code calling a C++ class, marvelous:

from ctypes import cdll
lib = cdll.LoadLibrary('./')

class Employee(object):
def __init__(self):
self.obj = lib.Employee_new()

def EmployeeTest(self):


So ctypes does the trick and makes it quite simple........there are also other alternatives such as Boost and Swig which I have not yet explored but will do in near future as I have to work with Python and C++ for my research work for MS thesis. So stay tuned for more.

Friday, May 14, 2010

The Python Experience

Today I will write an introductory post on Python, few days back a student said to me, "Python must be hard" and she is the main reason why I came up with this post.

In one phrase I would say that Python is the best of both worlds because it is capable of delivering the power of traditional compiled languages like C, C++ and the ease of use and simplicity of scripting, interpreted languages like Perl, Tcl. In the world of Python imagination literally becomes the limit for the programmer.

Few people know that Python is used for major tasks by companies like Google, Yahoo!, NASA, Red Hat, Pixar, Disney and Dreamworks. In fact today what we see as Yahoo! mail was the Rocketmail Web-based email service and it was designed in Python. Today many universities are planning to use Python to teach introduction to programming so that students can focus on problem-solving skills instead of being bogged down by the difficulty of the language and some including MIT have even started to do so.

So here goes for the students back in Pakistan the basic features of Python which make it so appealing and powerful:

  • Of course it is a high-level language, its beauty lies in its higher-level data structures that reduce the development time marginally.
  • Python has support for object-oriented programming, in fact it is an object-oriented language all the way down to its core.
  • With python the code is compact and that's also the beauty of it. Python is often compared to batch or Unix shell scripting languages. But with them there is little code-reusability and you are confined to small projects with shell scripts. In fact, even small projects may lead to large and unwieldy scripts. Not so with Python, where you can grow your code from project to project, add other new or existing Python elements, and reuse code at your whim.
  • Python's portability is also what makes it the most widely used programming language today, it can be found on a variety of systems. Python is written in C and due to C's portability Python is available on practically every platform that has an ANSI C compiler.
  • Python is extremely easy to learn and students can grasp it very quickly so I would certainly recommend to many students reading this post and if you need any sort of help feel free to contact me.
  • Python's code is very easy to read so much so that even a reader who has not ever seen a single line of Python will begin to understand and read the code instantaneously.
  • Python code is extremely easy to maintain and if you review a piece of code you wrote some months back you will be able to grasp it in no time.
  • Python is robust to errors. Python provides "safe and sane" exits on errors and when your Python crashes due to errors, the interpreter dumps out a "stack trace" full of useful information such as why your program crashed and where in the code (file name, line number, function call, etc.) the error took place. These errors are known as exceptions. Python even gives you the ability to monitor for errors and take an evasive course of action if such an error does occur during runtime. These exception handlers can take steps such as defusing the problem, redirecting program flow, perform cleanup or maintenance measures, shutting down the application gracefully, or just ignoring it. In any case, the debugging part of the development cycle is reduced considerably.
  • Now comes the one great thing I simply love about Python: numerous external libraries have already been developed for Python, so whatever your application is, someone may have traveled down that road before. All you need to do is "plug-and-play". There are Python modules and packages that can do practically anything from natural language processing in NLTK to scientific computing and everything you can imagine. In Python if you cannot find what you need chances are high that there is a third-party module or package that can do the job.
  • Python has its own memory manager, the thing that makes C and C++ extremely burdensome is that memory management is the responsibility of developer: the programmer has to take care of dirty tasks of memory management no matter what but with Python this headache is gone.
  • Python is classified as an interpreted language. However traditionally purely interpreted languages are almost always slower than compiled languages because execution does not take place in a system's native binary language. But like Java in reality Python is byte-compiled i.e. results in an intermediate form closer to machine language. This improves Python's performance while allowing it to retain the advantages of interpreted languages.
So dear students I would certainly recommend all of you to do give it a go at Python as in the long run it will really benefit you.

Tuesday, May 11, 2010

Is Search Really Dead??

Gone are the days when I had to go through newspaper sites or search engines to find out the result of a late night match that I could not watch the previous all I do is just login to my Facebook account and there it is it: the latest news right before me. So where are we heading towards?

This post is a little glimpse into the future of information retrieval: yes today I have decided to throw some light on my research area but not from too much of a technical standpoint but from an interesting standpoint which opens a whole new area of research. The area and concept is becoming so important that a special panel was devoted to this discussion in this year's WWW 2010 conference at Raleigh, USA. WWW Conference is the world's most renowned platform for WWW researchers and the theme was "Search is dead." The panel comprised of the following people:

Andrei Broder – Fellow and VP, Search & Computational Advertising, Yahoo! Research.

Marti Hearst – Professor, School of Information, University of California-Berkeley.

Barney Pell – Partner, Search Strategist for Bing, Microsoft.

Andrew Tomkins – Director of Engineering at Google Research.

Prabhakar Raghavan – (Co-organizer and Moderator) Head, Yahoo! Labs .

Elizabeth Churchill – (Co-organizer) Principal Research Scientist, Yahoo! Research.

If I have to sum up the discussion in one line it is "Search as we traditionally know it is already dead!!!!"

Already user expectations from search engines are changing, the traditional task of typing in a query and being offered 10 blue links in response now amounts to a failure.Completeness is the key here: users want search engines to incorporate all the incredible level of richness that is available these days as today there is much more diverse data sources and presentations than links to web pages. So with the user needs getting "weird" and the search business competition getting "fierce" we are at the doorstep of yet another information retrieval (IR) revolution after PageRank.

Well it boils down to an important question: who is a key player in all this??? Any guesses??? Yes social networks like Twitter, Facebook, MySpace and Orkut. Mark Zuckenberg's statement at Facebook's F8 Conference, "We are building a Web where the default is social" throws a lot of light into this entire phenomenon and in particular the new Facebook Platform, crucial parts of which are the Open Graph and Social Plugin. Already as statistics say Facebook has surpassed Google in Internet traffic and this may be the beginning of the new revolution.

So what's your say on it? Is the search really dead?? I will reserve my own thoughts on this for sometime :) and would love to hear from my readers.

In the end a short video to throw some more light into this social media revolution:

Saturday, April 10, 2010

Is blogging really something to brag about?

Today I was shocked at reading a debate on Facebook on whether the HP products are good or not. One argument really threw me in shock and then when I came out of that shock I landed into a worry. To some the comment may not come as a worry but if you look at it from an analytical viewpoint then it surely is a time of emergency for Computer Science in Pakistan, the comment was "I am a blogger and I write about HP!!!" Seemingly it is harmless but the authority with which it was said left me astonished.

My astonishment comes from the level of significance these bloggers are claiming for themselves, fine you blog about stuff and you do have a voice in the news arena and your blog activities may be shaping minds of some people but does that mean that every word you write is credible and warrants acceptance. Your profession is what makes you credible, if you think that just blog posts are what matter then there would not have been any such thing as research value through publications and citations.

It really bothers me to see the state of Computer Science in Pakistan and what's more disappointing is the attitude of the people in the field. They do not even realize where their ignorant and arrogant attitude is going to take the country and on being corrected they strike back with more arrogance and ignorance.

I am afraid that if this trend is carried on it will lead us to a mere consumer society which we already are, here I have my Professors working on mining and analyzing the blogosphere; and back there we just have people content in writing blogs so we are just the data for researches of the future.

Things really have to change and they have to change fast!!!

Friday, February 19, 2010

Writing a Research Paper: Important for Those Thinking about FYP

I have been approached by many students specially in their final year of BS Computer Science for some tips and basic guidelines on writing research papers. So today I decide to blog about it based on what I have gathered from my experience. These techniques are based solely on my experience and anyone having additional suggestions is welcome to contribute.

Writing a paper is not a complex task at all: the most important thing in my opinion is o love what you're doing and be really excited about it. In the words of Meeyoung Cha:

"If you fancy a career as a researcher, you'll spend tens of thousands of hours on work over the next 10 years. The only way you're ever gonna spend 10,000 hours on research is only when you truly deeply love it. If something really engages you and makes you happy, then you will put in the kind of energy and time necessary to become an expert at it." - Click for Source

So find a research topic that really fascinates you and makes you want to invest your hours and hours into it without any regrets.

Divide your activity into phases:
1) Literature Survey
2) Design Phase
3) Implementation Phase
4) Experimental and Analysis Phase
5) Writing the Paper

Literature Survey
After the initial finding of identifying your area comes the real task: narrow down the specific domain from the area in which you want to work i.e. find a problem and conduct a literature survey i.e. see what approaches the research community has proposed to deal with that particular problem for example say there's a problem coming from the web crawling domain. Search for the best conferences in that domain like SIGIR, WWW, CIKM, ICDE etc and browse through the conference proceedings and read the famous papers relevant to your problem. To further explain I take another example from the domain of Computer Networks, suppose you want to take up a problem on Network Virtualization, then go through the famous conferences NSDI, SIGCOMM, SIGMETRICS, OSDI, SOSP etc. and read papers of some of the renowned researchers of the field.
This phase is the most important and crucial for here is from where you can extract all innovation and ideas and it serves as a prelude to the next phase of design.

Design Phase
This phase is the core of your research project/work, from the literature survey that you conducted in the last phase you must have come up with some potential shortcomings of each previously proposed solution. Now is the time to gather all what you gathered and design your own effective solution to deal with the problem at hand. During this phase I would personally advise to take suggestions from researchers working in those domains, the research community works in a collaborative environment and many would love to listen to your approach of handling the problem at hand. You can even write to authors of papers you read during the literature survey phase and they might write back to you with some further suggestions.

Implementation Phase
As obvious from the name in this phase you do the programming part, you can choose any platform suited to your research needs. Best thing about the sciences is that there is no limitation on development platform but try to choose a platform that has a large support from the worldwide community of scientists and engineers so that if you get stuck somewhere finding help is easy and if you choose a platform that lacks such support then bravo, chances are you might end up being one of the pioneer researcher for implementing your idea in that platform.

Experimental and Analysis Phase
Make no mistake about it, this phase is also very crucial and is what adds the real value to your work. It is what distinguishes it from the rest of the works in the field and highlights your research contribution. In this phase you must compare your approach with existing approaches and there must be some important comparison metrics for example bandwidth, throughput, jitter etc. in case of some computer networking research. This phase also serves as a valuable part of your research paper so don't overlook its significance and concentrate your efforts on it with due care.

Writing the Paper
1- Save all related data in one folder including results, pictures or any related text of literature survey, previous reports you have written for the project (if any) etc.
2- Download the specific format of conference/journal from their website. It will be easier for u to directly write as per that format, rather than first writing in a blank word file and then struggling/fighting with word.
3- Write abstract at the end of paper, rather than in the start.
4- The easiset way is first just write all first level heading e.g. (JUST AN EXAMPLE) Introduction, System overview, Algorithm Design, Results, Conclusion, References etc etc . The next step is to write second level headings (where-ever applicable).
5- Then make tables, flow-charts, figures and paste HIGH resolution images in corresponding headindgs.
6- Now your paper needs text stuff. If you are going to copy/paste text from self written reports, do not forget to keep continiuty in your script. Because something might be clear to you (as you have worked on this research/project) whereas for others there might be some "hidden details".)
7- After you finish your paper, write short summary in the form of abstract and assign proper keywords to your paper. The abstract should be such concise that the relavant reader is forced to read your paper!
8- Read your papers yourself a number of times and then ask some of your friend (with good English grammar) to go through it for correction of a/the/an etc.
9- Remember a very important norm, you should inform and give a copy of your paper to all those Professors/Persons whose names you have mentioned in your paper. One should NOT submit any paper in any conference without notice of co-supervisor and Professor.
10- Try to submitt paper some hours (at least) before the deadline time. Because mostly just before the deadline hour, a lot of people upload and thus system/server gets jammed. If however this is the case with you, just send the organizers by email (mentioning problem and time of submission).
There are a lot of related other things which one learns from his own personal experience. Remember as I mentioned no work is worthless !! You just have to present them in a proper and systematic way and find a conference which matches the technical depth of paper. Most of conferences in Pakistan provide a good nursery to write/present your work. So do not under-estimate your work. If anyone has any query, please feel free to ask me on my personal address ( or I would recommend to discuss on the group:

Lastly a very important announcement from my side for the final year students, I have many research ideas and am looking for some students for research collaborations, if anyone wants to pick up any idea for his/her Final Year Project then feel free to contact me again on the email address given above or the Yahoo group.

All the very best in this venture of final year project!!!

Tuesday, February 16, 2010

Avatar Review: A Movie Relevant to Today's World

Avatar is the new talk of the town these days with most of the people highly impressed by its high-quality graphics and awesome visuals but in my opinion there's more to it than just that. I am quite disappointed by the review I got from people of it being somewhat predictable and storyline being ordinary.

On the contrary I found Avatar highly relevant to today's world: a world of war and destruction caused by the greeds of capitalist US.

Avatar depicts US as the "sky people" who portray the peaceful Navis as a threat to their security and these "sky people" claim to fight terror with terror: a propaganda well-known in the real-world too where the US portrays and propagates Muslims as following an evil ideology aiming to annihilate the world with terror. The same bundle of lies is used against the Navis that the US has been using against the Muslims: in reality they wanted something else, a precious stone found in the forest where the Navis lived peacefully. They lied, distorted facts, showed the Navis as dangerous people simply to further their evil designs: a strategy they used in Iraq, Palestine, Afghanistan. The movie takes us to how they manipulate and use lies for their benefits and do not stop from destroying peace of the world simply for their materialistic pursuits.

Jake Sully - the main character in the movie who is an ex-Marine is used by the "sky people" as an impostor to penetrate into the Navis, pretend to be one of them, get access to their secret world and then either make them negotiate on evacuating their forest or helping the "sky people" in destroying the innocent Navis. In return Jake would get back his legs, but in the course of pretending he realizes the evil designs and the truth, purity and integrity within him stops him from being a part of this evil plot. He decides to help the Navis for they were innocent and harmless unlike what was being spread by the "sky people", they had a world of their own: a beautiful world. This is what is happening today: the evil, capitalist US in pursuit of oil ran over the Muslims and is bent upon destroying them basing its war on a bundle of lies.

Below is an interpretation of Jake Sully's words in our real-world of today:

"The Sky People (US) have sent us a message(occupation). That they can take whatever(oil) they want, and no one can stop them. Well, we will send them a message(by reviving Caliphate). We ride out as fast as a wind can carry(to call people to Haq). You tell the other clans(people,influentials) to come, we will show the Sky People. That they CANNOT take whatever they want. And this..THIS IS OUR LAND!"

The movie concludes with a message, an important message to the US and its allies and to those who believe that US is invincible and Islam's return as a system is a mere dream: I say to those watch Avatar (a movie from an Canadian director himself) and get that message loud and clear!!!!

Wars cannot be won through technological advancements and numbers, wars can only be won through the power of truth, power of honesty, power of purity and above all power of unity!!!

Saturday, January 16, 2010

The Quranic Style and Narrative

As I said in my last post I will be describing briefly about my role in brother Khalil's conversion to Islam so here goes.

It all begin with a heated debate on the profile of my school mate Shamikh Ahmed and I was debating against a US citizen Faizan Rizvi who also happened to be my class fellow back in school but in the other section so I didn't recall about him immediately. Later on brother Faizan by the grace of Allah realized he was wrong and then began this wonderful mission of ours: the writing of articles for brother Khalil.

Brother Khalil formerly brother Michael has a Ph.D. in English Literature and he wanted to know somethings about Quran's literary style, brother Faizan knew him and wanted my help in this task. This is the paper I wrote which played a large role in his conversion Alhamdullilah:

The Quranic Style and Narrative

The article touches upon the Quran’s style of narration and its supreme literary style. No doubt Quran is a miracle given to the Prophet Muhammad (SAW) by Allah (McAuliffe). In the opening part it talks about the structure and history of preservation of the Quran. Later the article focuses on the narrations in the Quran: the unique style of conveying the Message to Mankind through stories repeating the same story and continuing it in several different Surahs, something known in literary terms as cross-referencing. This is a unique literary style found in only the Quran but it serves important purposes as mentioned in the article itself: “1) to sustain interest in the story, 2) to test the reader’s comprehension of its implications and 3) enforce the significance of the story within the text’s context.”
One example the writer has focused and picked is the story of creation which the Quran mentions in several places: Surah 41, Surah 79, Surah 15, Surah 2, Surah 7. The story is narrated in a way that leaves the reader captivated and makes him absorb the sublime message of truth. The creation of “Heavens” serves as a reminder to Mankind of the favors to those who will follow the path prescribed by Allah. Each time the reader reads the story of creation it leaves a different impact on his mind and heart, although the story is the same yet each time the underlying message is different with a unique touch. For example when talking about the unbelievers’ attitude in Surah 41 Allah admonishes them in strong words whereas in Surah 15 the style changes to a less stricter tone but Allah predicts what would unbelievers say even if they were to be taken to the Heavens.
Also the significance of the event of Satan not only stresses the importance but serves as reminder of the challenge he poses for Man, the Satan will continue to divert Man from the way of the Lord till the Judgement Day. The dialogue between the Lord and Satan is repeated many times in the Quran and each time it leaves a different impact on the reader’s mind.
This is enough evidence for a person to see that the Quran is definitely a literary masterpiece and is seen as such by both Muslims and non-Muslims. (Boullata 2000). The Qur'ān never tells a story for its own sake, but rather uses it to drive home the point it happens to be making in a sūrah or in a section of it. As a rule, considerations of the thematic unity determine which portion of a story will be narrated in which sūrah. In other words, the story told in a given sūrah is likely to be sūrah specific, the apparent disjointedness of the Qur'ān in this case concealing a carefully worked-out technique of storytelling.
The literary excellence of the Quran is unmatchable, As a gift from Allah to mankind, the Quran employs the most sublime literary art. The Qur'ān possesses a rich literary repertoire of its own. Besides making a masterful use of language on the level of words and phrases, it contains figures of speech, satire, and irony; employs a variety of narrative and dramatic techniques; and presents characters that is spite of the sparse personal detail provided about them, come across as vivid figures. This is evident from the second series of narrations touched upon in the article which constantly makes mention of the people of the Book and how they treated Moses and then Jesus. After the narrative part is the warning for their deeds and then it goes on to mention the reassurance for those who did not go astray. It so well-connected and appealing and the series of stories seem to follow a connected chain of events. At the same time within these narrations come time and again the legislative aspects of the Holy Book serving as a reminder that Quran’s actual purpose is not simple narration: its ultimate aim is to take Man out from the shackles of human slavery and give him as a sub-ordinate and slave of Allah, the Exalted and High. The challenge of Quran is to replace legislator of law by only Allah and He is the only Legislator alone and this is what is to be kept in mind. (Qutb)
The narrative aspect of Qur'an style remains one of the most creative and innovative of the Holy Book, one which has profoundly influenced and enriched the Arabic language. Whatever narrative style the language had in pre-Islamic times were relatively crude and primitive. Even though the narrative parts of the Qur'an were clearly put to the service of the main theme of the Book, i.e., religion, the narrative was so highly developed and integrated that it became a work of art in itself. The Qur'an is remarkably innovative with respect to its method of presentation, which involves four different techniques. One common technique is that if beginning a story with a short summery, followed by the details from beginning to end, as in sura 18 (al-Kahf). The second technique is that of beginning a story by presenting the conclusion first, then the lesson to be derived from it, and then the story from beginning to end, as in the story of Moses in sura 28 (al-Qasas). The third technique presents the story directly without introduction, as in that of Mary following the birth of Jesus in sura 19 (Maryam), and the story of King Solomon and the ants in sura 27 (al-Naml). The fourth, and perhaps most innovative, technique is that of presenting the story through dramatization. This technique gives only a brief introduction signalling the beginning of the scene, followed by a dramatization of the story with a dialogue among the various characters, as in the story of Abraham and Ismail in Surah 2.
The story of Joseph narrated towards the ending of the article is one of the most beautiful and touching stories found in the Quran. In fact rarely has It left an eye unwept and part of it can be attributed to the unique narrative style in which Joseph’s whole narrative is related. It has a unified plot, and that the plot is organized on (the analogy of the rhetorical device of 'involution and evolution': the first half of the story creates a series of tensions which are resolved in reverse order in the second half (Mir 1986)
One of the elements indispensable to dramatized narrative is change of scenery, which the Qur'an utilizes fully. In the story of Joseph in sura 12, the reader is presented with a succession of scenes, each of which leads to the next, picking up the main thread of the narrative. Joseph's story comprises some twenty-eight scenes, each of which leads to the next in a manner which maintains the organic unity of the entire narrative. All such scenes are presented through dialogues replete with details and ideas. The result of such a well-knit passage is that the reader finds himself drawn to the narrative, moving anxiously from one scene to another. This effect is achieved through a coherent series of events which sustain his curiosity and interest. In one scene, for example, we find one of Joseph's brothers entering the king's court in Egypt where Joseph is the keeper of the store-house. In this scene, Joseph stipulates to his brothers that they should bring their younger brother to the king's court in order to receive provisions. The next scene presents the brothers deliberating among themselves, which is followed by a scene in which they have returned to face their father, Jacob. The following scene takes the brothers back to Egypt to confront Joseph. The presentation of the narrative in dramatic form involving a succession of scenes brings home effortlessly the main theme and the lessons to be derived from the whole narrative. The use of dialogue makes the scenes more vivid and closer to life. This is an art in which the Qur'an excels, and an art in which it is remarkably innovative. It is clearly a form of literary composition which the Qur'an, the first book in Arabic, introduced to the language.
The very aspect of self-referencing in the Quran further stresses its unique literary style; the Quran was very well aware of its literary style. The Qur'ān claims to be inimitable and challenges its opponents to produce a work like it (e.g. 2:23; 11:13; 17:88; 52:33-34). The inimitability later came to be constructed essentially in literary terms, and the theologians made belief in the matchlessness of the Qur'ān part of a Muslim's faith. In its historical exposition, the doctrine of inimitability made the literary study of the Qur'ān a handmaiden to the theological aspect of the scripture. But the doctrine overlooks a crucial fact. The Qur'ānic challenge was addressed not to the believers but to the unbelievers, and was not simply denunciation of the unbelievers, but constituted an invitation to them to carefully examine the Qur'ān and see if it could have been, as they claimed it was, the product of the mind of a man possessed. Irrespective of what conclusion one reaches on the question of the Qur'ān's origins, one must agree that the underlying assumption of the challenge was that the merit and beauty of the Qur'ān could be appreciated even by those outside the fold of the faith. And if that is the case, then it would be possible to dissociate the literary study of the Qur'ān from the theological study of it.
The pagans of Mecca were bent upon proving Muhammad(SAW) as a liar. They were thirsty for his blood and who else could have wanted more to silence that man for the control of whom they were spending huge amounts of money and fought several battles. Had the Quran been the product of a human mind, they could have easily accepted the Quranic challenge to produce the likes of it but they knew in their hearts of hearts that it is a Divine scripture and the “Quran’s challenge” left them speechless. Last but not the least, one of the most fascinating aspects is the language of the Quran: You can never feel the actual literature because the words you are reading is not the word of God, its just a translation. To Feel that you have to know Arabic and its literature. For those who can read the Qur'ān in Arabic, the all-pervading rhythm which, in conjunction with the sustained use of what may be called rhymed prose, creates in many Surahs a spellbinding effect that is impossible to reproduce. There is the characteristic terseness of the Qur'ānic language which makes for some complex constructions, but which is difficult to convey in English without being awkward. The existing translations of the Qur'ān impose a further limitation, for they fall so far short of the highly nuanced original that a detailed study of the Qur'ānic language and style on their basis is well-nigh impossible (Mir 2000).

Works Cited
McAuliffe, Jane Dame. Encyclopaedia of the Quran. Brill, 2002-2004.
Boullata, Issa. Literary Structures of Religious Meaning in the Quran. Curzon Studies Int He Qur'an Series, 2000.
Qutb, Sayyed. “In the Shade of the Quran” v. 14 Islamic Foundation.
Mir, Mustansir. The Qur'ānic Story Of Joseph: Plot, Themes, And Characters, The Muslim World, 76 (1986) 1:15.
Mir, Mustansir. Islamic Awareness: The Quran as Literature, Renaissance, 2000.

Sunday, January 10, 2010

The Story of a Muslim Brother in USA

Firstly my apologies on having left out blogging for quite long. It's a busy MS out here in Korea.

Today I want to write about a special person in the United States of America. It brings tears to my eyes when I think of his story and the special way of Allah to spread His Message to us, human beings.

This is the story of my brother Michael Tores who is now Khalil Tores by the grace of Almighty Allah.

What's more remarkable and amazing about his story of conversion to Islam is the way in which Islam appealed to him:n through the beauty of Quran's literary style and way of addressing people. This brother has a Ph.D. in English Literature and what shook him deeply was the style and literary beauty of the Quran which according to him cannot be the work of any human and is definitely Allah's word to Mankind.

It amazes me to say that Islam appeals to so many different people in so many different ways. Allah's Sublime and True Message is spreading in the masses. Brother Michael, now Khalil kept searching for this Truth all his life and he found it in Islam.

In my next post I will be sharing how I played my role in his conversion and Allah blessed me with this grand opportunity.

My words for brother Khalil: you now belong to the Ummah that is most superior of all Ummahs, you and I have a responsibility to carry the Truth we hold to other people around us. May Allah always keep you blessed by keeping you on the path of Truth and may we be of His loved ones, those who are guided.