Wednesday, April 16, 2014

Elections and irrationality

The elections seem to have become farcical. The issues debated about don't make any material difference to the lives of the people. These debates seem to be centered around showing "who is the worst" rather than indicating "why I am the best to serve the people". The "serve the people part" has been lost since many days. People trying to get elected tend to be focused on ruling rather than serving. The fundamental principle of democracy has been lost. So it appears that system has stopped working and the time may be ripe to rethink democracy or how to make democracy work. Expecting thugs to create laws that put them out of business is hard. Only way appears to be that we stand up, question and make a collective decision based on merits of individual rather than any other parameter.  Hopefully that consciousness will spread and hopefully we come out the very irrational thinking pattern that we have gotten ourselves in to.

Monday, April 14, 2014

Elections & Being Secular

The 2014 Lok Sabha elections are on:

My heart weeps while my mind laughs at the "ease" with which words and actions are given new meanings by our bigoted politicians.

People start dissecting parties on the lines of secularity without even thinking for a moment to understand the meaning.

What does Secular mean - A decision/act that is not biased by religious beliefs. Everything in our country gets decided based on the caste a person is from and yet we call ourselves secular. Somehow secular has come to mean an action or decision that appeases "non Brahmin", "non upper caste" people. Even the erudite in the country seem to have accepted and propagated this idea. It's a pity and a shame.

So there is no secular party in India - all are wolves in sheep's garb.

We must first learn not taint our actions and decisions based on our "religious" / "caste" beliefs, but base those on ethical principles, justice, humanitarian values and what is good for the country.

Oh, by the way I am not a supporter of any political party - especially BJP - the rule in Karnataka was enough to provide a glimpse of moral (legislators watched porn in assembly, ministers thieved, some more ministers debauched, chief minister supported all these people) bankruptcy the party has.

I hope the people of the nation understand the artifice of the politicians & ensure right people are chosen regardless of the party.

Tuesday, December 24, 2013

There is no built to last

Fundamental research questions: 1. why bad always dominates good? 2. at what point in time corporations / individuals start failing? What are the symptoms? what are the usual causes? - Failure to adjust to new environment/reality - why does it happen? While I was walking back home, carrying my lunch for the noon, asked myself the question "why it is always so that bad dominates good?". I realized that decay (going bad) is inherent to all systems - this is a truth known to most people who think. When I say systems, there are 2 - organic and inorganic. The systems have to collapse or be supplanted at some point in time. The organic systems simply decay after a point in time. The inorganic systems reach limits that are defined by laws or physics/other constraints such as change demanded in systems functioning due to changes in external environment. These systems at that time can't grow/can't change themselves fast enough and are replaced by newer systems. So there is no "built to last", but there can be "good to great". A system usually gets better when up to certain point in time. A system tends to be perceived as less useful (bad), because other systems which are better than the existing evolve to supplant the existing. The evolution of new ones increases variety and entropy. The new systems also need resources to survive and grow. The resources are always finite. There comes a time when contention for the resources leads to fights and eventual collapse.

Then comes the question - why create/live/exist, if we know that eventually all things have to devolve? The answer is simple - as all paths lead to destruction, if one is given a choice to do something and be destroyed, or be destroyed without doing anything, I believe, one would choose to do something and be destroyed; but the catch is really being happy & getting destroyed, rather than doing something & getting destroyed. When I know I will be destroyed, the understanding will help me limit my desires. As I have written elsewhere, there is no way to attain happiness other than being without a desire, because desire is the root of all sorrow as said by Buddha. I am without a desire only when I have fulfilled all my desires, or when I don't desire. It is impossible to fulfill all desires. Hence only way to be happy is not to desire (Same principle as that of yin-yang. The extreme of one is the beginning of the other).

Being without desires helps me to focus on attaining happiness through doing/being, rather than having. Isn't that what Karma yoga all about? Why such a crazy post? Understanding the big picture gives us a context to think. If I understand the context better, I may make a different choice when I am in some dilemma.

A post in Anger & Disgust

Any non caste based, but need based act in the direction of making education more accessible to all strata of the society is most welcome. There was an incident in Bangalore where school forced the children who got admissions under RTE to cut their hair really short so that they could be differentiated from other children studying along with them.

It is simply heinous. If we continue in the same vein of thought why can't we make the doctors, engineers and many others who have got admissions to professional courses by paying money rather than being selected through competitive exams, print/display clearly on their letter heads/advertisements/in places where they practice that they were not meritorious but got seats because somebody somehow paid lakhs and crores of rupees for their coveted degrees? I am not saying that people with money are not meritorious, but questioning the rationale that only money is the qualifier to determine whether a person gets the education or not.

What is essence of leadership?

