Wednesday, December 24, 2008

Thiruvilayadal - Nagesh Sivaji Comedy - Tamil mp3

Just like many others, I spend almost 70% of my time in front of my computer – coding. I got used with listening to music while I am at it. It helps me a lot by preventing any external distractions especially when I am doing tasks which are repetitive, not involving much of any thinking process.

A friend of mine once gave me a bunch of S.Ve Shekar and Crazy Mohan drama’s in mp3 format and I seriously got hooked to it. Having got used to listening to comedy, I wanted more and started ripping off some of my favorites from as many videos I could. Here is one of my all time favorite – Thiruvilayadal 

http://music.cooltoad.com/music/song.php?id=399173

Nagesh is Dharumi and Lord Siva aptly played by Sivaji, tries to help him. But eventually the Dharumi gets bullied by Chief Poet – Nakkeerar played by A.P.Nagarajan (who also happens to be the director of the movie). All of this because the King (Muthuraman) had a stupid doubt when he was fondling his wife:

Of course, the charm in “watching” would be missing, but having watched these scenes over a million times, they roll in my head as I listen to it. 

Nagesh - Great comedian with the veteran Sivaji Ganesan – some good humor and great Tamil dialogues.

Tuesday, December 23, 2008

What is Horrible? Huh?

I was googling about my previous company for hunting down an ex-colleague of mine. Though I could not actually find him on the results, I found the following within the first 50 results:

Job Seekers say:
http://www.indianjobreviews.com/showcompanyreviews.php?CompanyID=35

Client’s say:
http://www.flixya.com/post/reinalliance/807662/Perils_of_Outsourcing_Web_Design_Photon_Infotech
https://post.complaints.com/post.php?followup=6&original_id=165836

General US Public say:
http://www.callercomplaints.com/SearchResult.aspx?Phone=408-404-3301
http://800notes.com/Phone.aspx/1-408-404-3301

You would love this!

I have not commented on any of these sites nor do I want to even in my very own blog. But as I read through the positive comments in the IndianJobReviews link, I know exactly who wrote it (and for some, who originally drafted it FOR them).

I leave it to the reader’s discretion on what to believe.

Somehow I got reminded of something one of my managers told me when I was with them – “you know...., where there is smoke, you know....., there is fire”. Well, I "know" he is correct at least for this one time.

Thursday, December 18, 2008

Stop staring at my desktop!!!

I don’t know if it is just me who feels this way, but I hate it when people at work peep into your monitor especially when you are reading your emails. I think it is unethical and just portrays a person’s ill manners.

It is fine if I invite someone to see something, but I just can’t stand people staring at my desktop, seeing what I am typing. It is each one’s private space. Please don’t freaking invade it!

Ah good, here is this person reading this already as I am typing it…and now he has turned his head away…as if he knew nothing… Great! Hope it stays that way forever.

Wednesday, December 17, 2008

Questions… Projects… - my two cents on it

A few years back, I happened to hear a glorified programmer advising his self-proclaimed sidekick how important it is to ask lesser questions to technical stakeholders/business users about the project or technology that they are working on.

I couldn’t disagree more! He was arguing that one should ask “smart” questions and should never let the other person think we do not know anything about the business.

There is nothing called as a stupid question. For the benefit of the developer and for the benefit of the project, one should ask as many questions as possible. I am sure that clients who want the project done successfully would love to give you the answers. Even if they don’t have it with them immediately, it kick starts the thinking process and will make them revisit the requirement.

It helps to clarify a lot of things and verifies your assumptions. I strongly believe in this – “Assumption is the mother of all mess-ups”. It is wise to put forward your assumptions and sort it out. Nothing wrong in asking something basic about the business, after all you are going to be held responsible for the project you are build, aren’t you? The client would also be expecting you to know what you are doing.

Asking a lot of questions make you smart.
Asking only smart questions could leave even you in a lot of doubt.

Sunday, December 14, 2008

Release Process !?!

Two days back, my teammate had to release to production a minor code change he made to one of the web modules. Since we both were new to the release process followed by the client, we were given a small briefing about it.

