Wednesday, November 7, 2007

Country of convenience

Less then a week was remaining in Diwali, on one fine evening I was little tired after a long jog. I got a call from my friend,

“Are you ready?”

I said, “For what?”

“We are going for dandiya, you don’t know?”

“Dandiya, this time? Navratri is over and it’s almost 2 weeks now”

“Well, there is dandiya program in UMBC College”. Hmmmm, interesting! Let’s go then. I love dandiya too much so I didn’t mind!!!

Traditionally Navratri is 9 days time period when people worship goddess “Shakti” by playing Garba and dandiya, people who are more religious do fast for 9 days. But here in US, it’s all about convenience! Nobody can afford to play Garba for 9 continuous days, after all people here are busy in jobs so they could find time on “weekends” only. In weekends also, specifically on Saturday, because if they do it on Sunday then there would be problem in job early in the morning on Monday. So in US, Navratri begin earlier in time and goes up to diwali. Garba would be arranged on weekends and such 4 to 5 weekends would form a Navratri (Rather “US Navratri”). Once Garba is over people would do Aarti and then “Prasad” would be distributed but making some Indian item as “Prasad” is little inconvenient, so what? Let’s use American branded cookies and chocolate chips. Cool!! “Kya prasad hai??”

Same is the case for Diwali, it’s on this Thursday but again people are busy so can’t do it on weekday. So what? Let’s do it on weekend! We’ve a Diwali program in a temple on this Sunday because Sunday is a “convenient day”.

Now lets see how we celebrate 15th august, an independence day in US. My friend, Mahesh who is a project co-coordinator of infosys is staying in charlottle, NC. They’ve a team of about 15 Indians and out of patriotism, team decided to celebrate our independence day, 15th aug. They got together at one place; I thought they would sing a national anthem, hoist a national flag or do something that would help the country in direct or indirect way BUT no. They prepared some snacks, tea and coffee and did a party (full time pass, basically “Jo dimag me aye, jo bhi achchha lage, voh karo!!”).

These were very few incidents to narrate; as time will pass I would come across more fancy and customized way of celebrating festivals and national days. Whatever my future experience would be but for now I can conclude one thing for sure: “US is truly a country of convenience!!!”

Thursday, October 25, 2007

Another “Deviprasad” !!!

Some 5-6 years before, a comedy movie from bollywood rocked the whole country. It was a very genuine comedy named “Hera Pheri” starring veteran Paresh Raval. In one of the comedy events of this film, Baburao (Paresh Raval), a garage owner continuously receives wrong calls asking for “Deviprasad”. A wrong entry in telephone directory caused “wrong call traumas” for Baburao.

After 5 years, now destiny has made me a victim of similar “wrong call traumas”. Name of this Deviprasad is “Jose”, a Mexican car mechanic. When I took cingular plan for cell phone, a store owner gave me a list of numbers to choose from. I carefully selected a “very good number” just to fall into the miseries of misdeeds of this new Deviprasad. On a very first day after activating my number I received a call from unknown number and I was bewildered: “Who the hell is calling me? I’ve not given my number to anybody yet!!” I received a call and a person on other side is saying: “Jose, is this jose?” I said no and hung up. I thought it would be just a scattered and scant event of getting a wrong number BUT no!!! It was actually a commencement of well planned conspiracy by destiny against me because that person was dialing a correct number but the person on the other side was me instead of “Jose”. “Jose”, a car mechanic, whose fame is spread across the world and who has many friends, relatives and customers, cancelled his number some day and unfortunately that number came to me!!! Presently I receive 2 calls per day, on average, for this “Deviprasad”! People sometimes call and without asking who is on the phone starts scolding me:”You’ve not returned my car yet, its 5 days since I’ve been waiting for it with new tires” Sometimes people keeps on talking in Mexican without listening to me. The worst part for me is that each wrong call cost me 45 cents and if I consider 2 calls per day then I’ve to keep 30$ as a “spending on Deviprasad” per month. “Deviprasad” literally means “Devi ka parasad”, a boon by deity. But in my case this “DeviPrasad” is a curse by destiny!!!

Enough nagging about the problem but then what to do come out of this misery?? What’s the use of a techie brain which gives real time solutions to many businesses in terms of software if it can’t solve a problem of its own life? Then I came up with a strategy which, I thought, will eventually take me out of the sea of wretchedness. I started storing wrong number in my cell phone address book so if by chance same number calls me then I can reject the call and save my 45 cents. Every time I get a wrong call I save that number and it appears in this form in my cell phone book,

“Deviprasad 1”

“Deviprasad 2”

“Deviprasad n”

