Oct 6, 2009

Follow the process, forget the rest

I was chatting with one of my many relatives the other day (I am proud to say my family has 3 generations of software engineers, starting from one who worked on punch cards :)), and this person was talking about how his organization has been working on a product release for the past 2 years. I was dumbstruck, how could somebody work on something for 2 years. When I conveyed my doubt he gave a long sigh and explained that his company focuses on the process of delivering quality products to the customer and hence has left the decision on processes with the Quality Assurance team. Every-time a new release is supposed to happen, the QA raises a red flag about some issue or the other and hence delays the release. One of the important points they like to focus on is documentation.

My idea of a software product is this.
  • Based on the market requirements (read this) (The product management team gets the current market requirements and defines the idea. (Not more than 2 weeks)
  • Development brainstorms the idea and comes up with a prototype (Max 4 weeks)
  • Dev showcases this to the Product Management and gets their confirmation if they are on the right track.
  • Product Management signs off the initial level of design, and requests Dev to proceed with the next steps.
  • PM shows this to the Customer and if any changes, communicates to the development at the initial stage itself.
  • The development continues with the iterative development and in a maximum of 4 months comes up with the final design as requested by the customer.
  • Then another 2 weeks of testing. (During these 4 months of development, testing would happen at the end of each month on the monthly milestones).
  • A total of 20 weeks (translates into 5 months), the beta is released to the customer.
  • Once things are on track, the dev starts with Wave 2 of the requirements.
In this way, we can be sure that we are ahead of our competitors and follow the Agile methodology to the core. We always have time for documentation, processes, standards and quality. What we need first is the confidence of the customer that his requirements are really going where they need to go and not into 50 page MRDs and PRDs which no one would be looking into anyway.

Let's follow Agile, Let's Be Lean.

Till later.

Jul 13, 2009

The Long and Short of corporate E-mails

Been in this job for close to 6 years, of sending and receiving mails :), that I now know this first hand. Infact, I am one step ahead when it comes to sending and receiving, do an F9 whenever I want an updated dream. . But jokes apart, I had this sudden rush of emotion when I started blogging this one. We talk about sustainability; Save trees, save planet, save water, save electricity, save fuel, save wood, blah blah, and all that s***. We have missed out one core component, save on e-Mails. I am sure if we stop sending e-mails for one day, we could save power to make us survive for one whole day (I am not sure how environmentalists arrive at this figure but that's how it is so, just shut-up and listen).

When I say we save power through not sending mails, I am talking about all those crap mails which are sent around everyday, and which spams our inbox. And it is not from any fake site selling Viagra or Cialis, it is from our very own colleagues and it is not just the Miss World wallpapers that are sent around, it is something related to work which spams the inbox.

You might be wondering, I must be some sort of Kaam chor (work thief, meaning, person who tries to avoid work). Well not exactly. Just to highlight what I am trying to say, there was an issue a long time ago in one of my many jobs,which actually boiled over into an escalation. One person drafted and sent an e-Mail, to me, a colleague of mine, the culprit, his manager, his VP, his LOB head. Apart from that he sent my manager an FYI, (not sure why he did that).

The culprit's VP forwarded the mail to the field sales colleague who inturn forwarded the mail to the entire Sales management DL. Now this mail was then circulated back to the culprit who replied back with another colleague's contact who happened to work in Culprit's team (without cc'ing the culprit #2). The sales team replied back to the culprit #2 with "Could you please help us here". Now this culprit #2 was a dumbass. Instead of scrolling through the mail and finding out who had initiated the thread, he just picked up any damn section of the thread (in which I was involved) and replied to all. Now if you see, how many iterations the same mail (+ the delta) might have traversed, it actually did one round trip around the world and finally ended in the same team.

Now all you environment philanthropists, come up with a damn idea for making sure jackasses like the one above are punished under some PETA like law which prohibits them from clicking the "Reply All" button in Outlook.

Time to run for a meeting. C ya later.

Jul 7, 2009

Tax Exemption of 10K...what it means for you

The initial shock is over and it is now time to dismay. I, as an individual tax payer, am thoroughly disappointed with the budget. I feel the FM should have done some more groundwork/homework before proposing the budget 2009/2010.

LCD prices have been slashed 5% and would cost cheaper. But STB prices are up by 5%. Which means, what you save in LCD, you will have to shell out for Tata Sky, Airtel Digital or the infamous Sun Direct.

Excise duty on big cars (the Audis, VW, BMW etc.) has been slashed by 5% to make it uniform at Rs. 15000 per unit. But the same has not been implemented for smaller cars (which form a major part of the Indian commuting style. You cannot see any common man driving a BMW or Prosche unless he is a driver of a CEO who is working in an MNC.

Gold prices have been increased by Rs. 200 per 10 gm...which means we men can cite that as a reason for not buying gold for our women folk.

Above all, the FM has done a great job by increasing the Income tax exemption limit by Rs. 10,000. I hear some of you ignorant people say WOW...Rs. 10,000 per year amounts to Rs. 800 per month. Hold On...:) below is the breakup of how much excess you would get if the exemption limit goes up by 10000. Here is the old structure with exemption:


With the new exemption (a whopping Rs. 10,000/=) here is the new tax payable per month:



So you save around Rs. 1030 PA. (TimesOfIndia published an article today which sid "The FM has ensured the tax payer gets Rs. 1030 excess at his disposal). What they have not mentioned is this amount should be divided by 12 to arrive at the monthly increase which is more important to common man than the yearly increase.

It is time for another test drive. Let's Jazz with the Honda Jazz. So Long.

Jul 6, 2009

Hyundai i10 for Dummies

Had the privilege of test driving a Hyundai i10 Sportz on last Friday. I might not have a 5000 hours of driving experience under my kitty, but I could drive around at 5th gear on ITPL road to test all the bumps and thuds this road is famous for. First of all, I would like to comment about the Hyundai customer care. These guys are as prompt as an Englishman :-). The moment I called up their customer care and fixed an appointment for a test drive the next day, I got 3 calls from them (one from Gurgaon office and 2 from the Advaith Hyundai showroom) to confirm the appointment. Kudos to them. I hope the after sales service too is as prompt (which I heard from a friend of mine, it is). I think Tata and Maruthi need to take a note of this. I have booked 3 calls with Maruthi for the Ritz Test drive, but somehow, I assume, they think I am too unimportant for them. Know what guys...I don't care. I don't need a 1.1 Ritz when I can think Kappa Buhhaaahahaha.

Then the D-Day. The sales person drove down to my office at exactly the scheduled time and we started off. 4 grown up men (3 oversized bloats :)), and me behind the wheel. Now for the real meat.

