Aprender a programar es una tarea compleja que requiere del desarrollo de diversas habilidades. Los estudiantes que se inician en la programación se encuentran con serias dificultadas en el aprendizaje de esta materia. Actualmente en los nuevos Grados se han introducido asignaturas relacionadas con las tecnologías de la información, en donde se realiza un primer contacto con la programación. En esta comunicación presentamos el trabajo realizado para el desarrollo de una metodología docente para la enseñanza de programación, basada en el uso de metodologías activas y el empleo de gamificación para incentivar la participación del alumnado y aumentar su motivación. Comentamos la implantación de esta metodología en un curso de iniciación a la programación del Grado en Ingeniería Informática y exponemos los resultados obtenidos.Learning programming is a complex task that requires the development of various skills. Students who are new to programming encounter serious difficulties in learning the subject. Nowadays degrees in the new study system have introduced subjects related to information technology, where students make their first contact with programming. In this paper we present the work done to develop a methodology for teaching programming based on the use of active methodologies and gamification, to encourage student participation and increase motivation. We discuss the implementation of this methodology in an introductory course to programming in the Degree in Computer Science and present some results