Best April Fools’ Day Ever

08:50AM April 1st, 2009

Alarm!!! Ring Ring!!! I had a class at 8:30AM. But thinking that I’ll sleep for few more hours, opted to miss the class.

10:26AM April 1st, 2009

I was in deep sleep (went to bed at 5AM) when my mobile started ringing. I hate it when somebody calls me when I am sleeping. To my surprise it was a call from a faculty member. I took the call and received a congratulatory message. When I asked about the reason, he replied, “You sold videocache for $20000.” I got a thousand volt shock. Immediately all those bollywood flicks (Khosla Ka Ghosla etc.) came to my mind in which X sold property of Y to Z without Y even knowing about it.ย  I totally lost my mind and couldn’t think of anything. He said a few lines after that and I just couldn’t hear him. I diverted the topic, said two-three sentences and hung up.

Woke up, had some water and switched on my monitor. Saw a message from Ankush Kalkote on Kopete saying, “Congrats yaar. ab to party deni hi padegi.”. In another tab Rishab Mukherjee saying congrats. I started believing it. I tried asking about the source of information but they wanted the god damn party desperately and didn’t really care what I was typing. I immediately openned cachevideos.com to check if somebody had hacked that. It was fine and there were no signs of any intrusions. In the meantime, Rishabh asked me to have a look at Rishi’s status message. It read, “Dollar Chacha (they call me so) has become a MILLIONAIRE. Sold videocache for $20000.” I kept browsing through the list and saw a lot of people changing their status message to the same. A few moments later I realized that its April 1 and everyone is trying to fool everyone else. Frustrated by the whole event, banged my head on the wall and went to sleep.

12:25PM April 1st, 2009

Mahaveer knocked my door asking for lunch. He didn’t know the truth. And fired all W questions (what, why, when, to whom) as soon as I openned the door. I switched on monitor and saw huge queue in Kopete. Everyone going crazy about videocache. People wondering about how can you sell a free software. WTF!!!! I immediately observed a huge potential in this venture. And put up my status as “@all it $21k and not $20k.” In the next five minutes almost 15-20 more people flooded me with queries about the sale.