The interior has a cosy look and feel with the beige coloring frame and the beige seating. The seat is bucket styled, and good enough for a 5'5" (I am 5' 8" though and found it easy to drive).
Both the front and the rear provide a wide viewing experience (thanks to the A and C pillars being of lesser width as compared to Swift). The side view mirrors are really wide and with very less blind spot.

The gear shift, mounted on a console, was as smooth as butter (I am used to doing a hard 1st shift...thanks to my Alto gear box..). I noticed a Wagon R coming up behind me and I wanted to avoid this guy overtaking me since the road ahead was empty and if I followed this guy, I might not be able to test the i10 to it's fullest. But I was a bit apprehensive, since, with the A/C running and in 2nd gear, I was of the opinion, no small hatchback would be able to get the needed thrust. But this baby was awesome. There was absolutely no difference from driving with the A/C turned off. And I whizzed ahead of the Wagon R in less than 4 seconds :) (I should have checked the look on the Wagon R driver's face .

The gear shifts were smooth and I reached 5th gear in no time (at 90 KMPH now), then I noticed the bump. I am used to scraping my Alto's bottom on this one monster a couple of times and I always make it a point to make sure I am absolutely slow while driving over it. But I wanted to test i10's ground clearance (and what the hell, it isn't my car anyway), so I thought of taking on 3rd gear over it at 30 KMPH. And lo behold, did just that like a breeze. Very impressive. The steering column is both collapsable (for safety) and tiltable (convenience) and extremely sensitive handling. I was able to negotiate a sharp turn with just one hand on the wheel (I have this bad habit of driving with just one hand and the other on the gear). Made it through a couple of pot holes too with very less thuds.

The turning radius is similar to Santro (and a bit more than Alto) at 5 mtrs. so it is better to take that slight left and then turn to the right, if you are not used to it, lest you end up doing a double turn on a busy road. The brakes are very responsive (stopped the devil in its tracks at the next bump while doing an 80.

The boot space is decent and good enough for holding luggage of a family of four. Rear seats are 60-40 folding so you get that extra space in the rear (if you want to leave you mother in law with the luggages in the rear, this is the best option hehehehee). Sportz comes with a fully integrated music system, so the rear speakers are mounted on the door. So you get that folding panel in the rear for some soft toys (unlike Alto where I have the speaker mounted on the panel and have to be careful about the stuffs I keep there).

Headlamps are nice, elongated and wide. No complaints about their performance.

Some cons though:
Sportz is a bit pricy (around 30 K more than Magna), but comes with HMSL, Rear spoiler, rear defogger and a jazzy upholstry (for Red and black variants) with an integrated music system. But I think it is worth the experience you get out of it.

I am not too much into the NM and Torque and all that shit, but I can say this, on an incline with 4 decently built people, this car might just be able to make that hairpin bend which you would have scared to do in any other small car.

All in all: I would recommend this car (or magna or asta if you have some extra cash) to people who are considering their first car or are tired of their existing hatchback.
Driving, braking, pickup: 4.5/5
FE: 13 KMPL (city), 19 (highways, as told)
A.C.: Decent
Pricing: Affordable
On road (BLR): 467700 (Maybe you could bargain on the 1st year insurance waiver and Rs. 4K discount, the On road comes down to 4.49 L.) Came to know from a friend today, that they are giving some more accessories if you know how to bargain (which you would know if you are a true South Indian ;))

So long folks.

Be Safe...Play safe...always use the seat belt.

(TD'ing Vista tomorrow, shall post more on it)

i10 to TVS 50 in 30 seconds

Damn...I thought I could go for the i10 (EMI=Rs. 5000 pm). Now I have to live with my TVS 50 for the next 5 years when the next Government would change the tax slab. Saw the update on Budget 2009-2010. Looks like IT Exemption limit for Salaried class has gone up by Rs. 10000. Which means, my take home would go up by Rs. 80 pm. At this rate I might not have enough to even fuel my 50cc thunder. Long live this budget. Long live my TVS 50.

Need a break and a brake (for my devil) :-)

B-Day...It is the Budget Day

I am eagerly awaiting FM to announce the Budget 09-10. I am more eager to know what is in store for "me". Last budget was the best by far (thanks to Mr. PC), my take home went up by 42 grand a year :). The need is felt more now, thanks to the recession, the growing food/fuel/basic necessity prices. A few couple of thousand bucks hike would not hurt. Please Mr. Mukherjee, be a good man, help me get that i10 I have been aching for.

