An AI would know how to fill in the gaps when you said "Make me a blog page" or "Make this server scalable."
This may sound outrageous, but some very large percentage of coding practice is wheel reinvention. Developers the world over solve the same problems over and over again.
One of the first applications for useful AI will be to collect and automate that repetition.
There's already a "make me a blog" project, and Bootstrap is so cliched now I'm surprised there aren't more site builders being developed. So this isn't entirely impractical.
The hard part is the visual design. It's much harder to automate that in a way that includes some genuine original creativity.
Of course web apps != general scientific or business coding. So AI isn't a complete solution. But it doesn't need to be to be useful. (Domain specific, after all.)
You are right about humans knowing about domain knowledge, but you don't need human level AI to have computers writing software
Maybe future programmers will be more like spec writers than actual coders