May 5, 2008

Developing a New Bug or Bugging a New Development?????

I wanted to be sort of like Aamir Khan, (he acts in just one movie a year. FYI) writing just one blog every month (Note: I said sort of and not like. I cannot wait for one year to write one blog...dammit). So anyways, here I am again. I was talking with my chum Vagmi today during lunch (we usually talk off lunch hours too...but during lunch our topics normally stray to many things [not teen stuff though ]). So, we were talking about how to get noticed outside your workplace through social networking (like LinkedIn, Orkut, Facebook, iBibo, Big Adda :D (I am a member in almost all of them)), and he was saying, "The best way to get noticed by others, outside your domain, is through writing blogs. Dedicate 2 hours to blogging everyday". And Vagmi happens to be our Technology Whizkid...and when Vagmi talks, the World listens ;)

In my previous blog, I had written about my movement into Product Management from Build and Release Profile. I got a few comments (offline) about my life being simple, all I had to do now was to direct work to others and sit peacefully watching Youtube. Now, if my manager were to read these comments, he would think the same and this would not look good. So I thought of outlining some of the cons of being in this role.

One example of the many converastions I have with the ecosystem (aka Developers) everyday. I was talking with this developer today morning, that a particular feature is not working the way it should, and it should be fixed before customer reports it. You know...be proactive and all that. Now, this developer (henceforth I shall refer him as "Developer") says:
Developer: This is a new development request. Please close the ticket. I shall fix it later.
I: But how can this be a development request. It is something that is part of the functionality and should be fixed.
[No sound] Which means, this would be a development request for the next release (and I am sure it would be missed out in the next one too). Not that the application would not work. Just that the application would have too many relatives around it to deal with, since the setup would be all the required contents + the not so required contents into the machine. But....if the developer says it is a Dev Request, what can a poor product manager do than wait for the feature to be available in the next SP's.

So you see...to be a PM, you should have the nerve of steel and the guts of Iron to deal with these sort of shockers everyday. Now all of you there...please refrain from envying me for having a easy go lucky life, and go and get some coding done.

"Always write code in such a way that the person maintaing the code would be a psycho who knows where to find you."

May 2, 2008

Life Changes With Role Changes















Life can be truly amusing at times. I remember. a year ago...I used to sit in front of InstallShield DevStudio (For newbies :) this happens to be the place where installation/setup developers add files, create shortcuts and the stuff which can either make your application work or not work...simple) and break my head over why our product service pack is not able to upgrade to a newer release. This used to be my work routine:
1. Build a package.
2. Test the package. Tests normally successful during the development phase.
3. Go home, eat, drink....In short enjoy life.
4. On the D Day "When we are in the acceptance testing phase", UPGRADE FAILS. (In fact, I will be damned if it works).

And somehow, the last task used to be in this while loop

public static void RepeatTask4(void)
{
bFlag=true;
while (bFlag)
{
RepeatTask4() ;
return;
}
}

Some how, in my case, I never hit return, till it became a memory fault or I shutdown the process manually (which was anyways not possible). Then I, along-with my partner in crime, Kajal, used to think of alternatives. MST, MSP, MS(Something, please work). And lo behold, it used to work. (Please don't ask why...or how...That's the way Windows Installer works so let's keep it at that).

So life was going on this way and I was beginning to get worried when I would come out of this loop mess.

Then one fine day, my manager called me and gifted me with the role of Product Management for our product. WOW...Can you believe it...I was going to now be at the other side of the fence...ensuring our product is friendly enough for the end user (So now I talk in terms of Framework, application, middleware and ofcourse...to some extent...INSTALLATION :D). Now my task routine has changed to the following (Of course I have more responsibilities. I am outlining the common tasks between previous role and the new one):

1. ASK KAJAL TO Build a package.
2. ASK KAJAL TO Test the package. Tests normally successful during the development phase.
3. ASK KAJAL TO Go home, eat, drink....In short enjoy life.
4. CONFIRM WITH KAJAL IF, On the D Day "When we are in the acceptance testing phase", UPGRADE FAILS.

And somehow, the last task is now:

public static void RepeatTask4(string InformKajal)
{
bFlag=true;
while (bFlag)
{
RepeatTask4("Please fix this as soon as possible") ;
return;
}
}