This paper presents an educational experience carried out in robotics undergraduate courses from two
different degrees: Computer Science and Industrial Engineering, having students with diverse
capabilities and motivations. The experience compares two learning strategies for the practical
lessons of such courses: one relies on code snippets in Matlab to cope with typical robotic problems
like robot motion, localization, and mapping, while the second strategy opts for using the ROS
framework for the development of algorithms facing a competitive challenge, e.g. exploration
algorithms. The obtained students’ opinions were instructive, reporting, for example, that although they
consider harder to master ROS when compared to Matlab, it might be more useful in their (robotic
related) professional careers, which enhanced their disposition to study it. They also considered that
the challenge-exercises, in addition to motivate them, helped to develop their skills as engineers to a
greater extent than the skeleton-code based ones. These and other conclusions will be useful in
posterior courses to boost the interest and motivation of the students.