Friday, June 29, 2012

On Simplicity and Complexity

Simplicity is highly abused term. It is now synonymous with good and consequently complexity now stands for bad.  Making such a statement is usually complex. It needs time, understanding of the subject.  But often, it is very easy to judge simplicity and complexity. If you understood it is simple, if you don't it is complex. The relative frame becomes the "person" not the problem/solution space. What takes real thinking is judging if something is "appropriate".  It comes only after you understand the problem and the solution so well that you can judge if the solution is appropriate. 

What makes something simple or complex?

Lets talk physics for a while. Earth is the center of the universe and sun revolves around the earth. That is simple. Every child thinks that unless told by teachers or parents. Problem is, simplicity doesn't helps when you are sailing oceans or launching a satellite. Consider motion. Classical mechanics is simple. It is still heavily used.  Relativity is a bit complex, just add the observer and how he observes to the equation. That is necessary if you are dealing with small particles, moving close to speed of light. There is nothing wrong with classical mechanics, it is simple and appropriate for lot of things. 

Solutions are simple or complex, depending upon the levels of abstraction used in understanding the problems. We won't be able to build any building if we start at atomic level. Recipes at atomic level will be useless. The unified theory of everything is obviously simple in terms of its constructs but becomes very complex to deal with high level problems. So in some sense complexity arises from simplicity - simplicity of abstractions. It can come from complexity of abstractions too, but that is obvious. Take a look at nginx module architecture. It is simple. Call all modules to find  if someone will handle this request and then let it handle it. Problem is writing the handler.  Nginix modules need to do everything themselves and cannot uses code from other modules because the architecture encourages isolation. So we have chunked encoding implemented in basic http module, file upload module, the upstream module, etc. I guess the same needs to be done for compression, caching, etc. Simple architecture, complex modules.

The opposite is also true. Complexity also leads to simplicity. Understanding complexity needs lots of thinking. Finding out how things are working, why are things the way they are. What are the assumptions. This knowledge is at the heart of seeing simple way of doing the same things. Good needs bad to differentiate. Simplicity doesn't occurs in isolation. It needs complexity as a yard stick.

When Einstein said "Everything should be made as simple as possible", he also added, "but not simpler".  The question is not simple solution vs complex solution, but appropriate level of simplicity or appropriate level of complexity or put appropriately - finding the appropriate solution. 

Wednesday, June 27, 2012

Of Money and Banks

Looking back, I seem to have too much to say about these topics.
In chronological order..

This one talks about how money is an abstraction for human interdependence and how it has properties that are different from properties of human interdependence.

It is a mixed bag about unethical banking practices like loan switching charges and floating rate of interest (as if fixed one was better) and how we should move away from loans and only allow investments.

Read this one. What if money expired ? Is choice enough in capitalism?

Banks should be open to failures for their own good.

If you are employed, you will love this one.

More detailed analysis of frequency of choice - the missing piece in capitalism. 

Tuesday, June 19, 2012

Be Original

Cut: Copy-Paste

UPDATE: May be this is not so clear after all. The idea was the use the sentence which is completely opposite of "being original" which is "cut-copy-paste" and use the same words to convey its opposite. If I was to code, this would appear as

Cut (Copy-Paste)

Essentially cut (stop) doing copy-paste if you want to be original.

Wednesday, June 13, 2012

Where is money?

It is not in the banks.
Not in your wallet.
Definitely not in the stock markets.

Take out the piece of paper you call money from your wallet and you will find this written.
"I promise to pay the bearer the sum of X rupees" - Governor RBI.

If money was money, you already have it and then why is Governor of RBI promising you to "pay it"? Well it turns out what it means is that in normal circumstances people will trust these pieces of paper, but even if they don't, I promise I will pay you something of value worth these pieces of paper.

Money is the promise we make to each other and the only species which honors promises is humans. You are money. Your wife, your kids, your parents, your neighbors, people in your office, people on the road, the shopkeepers, the drivers, the plumber ...


Things don't have value, people see value in things. This is simple stuff, one less indirection. The billions of dollars/rupees (pick your currency) is paper in the hands of few individuals or corporations, is nothing if the rest of world doesn't honors their promise to be of value to those who have this paper with them. I have no idea what RBI Governor will give to such a guy whose money no one accepts.

It is people who produce something valuable and it is other people who appreciate that value and pay for it. Money is not what you have in the bank, wallet or in stocks, the value of that piece of paper is in the people around you and their willingness to do something of value for you for that piece of paper. The value of money is in the people. Anything that stops other people from producing value, is decreasing the value of that paper you hold so dear. And many times what is stopping people is that they don't have that paper with them. Richest companies in the world are mostly monopolies (Oil and Gas, Infrastructure, Public Sector). The next richest are banks. Somehow capitalism fails to bring efficiency in banking even with private sector. Everyone of them seems to be making money. Give 5% interest for deposits and charge 15% for giving loans. Stupid regulations.

People seem to trust money more than they trust in people and paradoxically, trust in money is nothing but trust in people.  

Tuesday, June 12, 2012