Few sent congratulatoryย  mails and few even came up to my room to congratulate. Sudden change in opinion of few people (who didn’t know the truth) around. e.g. “Studies are a total waste of time”, “I should have developed some god damn thing”, “Four years well wasted :(“, “Getting into a job is foolishness” etc…

Taking advantage of the situation, somebody sent a SMTP mail to UG4 which read,

Hello,

As most of you know, Google has bought VideoCache built by me in 20K $. I am really enthralled on this feat. Since, I wish to share my happiness with all of you, I have decided to give you a fantabulous party tonight in the ground just behind the Motorola. Alok n me are busy making arrangements for that. If someone wishes to help us in making the party more than a memorable one, just mail @ mksharma@students.iiit.ac.in
If you wish to visit the VideoCache website, click http://cachevideos.com

As you must have figured it out by now, I didn’t plan any of this. It was planned by few people as a side-effect of attending Indic class. If anyone was hurt, he/she should go and kick Sachin Goyal, Kapil Bajaj, Rishi Gupta, Ankush Kalkote, Ajay Somani.

All in all it was big fun and best april fools’ day I ever had.

 

My Googling Stats

Thanks Tifosi for tagging me for this.

Google Search Stats

Google Search Stats

Observations

  1. Top queries suggests that I care a lot about my name in Google search!
  2. Top queries also suggests that I tend to care a lot about the visibility of the work I do.
  3. Top sites stats are awesome! I visit my own sites more than orkut and any other website.
  4. November has to be my lucky month!!
  5. Sunday is a jackpot and Monday goes in hangover!
  6. It seems I am most productive after returning from Coffee Shop at around 11PM as the mid-night stats outperform every other hour! It suggests that I should visit Coffee Shop more often!

I tag ZenWalker!

PS1 : Cleaned my room after 7 months!!

PS2 : Song of the B.Tech. : “Rumors” by “Lindsay Lohan”.

PS3 : Felicity is not coming. We are going there!!!

PS4 : Posting after 20 days :(

 

My first interview for a job!

After failing few (will be disclosed later) written tests in a row, I got a call for an interview. I was pretty surprised as I never expected it to happen. Initially I was nervous because I don’t know c/c++/data structures/algorithms. All I know is Python, Computer Networks, a few Open Source technologies and how to use them to generate cash. Well, after waiting for four hours, I got a chance to meet the interviewers (two). I was nervous as it was my first interview. They asked me for the resume. Below is the conversation.

  1. Interview #1
  2. Interview #2

Note : Almost everything below is true and few sentences have been added to make it humorous.

  1. A : Interviewer 1
  2. B : Interviewer 2
  3. K : Me.

Interview #1

A : Tell us about yourself.

K : (I never expected this as its the most difficult question of all.) I am a simple guy interested in open source (Throwing random sentences). I believe in on the spot implementing/coding my ideas. Whenever I get a new idea I just code it without spending too much time on thinking about it.

A : What if you face some problem with your idea later?

K : (Suddenly Shiben’s this post popped up in my mind.) I try to fix it and if it doesn’t work in few tries, I just throw the code and recode it (Thanks Shiben for writing that wonderful post).

A : So you don’t do any research before implementing the idea. Do you like research?

K : Not really. A bit. (Lying) I don’t like research. It means a lot of time.

A : So, you participated in Google Summer of Code. What is this?

K : Its a Google funded project in which Google invites applications from several open source organizations and select almost 120+ organizations. Then candidates from all over the world proposes their ideas or picks up projects from organizations’ ideas.

B : You proposed your own idea?

K : Yes.

A : What was it?

K : IntelligentMirror. An intelligent caching system which caches RPM/DEB packages from several mirrors on the basis of package name and not the domain name or protocol. Its a squid plugin.

A : Tell us about this Intranet Chat Service (another project).

K : (Told everything I knew about it).

B : Tell us something about squid.

K : Squid is an open source proxy server used to hide thousands of machines behind a single public IP or to control what users browse in a shared network environment.

A : What is public IP?

K : (Answered)

B : What is difference between public and private IP?

K : (WTF?? I am not a kid. Answered.)

A : How do you hide a thousands of machine behind a single public IP?

K : NATing.

B : (Thinking that I just know fancy terms) What is NATing?

K : (Requesting a paper) Explained every single packet level details of NATing by drawing nice diagrams. (Interviewer tried to confuse at several stages but in vain).

A : (Feeling helpless, whispers to B) Lets ask standard questions ๐Ÿ˜‰

K : (WTF??? Feeling doomed ๐Ÿ˜› )

B : What is polymorphism?

K : (Abusing the interviewer at heart) It is some fu**ed up idea using which we can do few things which often confuse me and sometimes confuse the even compiler.

A : (Passing a sheet of paper to me) Write an example of polymorphism?

K : Wrote a function
int function(float a);
int function(char a);

B : Can I change return type of second declaration?

K : (Feeling awesomely confident ๐Ÿ˜€ ) No.

A : If I change char to double in second function will there be a compiler error?

K : Sorry sir. I am confused.

B : Define a class String and few functions on array of characters?

K : Wrote a class somehow with a few functions.

A : Write the copy constructor?

K : (You are torturing me. Don’t push it too much) Somehow managed to write a fu**ed up copy constructor
String(String & str) {
string = str;
}
(I know its wrong. Don’t point out.)

B : Why did you write this (the C++ this)?

K : To reference the member variable of current instance of the class.

A : You never declared it. How can you use it?

K : Its provided by C++. You know I used char, int also. (Dumb ass!!)

A : Ok. (Looking at my resume) You have interest in blogging.

K : (Feeling a bit relaxed) YES!!! I have three blogs. One technical, one about life and I bought a digikam a few months back and started a photoblog as well.

B : (Laughing) Interesting!!!

A : Why do you have some many blogs?

K : Because I love buying domains. Then I need to put up something on those domains. So, I write blogs :)

B : How many domains do you have?

K : Around 15.

A : Where do you host these??

K : I have my own VPS hosted in US.

B : How much does it cost?

K : $50/month.

A & B : (Looking at me as if I kicked them in balls) WTF!!!! Where do you get all this money???????????

K : [snip] secret ๐Ÿ˜€

A : Thank you. I think we have asked enough questions.

K : Thank you!

I left the room. After that I returned to OBH (Hostel). I was not hoping that they’ll call me again for another interview. But I did wait for the call till 9:30PM. After that I went to bed. I was about to fell asleep that Kapil Bajaj called and asked me to report in Main Building. I was sure that this will be either a light round in case they are sure to count me in or it’ll be a revenge round in which they’ll ask questions about things I don’t know.

Interview #2

I entered the room and the interviewers were different this time. A bit more nervous then the last time.

  1. C : Interviewer 3
  2. D : Interviewer 4

I grabbed the chair. C picked up a sheet of paper and started writing on it as if he is a BIG BOSS.

C : (Writing an expression on the paper) Remove the extra brackets from the expression.

K : (Understanding that its a revenge. You employ people for software development or removing the brackets from an expression????) Having no clue of the solution to the problem tried writing something on the paper. (An image of “Ajay Somani” teaching removing redundant braces from an expression flashes in my mind. And I was like WOW!!). I gave the solution (I know there are two terms infix and postfix, but don’t have a clue about which one is infix :P) that we’ll start putting things in a stack and will throw away the opening and closing braces which doesn’t have a symbol or character in between them. And will pop them out to get an expression without extra braces. (What a guess?? ๐Ÿ˜€ and it worked).

D : Can you optimize it?

K : (baah!! I somehow managed to do it. Now what???) Having no clue about optimizing the above, I started throwing some random ideas. Devised one idea and showed to C but he caught it and proved me wrong. Took some more time and devised one more funny idea.
Expression : (((P+Q))*R)
Solution : We have two variable i and j with I pointing to first element and j pointing to last element. We enter a loop and start decreasing j and increasing i. When we see opening braces at expr[i] and expr[j], we throw them. And when there is no braces at either expr[i] or expr[j] or both we continue and jump over symbol and characters. While I explained the idea, it somehow worked for the expression. I badly confused the interviewer with my invention ๐Ÿ˜› He was like WTF!!! How can this piece of crap work?? I was about to laugh. I enjoyed the moment. It was one of the best moments of the day. He spent almost 2-3 minutes figuring out my newly invented algorithm and finally managed to prove it wrong.

D : See, this doesn’t work.

K : (Thinking, “Why are you telling me?? I know it doesn’t work ๐Ÿ˜› “) I am sorry sir :) (Controlling my laughter).

