Wednesday, November 15, 2006

Clockwise circles with right foot

Here is a mind boggler :
  • While sitting at your desk, lift your right foot off the floor and make clockwise circles with it.
  • Now, while doing this, draw the number "6" in the air with your right hand. ...... your foot will change direction !
This is so funny that it will boggle your mind, and you will keep trying it several times to see if you can outsmart your foot -- but you can't !

Sunday, November 05, 2006

Who reads Knuth?

It all started on the day when professor Anal Acharya was teaching us Quicksort Algorithm in our class. He mentioned to us that a person named D.E.Knuth has written an entire book on Sorting and Searching! Initially I could not believe that there could be an entire book on this subject. Till then my idea of Sorting and Searching was limited to Kruse and Tanenbaum books on Data Structures. Each of them had devoted around 50 pages on this topic. Prof. AA also informed us that it was the most authoritative book on the subject till date and a complete reading of that was enough to make a person expert in this field of work. He added that it was quite beyond us (and even beyond him) to study the book. The next time I went to buy my books I tracked down a copy of Knuth. It was called "The Art of Computer Programming – Vol.I, Fundamental Algorithms". I found out that Knuth had written a series of 3 books and Sorting and Searching was the 3rd book on the series. I was handed out Vol.3 of Knuth. I browsed the book and at first look it seemed quite intimidating. Filled with math formulas and Assembly language code, the book has a property to intimidate you in no time. I am a bookworm and I just love to collect books. So although the books costed me a lot, I managed to buy a full set of "The Art of Computer Programming, by D.E.Knuth". The first thing that I did after returning to home was to open the book on Sorting and Searching and look for Quicksort, which happened to be my favourite sorting algorithm at that time. Needless to say that I was feeling completely lost in the book. Nothing beyond the initial introduction seemed to make sense. So I started from the very first volume of the book and was astonished to find out that Knuth has given a flowchart on how to proceed through the books! With my exams knocking at the door I did not have much time to waste, so I left the books for the time being. After exams I sat with the books and this time started from the beginning of the book. It was a disastrous experience to say the least. I understood almost nothing. The text usually was difficult to understand and the mathematical formulae were simply beyond me. I seeked help from people who have done post graduate in Computer Science and all of them dissuaded me to continue. They told me that the book was too difficult and even they did not venture into it. My professors echoed the same opinion when I asked them. All this had a bad effect on me and I left the books as ornaments in my bookshelf. After completing my BSc in Computer Science I have joined Rajabazar Science College under the Calcutta University for my post graduation studies. Here the name of the book again came up during a class by Prof.SSS. He was teaching the concept of Algorithms and his lecture notes were based on the book by Knuth. This time seeing a professor following this book gave me a lot of confidence. So I brought out the books which were gathering dust during the last 6 months. I read up the first chapter of Vol.I - Fundamental Algorithms. This time it was a pleasant surprise. I understood most of it! and could even work out most of the problems. It was difficult no doubt, but was achievable nonetheless. I was puzzled at this. It was not as difficult as my seniors or professors had stated! I concluded that all of them had either never read the book and had actually transferred some opinions on the book to me. Or it might have been the case that they like my first attempt tried to read the book from anywhere other than the beginning and had failed miserably. The book was indeed hard to understand and the mathematical proofs do take a lot of time to understand, but at the end of it if one tries patiently the book is definitely readable; and the knowledge gained is definitely worth all this trouble. My journey with Knuth has not ended, in fact it has just began and I don't want to draw any conclusions about the book. But one thing I've learnt for sure is that don't go by what others say blindly. We should always apply our reasoning to arrive at an opinion and not be guided totally by other's opinions. Please post your own experiences with Knuth. If through this article I have managed to convince even one person to read Knuth's Art of Computer Programming, I'll consider my efforts to be a success.

Hello World

This is my first post in this blog . . . . I have had many blogs in the past, but this is the first time I've made a blog for myself. All the previous ones were on something else and nothing as personal as these. Actually I used to publish my GoogleNotebooks. But now I've switched to this blog. This blog doesn't have a constant topic . . . . I'll be posting hatever I like here. It may be technical like Programming, C++, Web Development or some damn joke that I found in net. That's why this is called BiGYaN's Random Thoughts. Stay tuned for a lot of posts on random topics . . . .