Experiences with the LEGO Mindstorms throughout the Undergraduate Computer Science Curriculum

The LEGO Mindstorms Robotics Invention Systems are contemporary learning tools that have been used in a number of courses throughout the undergraduate computer science curriculum. However, with a few exceptions, very little information is available describing the degree to which Mindstorms projects improved (or hindered) the learning process in these courses. This paper describes personal experiences and provides practical advice for successfully incorporating Mindstorms projects into an undergraduate computer science course, as well as highlighting the types of assignments that have not worked well. Specifically, the author has incorporated Mindstorms projects into five courses: Fundamental Concepts of Computer Science (a non-major Computer Science course), Programming I, Programming II, a general programming language practicum, and the survey of Programming Languages course. These courses will be summarized, and the paper will conclude with a general discussion of lessons learned about Mindstorms use in the classroom