Wednesday, March 8, 2017

What is Advaita?

Simply put, Advaita means Non Dualism or Monism. But, when people speak about Advaita in India,they mean it in the context of Advaita Vedanta. Dualism is there in lot of contexts and some examples are cause/effect,man/woman,part/whole and so on. So, the term Advaita can be confused with resolution of cause/effect dualism to monist "effect is embedded in the cause,and is one and the same"  or treating man and women as single entity etc.

Next time,when some one uses Advaita, he or she should specify whether it is in the context of Vedanta or not. As per Advaita Vedanta, "Jeev Atman and Param Atman is the same". The dominant form of Vedanta school is "Kevala Advaita" or Absolute Monism of Sri Sanakaracharya.

Adi Sankaracharya's teaching can be summed up as "Brahma Satya,Jagan Mithya; Jeevo Brahmaiva na para ha ". Simply put,"Brahma (Absolute) is truth,Jagat (Earth) is Mithya,Jeev Atma and Param Atma is not different"

As per Upanishads, What ever be the ultimate reality of cause, it is called "Brahm" and it is regard as pure consciousness (or energy), also called Atman. As per Sankara,Atman in life forms and inanimate things ( Jeev Atman ) is the same Brahm. Any material things (including humans) which you see around are the result of Maya (some kind of illusion) which prevents you from seeing Brahm.

As per Advaita Vedanta, reality is mostly a mental construct ( idealism) and so called matter you see around is nothing but energy (concsiousness) fields coming together to form matter. By Jnana,Bhakti,Karma or Raja Yoga, one can reach Brahm or the absolute.

Thus Advaita Vedanta, only recognizes the reality of Brahm ( at least in the Ultimate Reality sense [ Paramarthika world]). In Transactional world (Vyavaharika loka), we are deluded in believing that there is pluralism and it is the result of the Maya.







Thursday, September 15, 2016

What Leibniz has to "offer" to Modern day Software Engineers?

The Legendary German Philosopher and Mathematician Gottfried Wilhem von Leibniz  was trying to solve a metaphysical problem which vexed theologians world wide. Rather than trying to explain the nuances of the problem, the problem can be summed up in  a sentence which goes like, "If God is powerful and nice, why the world he has created contains so much evil, violence and all sorts of none sense".

The solution devised by Leibniz was novel, it can also be summed  by in the following words, "The God is still powerful and nice. When he tried to pack only good things into the world, he could not fit everything correctly.he was forced to insert an opposing force to balance out the imbalance created by one force. In fact, he created the best of the possible worlds!"


In most software engineering organizations when a new person is inducted or a new set of people are inducted, the new comers too often feel that the incumbents has made a mess of the whole affair. It should have been written in another way. This creates a political situation where the stakeholder has to protect his assets and at the same time, enthuse the new comer to do his job.


A plausible answer from the stakeholder could be, "There can be blemishes in the state of affairs. It is a product of the evolution of the way organization has evolved. You are seeing only a snapshot here and cannot judge the incumbent team based on a static analysis at a point in time. It is the best of the possible solution which as a team could engineer"

It is better for new comers to remeber the dictum from Leibniz, "It is the best of the possible world as a team we have created". This kind of thinking can transform a new comer into a enthusiast (from a skeptic).

Even though Voltaire satirized Leibniz for his remark by creating a character Dr. PanGloss, for the modern day software engineer, it can serve as a good food for thought.

Tuesday, February 9, 2016

An Instance of a Logical Fallacy

I collaborate with different individuals on multiple disciplines. Often, I propose my collaborators to venture into areas which I have got only cursory familiarity. We work with things which are fundamental in nature.  Direct "monetization" of things which I am interested in collaborating is difficult. and it is by choice. It often servers a mechanism for food for thought. Of course, It does posses some "intrinsic" value.


