Breaking stuff apart

Abstraction is huge in software because it allows us to separate concerns and understand more complex systems.

Turns out it’s useful in life too. People can’t distinguish randomness from skill, for instance, in poker[1]. Breaking those two causations apart is a process of abstraction that doesn’t come naturally to us.

Relationships are complicated, and our emotions get jumbled up. Breaking those down into constituent parts can help us understand ourselves and make better decisions. For instance, perhaps I can break this love down into acceptance, desire, respect, and dependency. Then when dependency and respect break down, I can keep the acceptance, let go of the desire, and decline to continue negative interactions.

Yeah, I should come up with an easier example, but right now honesty is trumping simplicity.