I think the answer to software apocalipse is both:
- get better tools
- get better programmers
And in fact we have been doing it - the tools are so much better than they used to be and with tdd, refactoring, patternals and clean code we have been building increasingly complex software with less bugs.
Still a long way to go.