Can a computer really be programmed to program itself? Silicon Valley certainly hopes so. What would it look like if they succeed?
Automating the “grunt work” of programming is nothing new: code generators have been around since the time of COBOL, and while they have become much more sophisticated, they still work in much the same way. In fact, from a certain perspective, the very idea of a high-level language such as COBOL, C++, or Java is to spare programmers the onerous task of hand-coding thousands of assembly language instructions for each simple task.
What Google, et al, are striving for is more advanced than this, however. They want to design an artificial intelligence algorithm that can, in turn, invent new types of learning algorithms. The original algorithm would be a factory of sorts, taking the programmer’s design specifications, and designing a specialized algorithm to implement them. It’s not quite the technological singularity, where machines have learned to design their own successors, but it would be a big step forward nonetheless.