Resumen: [EN] The acquisition of programming and data analysis skills in higher education is increa-singly necessary in all areas of Science and Engineering. In this paper we present a methodology for the motivation of programming learning, mainly focused on the deve-lopment of machine learning algorithms. This methodology is based on the hackathon idea and will have different levels. On the one hand the basic level where a competition is proposed in an improvised way during the development of the class. A second level where a programmed hackathon is proposed but within the classroom environment and using learning management systems such as Moodle. The last level consists of parti-cipation in an external hackathon and the delivery of a report. These levels have been adapted and tested in several undergraduate and master’s degree courses at the Uni-versity of Valencia. We include detailed information on how the methodology has been adapted to the teaching needs of the subject and we conducted anonymized surveys to students to know their degree of satisfaction. These surveys reveal a positive assessment of the experience by the students and include constructive comments for improvement in future editions.[ES] Se presenta una metodología para la motivación del aprendizaje de programación, principalmente enfocada al desarrollo de algoritmos de machine learning. Esta metodología está basada en la idea de hackathon o datathon y tendrá distintos niveles. Por un lado el nivel básico donde se plantea una competición de forma improvisada durante el desarrollo de la clase. Este nivel se puede utilizar para motivar, la evaluación tiene que restringirse a la mera participación. Un segundo nivel donde se plantea un hackathon programado pero dentro del entorno de la clase y utilizando sistemas de gestión de aprendizaje tipo Moodle. Este nivel se puede utilizar para evaluación tanto durante la clase como para un examen. El último nivel consiste en la participación en un hackathon externo y la entrega de un informe. Esta metodología puede servir para la evaluación de una tarea de clase y fomentar el trabajo en equipo. Además plantea un problema real en un entorno semi-profesional.