We first have to release the change to a common dev environment, where it will reside till the peer review and internal testing is completed. Then we had 3 documents to be meticulously filled up for the UAT (User Acceptance Testing). One of the documents gives a clear step by step instruction on how to release to the QA environment, explaining like it is being told to a 4 year old. Once the UAT release is done, the development team we would get an email notification and after the user test it, there would be yet another email notification giving a sign-off for a production release.

We then have to prepare another bunch of documents, add with that the UAT sign-off email and the UAT release notification email and send it across to the deployment and maintenance team at the client side, who would take care of the release. They follow a semi-automated release process whereby the release manager would just specify the steps to be executed and the scheduled deployment runs once every 3 hours.

On the release date, if you never hear back from the release manager, things are good. But if you get an email with a high alert… you probably woke up on the wrong side of the bed that day.
Well, apparently that’s what my teammate would have possibly done, because he had just received such an email. He had a senior colleague to help him figure out the problem. So I decided to keep away from it, after just telling to compare the code changes in source control and holler if he needs any assistance. I decided to stay out of it partly because I did not want to jeopardize the senior colleague’s approach and also because I myself had a couple of burning issues, to attend to.

While I was keeping busy, later that evening I heard from this teammate that they had to rollback the changes after trying a couple of things and that this has been escalated and needs to be re-released the next day. They had identified that a few things were not matching up with the QA and Production environment. But they had figured out what the problem was and they were prepared for the next day’s release. While he was explaining I asked a few questions for which he either had no answers or was not confident of them, which made me a bit nervous for him.
Well, it was the next day - same time, and sadly the same story. It was a Friday and people were all the more frustrated and this colleague of mine was being made responsible and he had no clue what was going on. When things were going towards yet another rollback, I decided to jump in, invited or not.

They had this published website which was released to UAT – which worked fine, but when released to production, it failed to even load the default page and redirected to an authentication failed error page. The “fix” after the first rollback was this – they had compared the config file and found some application specific Role-id’s to be different and assumed that this must have been the issue and prepared themselves to give another shot, which eventually failed – miserably.

The code version in the source control looked intact, leaving me no other option but to decompile. Reflector, my favorite tool in many instances came to the rescue and I decompiled the app code binary of the current version in production with ours. When I saw the decompiled login related method, it seemed to contain quite a lot of additional changes – changes that were not present in source control!

We then figured out a way to get this work by making a few changes in the configuration file. Call it a tweak or a hack but it saved the day and the weekend, but I made it aware to all the people involved in this including the client who got an emergency regression test run and also promptly created another request to get this mess cleaned up.

I have worked quite a bit in this onsite/offshore setup and have my own experiences to recon. But almost no client I have worked with before had such an elaborate documentation process. So at first I appreciated this way of working, but this incident clearly proved that no system or process is invincible to errors, not when people have the audacity to bypass certain rules.
This whole thing was obviously caused due to someone who had been here long enough and knew how to sidestep a few landmines, but unfortunately did not know or care about the consequences and complications it would create to the next bunch of people who would work on it. The blame game had started, and something tells me that whoever did this must have been long gone.

Even though I come from a background where documentation was not so much patronized, I still could suggest on maintaining a “deviation log” which can be mainly used to record any such deviations, in any step of the development life cycle.

The bottom line is this - 
Even though there are a lot of steps to streamline any work process – nothing could change unless people learn to respect it and follow it.

Sunday, December 7, 2008

Songs from the Tamil Movie - Anne Anne

Quite often when I get bored with new music, I delve into my collection of old mp3 songs. Quite common for people to do so, nowadays, with almost all the mobiles coming with an mp3 player - you have complete access to any music you want.

Yet, there are times when you would want to hear a particualr song from a particular movie, which, unfortunately, not many would have even heard of. One such movie is Anne Anne - a real gem of a movie, extremely funny and some very good performance by all people involved.

It was a movie written and directed by Mouli, one really talented and unfortunately less seen on screen veteran. And it has some really good music composed by Maestro Ilayaraaja. The music right throughout adds up to the comical aura of the script and has this amazing number - "Uruginen" - beautifully rendered by SPB and S.Janaki.

Anyways, when I pounded the internet to see if I can get a copy of the songs from this movie, I could not find any except for a broken version of one song. I tried some other sources and some audio stores too, but got nothing more than some awkward stares.

But luckily I got the actual movie (in VCD format) from one of the video stores near my office. So, for people who wanted these songs, I have them uploaded at: