Talk “Programming by Teaching”: Recent advances in machine learning and natural language processing open the door to new applications in many domains, including computer-assisted creativity. In this talk, we will review the various programming paradigms that have been used since the invention of computer. We show how it becomes possible for computers to learn and understand human language by reviewing the majors technical advances that are currently tackled by researcher: 1) grounding, i.e. the ability to refer to real objects in the world, 2) understanding explanations to learn with fewer data, and 3) generating explanations to better understand decisions made by the computer. Finally, a detailed overview of the recent advances in the statistical relational learning domain will be given.