Re: Who will program the software writer?
Have written several code generators myself over the years, and used some others, so the answer is obviously computer programmers. They are good for basic gruntwork such as database access code, initial user interface generation and very basic data validation (eg order must be between 0 and 1000 quid). After that, it's diminishing returns as the complexity of what you need to define for the generator approaches the complexity of just writing the complete code in the first place.
"But they point to recent Facebook research, saying it suggests machines may be able to negotiate with each other to communicate their requirements."
Not a chance until humans can manage this in an efficient, complete, consistent way too (Note : anybody using the letters UML in a reply here will be ignored). Again, you'll just come up against the complexity problem where the requirements definition becomes more complex that the syntax definition of the target language.