While the proximal reasons may be technical, the systemic cause is our dual focuses on meeting demand no matter what and growth but not focusing on resilience. The result is that when demand is always met, we grow (population and consumption) until we hit problems like this. Then we build more capacity.
It costs a lot to go from 99.99% uptime to 99.999%, but we do it every time.
The savings to go from 99.99% uptime to 99.9% is also huge. Most of the world does fine with under 99% and we could too if we built our systems and lives to handle power going down sometimes, even unpredictably. Hospitals, elderly, etc would need special treatment. The rest of us could reduce our needs and learn from how people lived all the time for hundreds of thousands of years.
We'd save tons of money, live healthier, and pollute a lot less. We'd learn to treat nature with a bit more humility and respect.