Sunday, September 26, 2010

Apples and Oranges

Rs 12 is more than Rs 10.
20% growth is better than 18%.
140bhp is more than 120bhp.

It is easy to compare apples to apples. Any one who went to school can understand it. Doing something better than something you have already done is of course  easy to figure out. Study harder and get more marks. Put in more hours and try to get another feature in the release.  Hire more people to get the work done faster. This is natural usage of high school math.

Science or Arts, Medical or Non-Medical, MBA or MS, Job or Business, India or US, stocks or cash. Most questions of life which are worth their salt will force you to compare apples to oranges. Some people tend to be believe they can compare anything using their monitory value.  Well ask them to choose between accelerator, brake and steering.

1  +  1 =  2

1 electron   + 1 proton    = 1 neutron
1 cannibal  + 1 cannibal = 1 cannibal

1 manager  + 2 developers = some work done
2 managers + 1 developer  = don't know
0 manager + 1000's of developers = linux kernel

Math abstracts. It makes us blind to details.  It is good to be blind to details and then it is also bad to be blind to details.  May be you are not dealing with all apples. May be you have few oranges and bananas.
Prerequisite to comparing apples to oranges is realizing you are dealing with not just apples.

Saturday, September 25, 2010

Tuesday, September 21, 2010

If Money Expired & people had choice

Money doesn't expires. Its value may decrease over time because of inflation, but it will still work. It may grow if you keep it in bank. But what if money expired...

1) Don't save. Its value will become zero eventually.
2) The only way to survive is by working, by being of value to others.
3) Don't cheat people to extract more money from them. Unless you can use it immediately, having more money doesn't makes you any richer as it will expire.
4) No point in robbing a bank...can't use all the money before it expires

We have two economies working in parallel. The economy of people working, creating value and making life easier on the planet. The second economy is the economy of speculation.  This is what I think causes economic depressions.  I think money is a great invention, but it has its own limitations. Money was intended as a tool to make people help each other now, with belief that they will be helped in future. It is a sane way to make the world exist. 

I believe that money should only do two things:
1) Allow you to use it and expire if you don't use it
2) Allow you to invest and be always at the risk of loosing it. (Loan is not investment)

The third thing is choice. People should always have a choice and more importantly the frequency of choice across all things should be in the same order.  How often can you re-negotiate your salary or your home loan? How often can you change price for your stocks?  In business model terms, it is called install base profit. This happens because people don't have a choice after they make a choice. What if you could buy a car and give it back the next day paying the usage charges? What happens if you could simultaneously work for two/three companies and decide to work each day which company you will work for based on how much money they are giving that day?  The frequency of choice creates great efficiency in the system. What if you could change your vote any day?  Choice makes the demand/supply model work. That is why 5Kg sugar costs less per KG than 1Kg of sugar because what you are trading is your choice. People should have choice and they should be able to exercise it with similar frequency across everything they buy. It is stupid to have stock markets change at millisecond basis, but your home loan fixed for 20 years and your vote for 5 years.

I don't know how to conclude this now.  Capitalism and socialism are not the only options. I think we can make world a better place. We need to push money down at the place it really belongs and bring people up - the place they really belong.

Wednesday, September 01, 2010

Using if

If is very powerful construct of programming languages. Most bug fixes involve adding another "if" or handling the else part properly. Many bug fixes would need adding "ifs" at multiple places. I think of "ifs" as design problem. If essentially means doing something different based on some criteria. If multiple functions needs to check for the same criteria and do something (same or different), then what we are really doing is "adding some functionality" which perhaps belongs to a separate object, to all the places we are adding "ifs". May be what we need is a new object/function to abstract that functionality or perhaps declaring a new interface and adding multiple implementations. Ifs allow us to live with design problem by having special cases, whereas the whole point of design is not to have special cases, just simplicity.

Languages

Hindi forces us to think about everything in terms of male and female. TV चल रहा है या TV चल रही है. Kannada and English don't have sounds.  ख, त्त , थ. Punjabi doesn't have very strong notions of half letters. As we keep adding new words to the languages, it would be nice to add new sounds/letters also. Languages we use were invented long, long time ago. May be we should invented new languages which are keyboard friendly, capture enough sounds, have simple grammar,  is easier to learn even for adults, stops forcing us to think in terms of male/female, is computer understandable (avoid NLP) and perhaps easy to work with Text-2-Speech & Speech-2-Text converters.