Couple of weeks back, while travelling to Bangalore, I happen to buy a book titled, "Rookie Smart", written by Liz Wiseman. The central thesis of this book is, most often, Experts are at a disadvantage against "Rookies", in modern day work place. She has clustered  Rookies with similar traits to "BackPacker","Hunter-Gather", "FireWalker" and "Pioneer" etc.

After doing some reading, I loaned this book to a collaborator of mine. After a day, he phoned me and asked a question which went as  follows, "If Rookies can beat an expert in most areas, what is the point of learning deep topics?". I was bit taken aback, after getting this response. . After a while, I did understand that, he has fallen victim to the logical fallacy monikered as "Affirming the consequent".


The fallacy goes as follows

A => B. B has happened, therefore A. ( If A, then B. B , Therefore A)

The book is about how a rookie can upstage an expert,in some areas. It is not about, experts are upstaged by rookies, everywhere. So, book never implies that there is no point in become an expert at something. A naive analysis will lead to some kind of "Nihilistic" view that, It is futile to gain deep expertise in anything.


Sunday, February 7, 2016

Do you posses the temperament of a "Software Architect"?

Being a person who has got exposure to "mundane" Business Application development to Computer Aided Design (CAD) applications, I have considered myself to be  "lucky" to have got such kind of exposure. Good Technical exposure coupled with propensity to understand the business and people issues pertinent to the context, has given me success of some kind.

As I progressed in the Software Industry, people began to confer titles like Technical architect, Software Architect, Solutions Architect, Principal Consultant etc. I had considered these things only as a title given by the employers to reflect the compensation package I was offered. In the last few years, I have noticed that, these titles really does matter in the organization "pecking" order. The question which are often tossed across to me is, "How can one become an architect?" or "What it takes to be a Software architect?". I have not been able to give an answer to them, which have satisfied me. A definitive answer is also out of question.

A recent operational definition given me in a presentation slide went as follows.

Architect (n) –Any person who has “fooled” around in the Software Industry for sizeable time (ever shrinking span) who is past his prime,as a Programmer Or Engineer,Systematically moved up in the hierarchy to obey “Peter Principle”.

Sarcasm aside, I will try to give some case based reasoning. The following paragraphs has got certain bias towards enterprise application architecture.

For most of the evolved domains, there are standard idioms and practices which drive the whole state of affairs there. As a result of this, most people fall into the mundane and time tested work habits and end-up doing the same thing, multiple times over. Enterprise Application development is an area where time tested patterns are well known among it's practitioners and well documented as well. Standard terms like N-tier architecture, Separation of Concerns, View/Biz/Persistence Layer,Stateless Programming model, Asynchronous messaging, Resource tier integration, Horizontal scaling, distributed architecture, SOA, Model View Contoler  Architecture, MVP, MVVM etc. are tossed in most discussions about Enterprise Application architecture.

Most of the architects have "devoured" books written around Enterprise Application concerns. Some of the most studed are POEAA (Martin Fowler), POSA (Douglas Schmidt et al), EIP (Greg/Boby), GOF(Erich Gamma), DDD (Evans),PPP(Robert Martin) etc. Even though, the above books from the Industry thought leaders have helped us to have a "de-facto" lingo to communicate, often, trying to stick with the generic advice has led to lot of accidental complexity getting induced into the systems designed to blindly follow these thought leaders. A kind of "Cargo cult" Architecture.

IMHO, any Software Architecture/Design problem should understand the context and goals of the Solution. The Most important one are

  • The Solution should be Simple, to the extent possible
  • The Solution  should incorporate Functional requirements
  • The Solution  should meet Non-Functional requirements
  • The Solution should be able to incorporate change
  • The Solution should follow well known practices and idioms 
As an architect, or being part of the group, the goal of architecture seems to be finding the sweet spot between these competing necessities. The context is the single biggest factor in the success of an architectural initiative. An Architect has to balance the priorities of Stakeholders, Peers, Team members, Technology SMEs , while designing the solution. An effective leadership style is also necessary to successfully come up with systems which can withstand the test of the time.

