Programs are getting too complex for humans to understand
We need more powerful tools to manage the complexity
You are the tool. We are the tools. Our job as programmers is to "manage complexity". To take a complex problem and mangle it away into a layer of abstraction so that we can comfortably work with it. Of course, some programmers take that too far and make 50 gazillion layers that shouldn't be there, but that's a different discussion entirely.