Neural Programmer-Interpreters
www-personal.umich.edu
www-personal.umich.edu
It is indeed a cool approach and no doubt deeply inspired. Rip apart the traditional program execution model and add statistical branching ...
A lot of my day to day consists of trying to understand what is meant to be built, finding out what the edge cases are or where the requirements break down, making sure that the proposed solutions have the scalability, performance or reliability properties that are required, making sure that the software will actually solve the customers problem, documenting proposed solutions as well as complete software. Testing and debugging. Basically, only a small amount of my time is actually spent writing code.
If we still have to formalise what we want, before the automated tool can create the software for us, then that formalisation is programming. Even if it will be higher level than what we have now.
Maybe eventually many or all of these will be automated, but I don't believe it will be "one of the first white collar jobs to be automated".