C : (Writing two numbers on the paper) This number ( character array 4568123) is rotated around some number and the original number is (character array 1234568). How would you get the original number from the rotated one?

K : (Having no clue about the domain of the problem) Thinking of swapping numbers here and there. Tried every possible combination but nothing seemed to work. What happened to my pool of ideas ๐Ÿ˜› (An image of “Kapil Bajaj” teaching inorder, preorder, postorder traversal flashes in my mind. Kewl!! I don’t have a clue about trees and whatsoever things related to those creatures). Now the big task is to make a tree out of the character array. (While I was telling these to Sachin Goyal. He suggested that plant the first character and water it until it becomes a tree ๐Ÿ˜€ ) I drew the array in some random orders on the paper and made a tree of some sort with 4 as root and 568 on the left subtree and 123 on the right subtree. (Now, all those organic structures like methane, ethane started crawling in my mind. I somehow remembered the rotation thingy). I rotated the fu**ing thing around 4 and it worked. I felt like the luckiest guy in the world. What a confidence I had at that time. I described the process to the interviewer as if solving tree problems is the easiest of all the problems.

C : What is order of problem?

K : (No clue about the problem itself. How do I know its order? ) Kept quite for sometime and kept myself busy with the problem itself ( I was so happy that I couldn’t get my eyes off the tree structure).

