As dependence on software increases and penetrates every area of modern life, so is the importance of ensuring that software is written in a way that makes it easy to maintain and adapt, while being reliable and efficient.
We address this challenge via a novel “Big Data’’ approach. Here, we automatically learn from millions of available software programs (publicly, or in a company setting), and use this knowledge to make key suggestions on how to construct, change or modify new programs.
Our data-driven technology means that software is no longer developed “from scratch’’ — DeepCode enables developers to “tap into’’ and benefit from the massive effort already spent in creating existing open source software, thus greatly increasing overall software quality.
Our technology differs from existing solutions as we require no user annotation or specification of any kind, is completely automated and can learn from software developed in any programming language.