I like Rod Martens's take on it:
I remember worrying about 4GL removing the need for programmers in the late 80s when I was starting out.
My dad, who is an Electrical Engineer, told me about the first new invention he heard about that was supposed to do away with the need for programmers.
It was called "Assembly Language". So much easier than raw machine code.
I think the reason there will always be programmers is that while our tools will always make it easier to accomplish our tasks, our needs will never decrease in complexity.