To be a good architect, one requires

  • Good Technical skills ( Exposure to varied systems)
  • Good Business acumen
  • Reasonably good inter personal skills
  • Knowledge of Good Architecture Stlyes and Idioms
  • Domain Knowledge
  • A "Rookie" mindset
Moreover, he needs to have an excellent team to back his effort!



Saturday, January 30, 2016

Prime Obsession of the World?

Over a period of time , I have observed a curious phenomena, which I have also been a victim. It is search for an alternate career, most often, with things which are not connected to your professed area of competence. In the quest to make a living, we all choose something which Is feasible and the most visible things which are in vogue, around early twenties. The tyranny of beginners luck will take us towards some kind of "Joy" ride in our chosen area. Soon, some tag or moniker will be attached to you, as a Software Guy,Accountant,Artist, Carpenter, Lawyer etc.

Like any other things in life, monotony of job, creeps in to our life. Then, a quest to come out or escape from the misery of boredom triggers in, as a natural reaction. Then, series of actions which are close to rituals will be undertaken by the subject. Software Engineer will try to become a Musician, Lawyer will try to become a Singer, Carpenter will try to become a Philosopher etc. At least, everyone will indulge in things which are disconnected from their prime area of focus. Like every Indian who used to dream about Playing for India in Cricket, the day he got a cricket bat or ball, they show unusual enthusiasm towards their "alternate" career option. Here also, beginners luck will be them. Because of reality show and self "publishing" through Social media, some progress will be made. Soon the "boredom" due to the lack of immediate success, creeps in here as well.

Like the quintessential dream of "I will retire around fourty", it is seldom achieved. The Sunk cost fallacy creeps in here and soon the quest for alternate career, turns into some kind of Ritual. Of course,most often Rituals are as important as the functional side of our Acts.

Watching Dubbed Movies

One of my favorite pastimes now a days is to watch South Indian movies which are dubbed to Hindi. The other day, I happen to watch the movie "Kanchana" starring Raghav Lawrence and Sarath Kumar. I have seen the movie(in Tamil) at least five times while travelling to Bangalore,. I can understand Hindi better than Tamil and some of the dialogues made more sense, when I heard it in Hindi.

The movies which star Balakrishna (aka Balayya) is a fascinating treat to watch. My elder son too likes Balayya movies where train will stop or chair will move, if he points finger at it. Even though superficial, it is fun to watch. My son even  says that, among his class mates. Balayya is the most rated!

I did see Mommootty's Pramani and Mohan lal's Chitram, as well. Translation quality is excellent. In the year 2012, a colleague of mine told that, when people in his town are bored, they say, "Chalo, Jakke South ke ek movie dekhenge" (चलो  जाक्के एक साउथ के मूवी देखेंगे ). These Movies has got power to unite India.



Friday, January 29, 2016

Why meditation works?

I am a skeptic when it comes to mediation. There is no causal relationship between mediation and it's supposedly good side effects. But, it works for most people. I have always been perplexed about this.

Taking time off to meditate means you have got time to spare. When u meditate, you are focused on doing it. In the process, we take some time off from the triviality of everyday-ness. It slows down the pace of our life. It has got a serendipitous effect of taking a step back to view options.

In effect, mediation can be considered as a form of self deception. Self deception is a tool which helps us to be sane, in times of adversity. Take a look at our life. All the synchronicity we see are some kind of delusion. It is just series of random events happening asynchronously.

In Life, at a human scale, everything we do, even sitting idle, has got a positive consequence to narrate, at some point in life. If you feel or think that something is the cause of your well being, you can deceive yourself by thinking that it is useful. It is all about internal consistency.

Even terrorists think that, they are doing good to the world, by killing all evil atheists, dis-believers, corrupt people etc. It is also another way to look at the world. Meditation has got a soothing effect and it seems to be an effective way to ward off pressure for some. I am sure that, it is some kind of self deception. Does it work for you? Perhaps yes!