Saturday, January 04, 2014

Water Politics

Its amazing how the actions of one party that is less than 2 years old can get the whole nation to sit up and watch by just changing the policy on how water is billed to the residents of that state. With just that one move they manage to get prime time TV debates and every other state trying their best to replicate that model although it should not really be too hard given the amount of money each state already spends on subsidies. Water is becoming increasingly a resource that needs to be carefully consumed with a growing population and greater pollution of the existing water bodies it is becoming harder and harder to find cheaper sources of water.

Countries like Canada with the 5 great lakes have the largest body of fresh water available at their fingertips and since they are all glacier fed lakes they are perpetually being refreshed with more fresh water. The Arab countries with the desert and all the development taking place have to use desalination plants to meet their water needs. Every drop of fresh water is expensive to make and even then its not the very best quality of water and its at times cheaper to get gas for your car than to buy water.

India lies somewhere in the middle of these 2 countries - we neither have abundant water nor do we have no water. Its just that we manage to politicise the issue of water. Whether it is water sharing agreements between states or the price of water in the urban areas its all politicized and this trend is dangerous. Serious effort should be made to manage the water we have and use it efficiently or else our future generations are going to pay a severe price for water.

Wednesday, October 16, 2013

Golconda Fort - Hyderabad

Pictures of the fort









Panoramic pictures of Hyderabad city from atop the hill on Golconda Fort.







Tuesday, April 23, 2013

Blog on dental hospitals

Mona has worked with dental hospitals over the past 3 years helping them with their social media strategy and IT related strategic plans. You can read more about her experiences in her blog on dental hospitals.

Given below is an extract of an article she has written about dental hospitals

There are more than 1500+ dental hospitals in Hyderabad. Consultations cost anywhere between Rs. 100/- to Rs. 300/-. It is a business that functions a lot on word of mouth and references. However, if you are someone like me who came to Hyderabad and don't have anyone to point you in the right direction, then this is the dental review blog for you.If you call up JustDial, they will redirect you to the one that is paying them the most and who is in your area, ofcourse. However, for me, teeth are personal and sensitive and after horrible experiences, i decided to come up with this blog - To share information on good dental hospitals and in my own way give back to society. 
If you refer to JD's reviews they are fake and from what i've seen on most review sites, there is no way of assessing the genuiness of the complaints as none of the people posting put their real name and contact details.
You can continue reading this article by going here.

Friday, April 19, 2013

Landing a programming job

It is getting harder for freshers to break into the software industry and land a good job especially if you are from a tier 2 or 3 colleges. So what can you do.

The answer to this is very simple – the industry is looking for people who can do a task that is given to them – when you join the industry the key is to be able to “write code” as that is what you will be hired as a fresher to do. Let us say you go for a training you should ask yourself at the end of it – can I write code and if the answer is NO – then you will find it extremely hard to get a job in the software industry.

The key is to get a computer and get comfortable with it. The more you work on the computer the more comfortable you will get at it. So go for the training and come back to your PC and you need to work hard at it writing programs – what programs? – You may ask and the answer is simple – any program that will teach you the concept that you learnt.

You can find these programs to code at these locations

  1. Mindqjobs.com and we have a section on programming and their solutions. 
  2. Click here to get a list of programming questions - 50 programs for software engineers looking for jobs
  3. Any book will be able to give you enough samples to understand and learn. 
Do not copy-paste the sample and execute it and say you tried it out. Read the sample – close the source – try and do it without looking at the source – if you run into difficulties stop what you are doing – go back to the source – read it once again – close the source and come back to the computer and fix the problem – that is the only way you will learn and get confident. The key is to be able to implement things on your own.

Let us say, now you have the required knowledge and the confidence that you can program given the problem – you may ask – How do I now get a job? Write about the tougher programs that you have programmed or what you have learnt on a blog. Some examples of blogs of students that have trained under me are

  1. Step Towards a Corporate World
  2. Summer at Inforica

Include this URL in your resume. You should be able to write these programs if asked to at the interview and I can assure you that in 8 out of 10 cases you will land yourself a programming job. In any circumstances do not lie about your skills or experience – even if you get through the interview your shortcomings will be exposed and things will get tougher once you start working.

Tuesday, April 16, 2013

Who best fits the QA Role ?

For those of you who are not too familiar with these terms I would advise you to read my first article - Quality Assurance Vs Quality Control where I have spoken about my understanding of the two terms and it kind of leads into this article.

I have been asked this a few times by professionals who do QC (essentially testers although testing != QC) - "How do I move into a QA role?" and I have also read in a few websites and newsgroups for QA and QC where one looks at moving from a QC role to a QA role like a natural progression in ones careers.

