There has been much recent talk about the near future of code writing itself with the help of trained neural networks but outside of some limited use cases, that reality is still quite some time away—at least for ordinary development efforts.
Although auto-code generation is not a new concept, it has been getting fresh attention due to better capabilities and ease of use in neural network frameworks. But just as in other areas where AI is touted as being the near-term automation savior, the hype does not match the technological complexity need to make it reality. Well, at least not yet.
Just in the last few weeks Google, Microsoft and IBM have announced new ways of boosting developer productivity with deep learning frameworks that fill themselves in—at least in part. The headlines exclaim that code is writing itself; that programmers will no longer be necessary. In reality, however, what all of these auto-generation code efforts share in common, aside from the developer productivity angle, is that the use cases are still limited. The amount of code may required may not be ample enough, the neural network may still require a great deal of expertise in how to construct new layers, or the data to inform auto-network creation is scattered across too formats.
Microsoft Research raised red flags about developer automation recently with its announcement of DeepCoder, a neural network that learns to predict properties of a program by inputs and outputs derived from a broad range of sources of code. This led to reported faster code generation and higher levels of difficulty according to various programming competition problems. Another effort in the same vein from IBM Research scanned thousands of peer reviewed papers for code, framework, and library details to help developers bootstrap neural network model generation.