I was reading an eulogy. Again as it happens I believe I found answer to the essence of true leadership / true leader.

True leader/leadership is the one who/which brings out the altruistic human nature hidden deep within various people and focuses that collective positive energy on improving the condition of the people.  The leader/leadership also ensures that the path chosen for this improvement is humane and just.

Friday, January 25, 2013

Thoughts on solving a programing problem & building software

1. The code does not behave arbitrarily – The problems in logic that make the code behave arbitrarily 2. Don’t give up and say a solution is wrong – look for the remaining part of the solution to make it right. 3. Always learn to pay respect to the professional work done by others 4. Always treat yourself as a learner – lowest guy in the totem pole – enables you to look at code with enthusiasm and an attitude to learn/understand. 5. Always try to find the simplest and most durable of the solutions that solves the given problem – you are not in the software engineering world to create complexity – it is the other way around. We are here to simplify. (We need to learn to balance simplicity and complexity). The simplicity is prioritized. The Simplicity should be for the user (User should be able to very easily & quickly perform intended work, reliably each time). 6. Each computer system is built with some key primary quality attributes in focus. All other attributes are secondary. The architect’s job is to decide which are primary and which are secondary. He/She should then build a system that is able to realize this goal.

Saturday, August 11, 2012

Why "Intuition" is important?

Intuition enables one to come up with interesting questions. The answers to those questions create new knowledge. The drivers for creation of knowledge are questions & intuition. Without intuitive thinking there is no newness.

Saturday, July 21, 2012

What a nice thought

"History is not made by the person who is right, but by the person who survived". ascribed to UTV Action Movies. How true

Tuesday, February 21, 2012

The Assignment and MIT Sloan Tech Review

Neary 6 years ago I was tasked with implementing CMMi with one of the organizations. I know for most tech people, it sounds idiotic - but i believe discipline in any area is essential to succeed repeatedly & keep learning continuously. If we approach CMMi with that perspective, it becomes an aid rather than an impediment.

Most of the places, the process guys are non engineers who want power over engineers who have brains 100s & 1000s times better than those process guys. To feel superior process guys end up creating constitutions in the name of process improvements that mandate laws to measure times the engineers spend in taking leaks.

Anyway the current thing is not about that. Since previous post was about what is good software, possibly it is nice to know how to build good software.

I had the pleasure to work with one of the most brilliant guys (Sanat Pai Raikar -almost 6 years junior to me). To get him upto speed following was the assignment i gave;

"Please do read the following:

Software Engineering a Practitioners Approach – R.S. Pressman
OOAD with Applications – Grady Booch
Mythical Man Month – Fredrick P. Brooks
Age of Spiritual Machines – Ray Kurzweil (to understand law of accelerating change/ returns, entropy in system etc.)
The quotes at the beginning and end of each of the chapters in the Java Programming Language book – James Gosling and Ken Arnold

All assignments will be done individually first, then revised if necessary with consultation/inputs from Anuroop and Krishna. Then these will be presented to general audience.


1. Software
What is software?
What is good software?
What are the characteristics of good software?
What does it take to build good software?
What are the measures to tell whether software is good or bad?

2. Software Engineering
Overall perspective and Answer the following

What do we mean by software engineering?
Who does software engineering and what are the general roles?
What are the general myths and how can we overcome those myths?
Why should we focus on “engineering aspect”?

3. Software development lifecycle models

What are SDLC models?
Why should we have these models?
What are the different SDLC models and what are their characteristics?
What is the applicability of these models? Or when should each model be applied?
How can we determine which model to be applied?
What are the stages in each of these models?

4. Focus on various stages in SDLC
a. Planning and Project management
b. Requirements Gathering and Analysis
c. Design
d. Implementation
e. Testing
f. Maintenance

5. CMMi Focus
Understand CMMi and its applicability to software development process.
(Read the CMMi spec for this)

Incidentally today I was reading an article MIT Sloan Tech Review

It's always nice to understand the fundamental forces that drive evolution.

Will the exponential growth in computing power continue?
What are the limits of the computing power in terms of problems it can solve?


Friday, February 10, 2012

Good software & a Good software engineer

1. What is good a software?
2. Who is a good software engineer?

I asked these to a set of guys who had wanted to learn about software project management. The simplicity of the answers is similar to the one about happiness. Thus it also resonates with the idea that the most important/fundamental things are most simple; yet, many of us are unaware of those answers.

If I don't know what good software is; how could I develop good software?

Thursday, January 05, 2012

Thoughts about Happiness

What is the definition of happiness nowadays? Is happiness attained through enjoyment? Is happiness a state of the sensory organs or the mind? Is the stimulation of sensory organs necessary to be happy?

