One of the most pervasive and lazy ways to think about humans is that we're rational (homo economicus [0]), and any deviation from that is a personal failing. While some people have better impulse control than others, or have different weaknesses than a particular issue at hand, it's mostly a lack of self-awareness that prevents people from seeing that they too are driven by forces other than pure logic.
An ever so brief study of psychology shows this is a bad model to predict human behavior, and an even worse model to use when constructing and shaping our environment. It leads us to construct hostile environments and experiences where we always have to be on edge, and diminishes our humanity.
The usual retort to this is that hostile environments are a good way to teach us to be sharper, but that's just a lazy way of rationalizing the current situation [1], and represents a lack of understanding of how people learn.
If you want to teach people to be more rational you need to create environments where they are set up to succeed and make challenges within reach. In other words, it matters a lot the exact degree to which the environment is hostile or extractive (and to whom), and if you go over that, people are set up for failure.
[0] https://en.wikipedia.org/wiki/Homo_economicus
[1] which itself is an irrational bias toward maintaining status quo belief, because it requires less cognitive effort to unwind its knock-on effects