C : (Asking again) What is order of the problem?

K : (Thought about it for sometime) log(n). As the integers are in sorted order. Interviewer looked a bit convinced.

C : (Traping me) How will you make a tree out of that character array?

K : (OMG!! Not again! Tried to explain the impossible.) We’ll take the first character as root. Now we’ll build left subtree. We’ll go on putting the integers in the left subtree as long as they are in same order. In that way the order will break at 8 and after that we’ll start building right subtree (This somehow seemed to work).

C : (Totally frustrated by my guesses which were eventually working) Is this a BST?

K : (The only thing I know about a BST is that it is Binary Search Tree) Yes. (Confident as if I am the one who invented BST ๐Ÿ˜› )

C : (Trying to trap me further) Wrote two string “ABCDE” and “CDEAB” and asked to write a function to detect if they are rotated version of each other or not?

K : (Thinking that these are not integers and my awesome ideas are not going to work here ๐Ÿ˜€ ) We’ll somehow make a tree of a string, then traverse it (Leaving the traversal type for interviewer. I said only traverse it, because I don’t have any idea about how do we traverse a tree in inorder, preorder or postorder. So didn’t want to invite more problems). And then we’ll compare the result.

C : Ok. Thank you. Lets go.

And that was it. My adventurous innovations about trees stopped there ๐Ÿ˜€

All in all it was total fun being interviewed. I enjoyed every single moment of both the interviews.

PS : I am not correcting any grammatical, spelling mistakes.

 

