Abstract
Teaching of programming foundations has been subject of several investigations, because it is believed that the required activities can contribute to the development of students more able to solve problems and to adapt to any environment or situation. Some works have argued about the integration of Flipped Classroom and Problem-Based Learning in Computer Science courses to potentiate this kind of teaching, but fewer evidences that investigate the real application between these approaches were found. Thus, in order to enhance the Flipped Classroom in-class activities, this paper reports an experience to implement and apply Flipped Classroom and Problem-Based Learning approaches for a CS1 course. Additional concepts of programming contests, group formation and learning styles were also used. In general, the main findings suggest that the Flipped Classroom model, if well-planned and carefully designed, can benefit students. However, these initial benefits are more related to student's motivation and social behavior than those associated with grades and the effective learning. Results also indicate that PBL may be an adequate approach to enhance the face-to-face time in the inverted classroom.