Rethinking Software Systems: A friendly introduction to Behavioral Programming by Michael Bar Sinai