I am gonna watch NDTV Budget. Hope I would get more salary today. Have a major financial crunch coming up next month with a few LIC premiums, PPF payments, credit card payments, and above all, my love for Hyundai i10. KFC Folks.

Jun 30, 2009

How to release software and how to release software

After my tryst with Product Management over the past 28 months and my 9-6 work involving the PM concepts, I think I am now capable of penning my thoughts on the 2 ways software should be built and released. These are more of my personal views (and of some friends and colleagues too ;-)) and should not be considered as the final say. You are free to think/opine/contradict it and I would love to know more than 2 ways of doing the above task.

To begin with, I think writing a software is bullshit. Software is never written, it evolves from someone's idea. What goes in is not just the if, else or the {}. It is the end user's requirement, his pain points, and his suggestions. This is the only way we can look at software. From an end user's point of view. Hence the first and most important thing to do before building any product, is to get the customer's suggestion. After all, if you have a product and no customer you might as well throw it out of the window (needless to say, you might consider using the documents and the presentations created as emergency tissue papers). The following should be the motto of the day for any person working in the software industry:
"In Our Business The Customer Is The King". You should make each developer, product manager, solution manager, development manager, head clerk (???), admin, HR, every link in the chain, to say this 100 times before starting to code. This is one of the ways to get to know who is the boss. (I still wonder how some of the projects/products which came up without any customer focus made it to the market and survived for a week).