Since I have played the QA role I would first talk about some of the things that helped me perform this role.
  • Since the QA role expects the person to have a holistic view of the process of software development it is important to have a bit of experience in all the facets of software development right from requirements to design to development to deployment. Its only when one understands all of these elements in software development can one be competent enough to be able to define a process.
  • Its important to understand the business for which the process is being developed. The process that is developed for software product development will be different from software services. Hence it is important to understand the business so that the appropriate process can be developed or enhanced.
  • The person implementing a process needs to understand the implications of a process change. Process change is a mindset change - you need to get everyone else to think like you and then get them to implement the process. Hence it is very important to gradually move them to where you want the process to be. Hence reading some theory and saying oh it will be great to have it lets roll it out may backfire very badly its important to understand the implication of each step of the process and implement it gradually showing the benefits of the process that is being implemented.
  • A QA person needs to be an evangelist - he needs to convince a lot of people that he/she knows what they are doing. Hence it is good to have good communication skills and marketing abilities to be able to sell the benefits of the process. Secondly the experience of the person in implementing what the person is preaching will go a long way in convincing everyone that what is being implemented will work.
Hence as you can see just understanding the testing phase of a project development lifecycle or being very good at testing and identifying defects in the software does not gaurantee that the person will be good playing the QA role. Hence it is important to understand that moving from QC (aka Testing) to QA is not a natural progression of ones career.

Monday, April 15, 2013

Advertising as primary revenue stream in startups

Over the last few months I have seen a lot of business ideas that base their revenue generation through advertising. In my experience this is a very dangerous strategy for a startup. Let me narrate my experience about implementing this strategy on a website that Inforica had developed called mindqjobs.com.

We launched this website in the last week of december 2012 with much fanfare with the assumption that we will get the traffic to monetize through advertising. The assumption was made on the fact that the website was to be used by the students of a software training institute Mindq Systems which number in the 1000s every month. We started off by putting Adsense and the pennies started to flow in almost immediately. Thats right, all we got were pennies which added up to a few dollars every day, an amount barely enough to pay for hosting the site on a shared server. One of the reasons is because the traffic was from India and not the west, so you end up making very little in terms of CTRs and CPCs. About a month later one fine day we get a mail from Adsense saying that our adsense account is banned for illegal traffic and that was the end of adsense on the website. 

We then went on to try out other ad networks such as Komoona ads. We get absolutely nothing from this ad network, just a few cents every day which we continue to get as of now. We got an account on infolinks - this made the whole page very ugly by linking up text to extra information and it was not the kind of user experience that we desired on the website. Another ad network that we tried out is Chitika - the issue with this is that it is targeted towards search pages and not content pages so they have very few ad types. The new one that I am trying out now is Tyroo - this is an ad network where you promote products and you earn commissions. 

Based on my experience this is my feedback for all those considering an advertising as their main source of revenue
  1. Ensure that you have 10's of thousands of page views per day with a majority of the traffic from the west. 
  2. Adsense is by far the easiest ad network to implement with the least amount of work. They have a wide array of ads suitable for every kind of page and the kind of revenue you earn from it is much more than any other ad network we have come across.
  3. Have one person full time only evaluating and trying out ad networks and changes to your web pages so that you manage the fine line between a good user experience and good chances of a click through.
  4. There is very little control that one has over the ad network and if all your revenue is dependent on a third party you have very high risk inherently built into your revenue model that can drive you into the ground very easily.
  5. Since traffic takes time to build up so ad revenue takes time to build up and also there is no guarantee that the ad revenue is directly proportional to the growth of the traffic although a pattern develops over time.
My personal opinion is that ad revenue cannot be your primary source of income of your product unless you are a google, facebook or linkedin and none of us are that when we startup. Ad revenue should only be a supplementary source of income. Build something that a customer is going to love using and is willing to pay you for it. That should be your primary source of income. 

Saturday, April 13, 2013

10 guidelines to be a valued associate

Its appraisal time and everyone wants to be the most valued associate. But how do you become the most valued associate - here are my thoughts

  1. Creating a belief that you can meet your commitments. Given a task you will do what ever it takes to complete it in the allocated time.
  2. Take pains to ensure that the task is done with minimum defects or issues. This can be achieved by multiple practice runs or by a lot of testing.
  3. There is an eye for detail to ensure that simple things are not overlooked and there is no compromise made on quality.
  4. Shortcomings of delivering the application are noted and brought to the attention of the superior as soon as they are identified so appropriate action can be taken. Do not wait to be asked for status to bring this up. 
  5. Having the knowledge to deliver and train others so that you gain respect within the community. Should have the passion to learn new things and apply them in ones work.
  6. Documenting what is being done so that anyone else can take over and continue if you have to ever leave the task mid way.
  7. Being open minded and inclusive in discussions and meetings.
  8. Having good communication skills both written and oral. They should have the ability to write well written emails or be able to hold a discussion comfortably with clients and fellow associates in the organization.
  9. Being able to admit ones faults and shortcomings and put action plans in place to rectify them.
  10. Not being afraid to challenge the norm and work on actionable points to improve the organization.
With inputs from Vidhyashankar Kannan - you can read his blog here