In the last few years the software engineering research community has proposed techniques and tools to automate several code-related tasks. For example, approaches to automatically write new code or fix bugs have been proposed. Among those, data-driven techniques are on the rise thanks to the always increasing amount of information available in open source projects and the possibility to learn coding patterns from it.
In this talk, I'll overview some of the work done in this area, focusing the attention on tasks such as source code generation/recommendation, code review automation, etc. The focus of the talk will not be on the proposed technical solutions, but rather on their evaluation, on the achieved results, and on discussing the extent to which the proposed approaches are actually able to support developers. This will lead to a discussion of the open challenges related to the automation of code-related tasks and a short summary of research directions we are currently investigating in my research group on this topic.