Good code and an ideal couple
I was with a good friend of mine at Matteo cafe Bangalore where we made this analogy between an ideal couple and good object oriented code.
Matteo Cafe, my fav place in bangalore
Loose coupling and high cohesion is a basic funda of Object Oriented Programming. ( Coupling is the degree to which each module relies on the other modules of the software. Cohesion is how strongly focused the responsibilites of the module are.). You want highly cohesive and loosely coupled modules. Otherwise it becomes very tough to maintain them or re-use them.
Similarly i feel that individuals in a relationship should be highly focused(cohesive) with their responsibilities and loosely coupled on carry them out. Dependancy on the other to carry out their own endeavours results in
- The other person eventually becomes tired catering to the dependant.
- makes you spend more than needed time with each other. Self driven individuals spend a considerable amount of time on their interests/passion and that time they spend away develops yearning for the other. Otherwise you feel you have had too much of the other person and you want some time alone.
Offlate i am noticing my friends wanting to go out with driven independant individuals and this blog post is a result of this change and me reading some design patterns.
Overall loosely coupled couples might work out better than highly coupled ones