OK. So now back to what I started with. The 2 ways to release a software. The first methodology is outlined here.

"I give You Take":
(Should be read as I give you my idea, you take my idea). This is another way of saying "I give a damn to your ideas"
  1. The LOB head comes up with an idea.
  2. The idea is shared with design, architecture, and solution managers.
  3. Solution Management tries to find internal stakeholders (read as internal customers) (we still do not have customers anywhere here)
  4. Architecture comes up with the design document.
  5. Technology is deliberated on.
  6. Plans are communicated to development and timelines are created.
  7. Development is still unaware of why it is doing what it is doing. (Point 2 never flows till here. It is not hidden in those design documents and MRDs which were created in point 3 and point 4. If you want you could understand from there)
  8. Repeat steps 5-8
  9. By now it is close to 8 months and 50% of development is still not aware of what they are doing. The rest know something because, they are in the process of updating their resume and need to show what they have done in this timespan since the project started.
  10. When all the testing and validation and product standards and bug fixing and internal releases are completed, the product is ready to be released for a few select customers who showed interest in a similar idea.
  11. When this is finally taken to the market, you find a host of products which are cheaper and easier to deploy with better service network.

Then we go back to step 1 and the process repeats. The reason why this would be a 95% failure is that there is no customer interaction at any point. Even if a customer is unfortunate enough to buy this product (which would be costly as hell because of the huge effort spent so far), the UI, interaction, and flow would not be to his taste. So now the development is loaded with the task of customized development for this customer. (The remaining 5% would be for the internal customers who do not have an option but use it as a pressure from the upper management)

The major pit-fall here is that every single person in the food chain is unsure of the market demands. There is just no customer in the whole thread, from whom you could get their views.

The other route (and my most fav one) is:

"You give I take"

Should be read as "You give me the requirements, I take your requirements"

For this I would say the first point of contact is the field. Get the field sales people to check with their buddy-buddy customers about what they have, what they would like to have in what they have, and what they would not like to have in what they have. This is more of a bottom-up approach and would flow as below:

  1. Field approaches customer with what they want.
  2. Customer gives his requirements.
  3. Field talks to Solution Management
  4. Solution Management prepares MRD and shares with Field
  5. Field ensures if things are understood (and if required, check and cross check with customer)
  6. If things are fine, Field requests for commitment from SM.
  7. SM checks with management and provides a breakdown result structure (more of SCRUM except that at the end of each Sprint, the actual audience would be the Field and Customer and not peer developers)
  8. Signoff from Field and customer
  9. Communication of MRD/PRD from SM to Architecture.
  10. Architecture prepares blue print. Discuss with Field (and if required the customer). Make sure if this is what the BOSS wants.
  11. Communication to Development and Project Management.
  12. PM plans for short sprints and development executes.
  13. End of each sprint, check with customer if the requirements are being implemented right.
  14. Close the project ahead of schedule.

The good thing in this approach is, even if you slip a month or so past the deadline, it is not a big deal since you have got the customer and field's confidence in your work. They would be ready to wait for your result.

The only con here is, it requires 3 steps more to release (the first needed just 11) and requires to disturb the customer time and again (with your questions and suggestions and ideas). But what the hell, I think customers like to talk to development about the proposal. At the end of the day, who would like to spend money on a piece of code which they never wanted.

This is a longer route, but one which is guaranteed to get you that 5 * from the customer. Afterall 5* is always better than a dissatisfied customer. Think about it.