Deviprasad numbers are now dominating over actual useful numbers in my phone book. I thought this strategy will work but in vain. José’s name and fame is spread across the world and daily I keep on getting phone calls from strangers. Deviprasad numbers are increasing day by day and the day is not far when it would fill up my phone book. Hope there would be a day when destiny will stop playing this game with me and I would be able to save my hard-earned 30$ and become free from “Deviprasad” calls.

Sunday, May 20, 2007

The BUG

“The Bug” doesn’t mean any insect OR similar organism but this is about “a software bug”.

When I started my career as a software developer, I didn’t have any idea about software bug. After a weeklong training of PepsiCo retail application (This was the project in which I was supposed to work), my project manager came to me and said here are few bugs for you, handing over to me few printouts. I was amazed with curious confusion and that was the first time I hear about “The bug”. I wondered, “What the hell is this bug?””Am I supposed to tackle “BUGS”? “Is this the job I am into?” Lots of questions and then my colleague cleared my confusion and explained that by definition it means “A defect or a fault in a computer program which prevents it from working properly and usually they arise from mistakes made by programmers”. That was the time and I started a journey of my professional life dealing with bugs.

So for past four years, I’ve been dealing with bugs and not only me but all programmers on earth have to deal with bugs. Daily we come across different kinds of bugs some of them are very easy but some can become a real nightmare. Sometimes after extensive debugging throughout a day when I go to sleep I dream of a bug biting my brain and it does as a fact If you don’t take care and get engrossed too much into it. I would tell you how bug can bite your brain by sharing this anecdote. When I was working at Nvidia (Nvidia is worldwide leader in graphics technology and GPUs – Graphics Processing Units), I came across one bug which took away all my happiness and mental piece. In game “Need for speed” there was a corruption in the back light of a car and the bug requester claimed that Nvidia device driver has screwed something with pixel shaders (pixel shaders are assembly like programs which renders and adds cool visual effects to 3D geometry) and that’s why this backlight is not looking the way it should be.

After this bug was raised, on one fine morning I get a message in my outlook from my beloved manager: “Assigning bug no. 23945 to dhaval”. I looked at it and my face got enlightened. “Need for speed” yeah… Now I’ll be playing NFS as a part of my daily job work… Cool!!! And this in fact was a reason for my coworkers to get envied of me. I heard them narrating me as a luckiest guy who gets paid for playing video games. I played NFS for 1-2 hours but now I’ had to investigate “why the backlight of a racing car was corrupted?” Now I started debugging, hooked up a fire wire cable with debugging machine and started windbg. I spent a whole day and went home. Next day again in the morning started windbg, started looking at the corruption in backlight and there I was going like crazy about the mysterious flaw. Two days, three days and I spent almost five days and applied each and every weapon from my skills set… comparative debugging, backtracking, divide and conquer, performance strategies on and off approach, analyzing pixel shader instructions… every possible problem solving strategy that I could think off but at the end “no clue” and I was still groping in dark. Now the bug really started “BUGging” me. Five days, ten hours each and I started observing outcomes of that long debugging marathon. Now while commuting from home I was keenly observing the back light of real cars passing by, just to see if there is any corruption in it. When I was watching any TV show and by chance if I saw any car, my immediate attention was towards its backlight. The whole situation quite resembled a story of great archer Arjuna who was given a challenge to hit the eye of a fish with his arrow. At that time Arjuna was so much engrossed so that for him the eye of a fish meant the whole world and he couldn’t see anything else except the eye. Here the eye of a fish was a corruption in a car back light and I was Arjuna whose sole objective was to overcome that corruption.

I kept on debugging in a pursuit of “hitting the eye” and on sixth day I saw some silver lining. On that little clue at last I succeeded fixing that bug but I swear those six days were memorable days of my life. It changed my perspective of looking at the world and added a new dimension to my thought process. When I talked about this to Varun (my colleague) he told me “you are not in a job but you are in a career!!!”. He might be correct but I never wanted that kind of “BUGGY” career. Whatever it is but I am aware of the fact that as long as we are in software field thinking of getting rid of bugs is like fooling ourselves. I define “BUG” as a soul of software. In “Bhagwad Gita”, Lord Krishna counsels Arjuna by saying that Body is mortal and the only thing eternal is Soul. Any death would involve the shadding of a body but soul is permanent. In software terms, new applications, new tools will keep on coming and old will get obsolete but the only thing that remains is “The Bug”. It comes to you in one or the other form. I left Nvidia and came to US started working in a company called UPS. Here also on a very next day after joining my lead handed over me few print outs, of course they were “Bugs” only but I didn’t saw a any term such as “Bug” on paper. I jumped out of joy when I came to know that here they use the different term “Defect” and not “The bug”. Ultimately they are bugs only but at last now I get some elegant name: “The Defect”, so still the story is going on but its god’s grace that now on I don’t see anybody talking about OR writing about this loathsome three letter word the “BUG”!!!