Quick updates

    1. Super busy with my VPS adventures. Updated VPS to 512MB RAM and 20GB HDD. Its super fast now at a cost of $50/month ๐Ÿ˜€ Learnt a heck of technology in past week.
    2. 76 downloads of my software videocache in last two days ๐Ÿ˜€
    3. Thinking thinking thinking and so on.
    4. Future still uncertain.
    5. Had a real tough time making the resume. Wasted others’ time as well while building it.
    6. Fooling Google is on my hobbies list now ๐Ÿ˜›
    7. Exams have started yet another time.
    8. Feeling discontent with whatever I know.
    9. Watched Dasvidaniya, Oye Lucky Luck Oye and Sorry Bhai. Watched sorry bhai thrice in three days. Something driving me nuts for the second time in life [snip..].
    10. Rest laterz.
       

      Camera Recovered

      My new camera fell down on Nov 5, 2008 from a height of almost 5 feet in switched on condition while clicking random pictures. The shock caused a severe damage to the lens cover. The dented lens cover didn’t allow the lens to come out of the camera. It was a shocking moment for me as I purchased it only a month ago.

      Today, I gathered some courage and took the camera to Sony Service Center near Hyderabad Central knowing the fact the damages caused by dropping are not covered under warranty. The guy at the service center after inspection for few minutes said, “The entire lens has to be replaced”. I was shocked as only the lens cover was damaged and not the lens itself. I asked the approximate cost knowing the fact that it would be damn costly affair. He said gracefully, “Only 4500/- plus service charges and service tax”. I was dumbstruck. WTF!!! I moved out of the service center to breathe some fresh air.

      I decided to check out the price at another Sony Service Center. There is another Sony Service Center near Hotel ITC Kakatiya (thanks to google local for the location :) ) which is at a walking distance from Hyderabad Central. When I inquired the price for lens replacement there, the guy said, “8000/- to 10000/-“. I said, “f**k off”!!!. I would buy a new one for ten grands. Then I told him about the offerings by the other service center. He checked some details on Center’s LAN and found out that it would cost 6000/- including everything.

      Pissed off by the price, we (Mahaveer was with me) started moving back towards central. I was left with no option other than spending a nice amount of 5000/- for the camera repair. But I thought of trying my luck yet another time (Linux has taught me this “don’t give up policy”). This time I approached the shop Third I Digital in Hyderabad Central. I bought the camera from that shop. When I told the guy there about the happenings. After checking the camera, he suggested, “Try to fix it yourself. Take a needle or something with a pointed edge and remove the dent. Lens will open and camera will work fine. Otherwise you’ll have to spend 5000/- anyway. Just give it a shot”. Something sounded good to ears after a long time. Packed my camera and we left for City Center. Had burgers there and returned to IIIT.

      At room, I took a blade (shaving) and fixed the dent. And the camera is working fine now. I am feeling releived now :) A blade worth five thousand.

       

      Almighty linked lists

      As the time for placements has finally come, I am trying to train myself for the lame questions that companies usually ask instead of asking things related to the real talent.

      I am a bit (a bit????) paranoid about pointers, linked lists and stuff that involves pointers. I couldn’t really keep up with the data structures because I learnt to use this WONDERFUL language called python. I was not a bond in C/C++ but my skill level was good enough to write basic codes. Though I didn’t submit all my programming assignments, I used to write C/C++ codes for fun especially during third and fourth semester when I was awesomely obsessed with Object Oriented Programming and classes in c++. But I never used pointers even in that period. After fourth sem, I completely switched to python quitting c/c++ totally. I have been doing fun things like my Google Summer of Code, IntelligentMirror, Youtube Caching and other private stuff in python since almost one and a half year. Python is a real handy language when you want developย  projects quickly.

      Anyway, I thought I’ll give c/pointers another shot. I picked up EssentialC, Pointers And Memory and LinkedListBasics from Stanford CS Library. Read first two of them from start to end without missing a single word. Read 5-6 pages from Linked List Basics and then thought of coding a very basic linked list with few operations. But unfortunately couldn’t do so even after fighting for one hour. Fifty percent of the time, i was fixing my code because I wrote the damn thing in python style formatting, forgot to declare variables before using them and blah blah… In the meantime Pankaj pinged for the BC session. When I told him the same thing, he said he implemented linked list few days back using arrays … OMG!! pretty easy. huh!! After we returned from canteen, I gave it one more shot. BINGO!!! I did it this time :) I finally wrote some code in C for linked list which finally worked ๐Ÿ˜€

      Loving pointers a bit and looking for exploring more.

       

      My new Sony Cybershot DSC W110 Digital Camera

      Finally after a long wait, I bought this Sony Cybershot DSC W110 Digicam from Hyderabad Central yesterday. Actually Deepak came to my room and said there is huge offers on Digicams in Hyderabad Central. I didn’t think twice and me, Pankaj, Bansi and Deepak headed to Central. But we found that there were no offers on Sony. But I had already decided to buy this model. So who cares for the offer. After a few minutes of bargaining ( i suck at bargaining ), I bought it for Rs. 9600 ($210).BTW I bought it from Third I Digital shop.

      Features : 7.2 Megapixels, 4x Optical Zoom, High Sensitivity ISO3200, 2.5″ LCD Display, Face Detection, Smile Shutter, Full HD.

      Accessories : Camera + 1GB Memory Card + Battery Charger + Battery + USB, Audio/Video Cable.

      Gift : The shop keeper offered a scratch card with the camera. And I won three days and two nights holiday anywhere in India ๐Ÿ˜€ Nice.. aint it :)

      We clicked some shots in Central. Here are few.

      Kulbir Saini and Nitin Bansal

      Left to right : Kulbir Saini, Nitin Bansal

      Deepak Vig

      Deepak Vig

      Pankaj Saini

      Pankaj Saini

      Then We headed to my favorite destination in Hyderabad, City Center. We had burgers as usual. Pankaj did some shopping while we “ogled” at few “good looking” girls. We moved to crossword (a boook shop in City Center). We decided to leave for home. As we came out of Crossword, there were some dandia performance by some group. We captured some shots there as well.

      Dandia Performace

      Nitin, Kulbir, Deepak

      Left to right : Nitin Bansal (Welcome to Sajjanpur wala Bansi :P), Kulbir Saini, Deepak Vig

      Few more shots and we headed back to the divine place .. IIIT Hyderabad :)

      Deepak Vig, Pankaj Saini

      We forced Pankaj to go for Dandia but unfortunately he couldn’t find a funti as only couples were allowed ๐Ÿ˜›

      A big thanks to all the people who provided their views and helped me to by this cam :)

      PS : Thanks to Google for all the dollars.

       

      Passed GSoC

      I have passed my final evaluations for my Google Summer of Code’08 project IntelligentMirror. It was fun and excitement developing the squid plugin. The best thing was I didn’t have to move to a different place or go office for working. Work at home, do what you always wanted to do (open source stuff), talk with people with similar interests(fedora people), get nice payments and have your first project released in open source domain :) That was GSoC.

      Another post coming up with detailed GSoC experience :)

      Have fun,

      General Bordeaux ๐Ÿ˜€

       

      Bangalore Trip

      I got a chance to visit Bangalore last month. Actually Google announced a small meetup for all the GSoC students from India at its Bangalore office on July 28th. As I was returning to IIIT on July 25th, I thought of joining others in Bangalore on my way back. Canceled my reservation (Delhi -> Hyderabad) and re-booked a ticket for Bangalore and back to Hyderabad.

      We (Me, Sumit Kataria, Gurpartap Singh) boarded the train from Delhi on July 26th. I knew the other guyz only via IRC but never met them before. They are GSoC students working for Drupal. The journey was fine but a bit of bad luck that Rajdhani was late by two hours. We reached Google office late (by 1 hour). But we didn’t really miss anything because there was a presentation about what Google is and why it is THE GOOGLE. As we didn’t have any breakfast in hurry, we had some snacks at Google. After that there was another presentation by one of the project managers (i forgot the name) about the working style and team structure at Google and how they manage to pull huge projects with small teams. He talked about how projects evolve at Google and some blah blah which I don’t remember.

      After than one hour presentation, another break. Time forย lunch ๐Ÿ˜€ As obvious food at Google was just awesome. Then started the real session where students were asked to give a brief overview of the projects they were working on. Few projects were real tough and few others were really creative ideas. I too gave an overview of my project. Google Open Source T-shirts and GSoC stickers were distributed. Then the host took us around the technical wings of Google Bangalore. It was an amazing experience. I was blown by the hardware I saw. The hugeย LCD monitors in dual display configuration were eye catching.ย  We left the Google campus at around 5PM.

      We headed over to MG road, one of the most famous places in Bangalore. We had real good time over there. After having dinner in McD we returned home. The next day we planned to visit Iskon temple. But it was a complete FAIL as the temple was closed. We got lost and couldn’t find a place to have lunch. After a lot of efforts, we landed at the central bus terminal. Had dossa there and left for home. Traffic is just awesome in Bangalore. It took us around 2.5 hours to get back. The journey was frustrating and we were tired enough to get anywhere. Yet we left for the MG Road again. We enjoyed a lot. Did some shopping too.

      The next day I headed back to Hyderabad. All in all Bangalore is way techie as compared to Hyderabad. Hyderabad is still in its nascent stages of development. Only negative factor I saw in Bangalore is terrific traffic.

      kulbir saini @ google bangalore

      Me presenting my project @ Google Bangalore

      Gurpartap @ Google Bangalore

      Gurpartap presenting his project @ Google Bangalore

      Macbook Air @ iStore

      MacBookAir @ iStore

      Strange buses found only in bangalore

      Strange bus I saw for the very first time ๐Ÿ˜€