MILE is an e-learning tool that supports teaching, learning and student assessment within programming courses. It integrates three educational systems developed at the Department of Mathematics and Informatics, Faculty of Science, University of Novi Sad: Mag, Svetovid and Testovid. Mag is the tutoring system for learning programming languages. Svetovid is a system that helps instructors to leverage the effort of practical programming exercises and exams. Testovid is an automated testing system, designed for assessing students' solutions during practical programming exercises. In this paper the structure and functionalities of MILE are described and discussed.