With the twisted definition of attaining happiness through enjoyment/stimulation of sensory organs we have run amok. We don't realize that we would end up needing perpetual stimulation to be in continuous state of happiness when we rely on attaining happiness through stimulation of sensory organs. This is highly impossible.

Hence the only way to be perpetually happy is to have sense of contentment & happiness in the mind.

Tuesday, August 09, 2011

Trend Spotting

Cyclical things happen in all parts of life. There are mega trends and there are minor cyclical trends within those mega trends. The frequency depends on which cycle we are referring to.

The mistake that we make is usually we may find the mega trend or micro trend that is prevailing but fail to notice the other. The events that keep happening are a combination of both these trends. So we get surprised when events happen contrary to the trend that we are observing. If we stitch together all the contrary things - we may find the other trend that we are missing.

May appear like some gyan. Most observations are :-). So feel happy to read, forget or read & think.

Saturday, August 06, 2011

Learning again the computer science & engineering stuff

Feels like breathing fresh air during a morning walk on a tree lined avenue.

From the days of my engineering almost 14 years, the computing technology has evolved to a great extent. The fundamental principle of thermodynamics that the entropy of a system keeps increasing leads to ever increasing complexity however much we try. By creating a new way of doing things or finding new thing, we add to intellectual complexity as we have one more item to consider. These new things implicitly lead to more complex systems. For that matter "ignorance is bliss" is a truism. The key to understand is that these new things essentially create new paths and hence add to combinatorial explosion. If these new things completely replaced existing ITEMS (yes, plural), then these reduce the complexity.

I don't think that happens as the technology itself accelerates to the creation of new items.

Why such a long preamble?

Because The thought that we are already in the era of parallel processing at mobile phone level hit me hard. The multicore computing systems would possibly now require almost everybody to be aware of the parallel processing (guys please forget concurrent processing). These will change computation in fundamental ways because till date all computation except in the research areas has been single core. All system software, & application software is geared towards it. The OS concepts that we learnt talked about CPU scheduling for only one processor.

The parallel processing is a whole new learning for me as I need to go back and relearn the concepts of parallel processing. I was always a big fan of very nice multithreading support in Java and loved to create multi-threaded programs. (I remember one incident - our team wrote a multi-threaded data transfer as well as processing application so well that whenever it used to run, it pushed the CPU usage to 100% and that caused crisis saying that we are hogging the CPU time without letting other applications to run - How can that happen on a preemptive multi-tasking system I couldn't fathom :-)). So I love to see what is left to be done yet at the level of applications. This definitely will need extensions to all language libraries with implementations of parallel versions of algorithms to make full use of current day desktop computers.

Similarly the need to process massive quantities of data is leading to the need of everybody to become aware of the concept of distributed computing.

I am headlong in to learning these new things so that I don't become a dinosaur. Yes, I have become pretty good at managing, but without the knowledge of current day evolving trends I would not be able to compete with the best. I always wish to compete and create best results and win.

The idea of looking at these trends which are very powerful and beautiful is exhilarating and refreshing.

Sunday, February 13, 2011

Symbolism - Cobra with opened hood (No I am not brain dead yet :-))

It all began with me and my wife going in to a restaurant previous weekend when I was visiting her. There we chanced upon the Chinese predictions for the people born under the signs of various animals. For the uninitiated it is important to know that like all ancient cultures Chinese also follow a calendar based on Moon and each year is named after an animal in a predefined set of animals. The people born in these years are thought to manifest the nature ascribed to the animal.

Then, when we were through our dinner, my wife started asking why snakes are considered wise beings? I did not have a definitive answer. Today suddenly a moth fell in to the glass of milk I was drinking and died. It made me look through the symbolic meaning. While looking at that, i read about snakes open hood being used as a symbol of offense by Egyptian pharaohs. in Hindu mythology lord Vishnu sleeps on a bed formed by the curling body of 1000 hooded serpent named Adishesha. Here, snake with open hood is a symbol of security and shelter.

Suddenly it flashed to me that the opened hood of a cobra very gracefully combines both the offensive and defensive natures. It is what the rulers must do and must be like. Punish the wrong doers and protect the pious. It is what the wise people do.

Now I believe I know why snakes and among them the cobra is held in such high regard.

Sunday, January 23, 2011


Life is about living happily. To live happily we need peace within our heart. This is more than enough. Let us realize this & give up on all egoistic pursuits which bring nothing but misery.

Saturday, January 08, 2011

Curtains and life

I was looking at the closed curtains in my house; suddenly i realized, they don't let the outsiders see what is inside, but at the same time also prevent the light from streaming in and making the house look bright. Our lives are also like this, we may be closed and guarded with a feeling of security, but at the same time prevent the inflow of knowledge & wisdom that helps us get better.