Teaching Programming and Language Concepts Using LEGOs® (Case Study 4)
An Engaging Way to Introduce Computing
The method has two main learning outcomes:
Language Specification – The goal of the assignment is to be able to build LEGO® creations on a standard grid base plate. To build a creation brick by brick, it is necessary to specify the type of brick, its color, and its location on the base plate. The combination of colors and positions indicates a specific action. Students learn to develop and state a set of sequenced instructions, a critical skill for programming.
Bridge to Other Abstract Concepts – This teaching method has been used to teach a variety of topics to different audiences, including freshman CS majors, K-12 students, and K-12 teachers. In each group the use of the language provides opportunities to discuss more abstract concepts, including CPU Simulation, Writing and Testing Programs, and Extending the Programming Language.
Informal assessment of these exercises has been positive. Participants enjoy working with LEGOs® as a means of exploring programming and processing concepts. In one case, 100% of the freshmen taking an introductory computer science course were engaged in the exercise: an unprecedented event, according to the instructor. In fact, 75% of participants volunteered positive comments about the LEGO® exercise in end-of-semester course evaluations. Currently, the exploration of partnerships with assessment specialists to help develop quantitative aptitude progress methods is underway.
The use of LEGOs® may “level the playing field.” Students both with and without computer programming experience struggle with the assignment. When told that they have learned a central concept of computer programming, inexperienced students feel both successful and confident, in spite of not using the computer to “program.” Because the LEGO® approach does not directly involve technology that can be seen as intimidating to students, this approach shows promise for increasing participation of diverse audiences.
Implementing this program is strikingly simple because it only requires LEGO® pieces and a basic understanding of how LEGOs® fit together. A base plate and different-shaped LEGO® blocks are easily acquired and a single base plate is sufficient for each participating student or team. Clear language specifications for each type and combination of LEGOs® should be established prior to the onset of the exercise to avoid confusion later; however, a knowledgeable instructor or moderator can quite easily provide some instruction and guidance for each exercise to each participating group.
- Computer Science Teachers Association Resource Site: http://csta.acm.org/Resources/Resources.html
- Cynthia Hood and Dennis Hood, “Teaching Programming and Language Concepts Using LEGOs®.” Proceedings of the 10th Annual SIGCSE Conference on Innovation and Technology in Computer Science Education, 2005. Available from the ACM Digital Library.
- The Educator’s Reference Desk Lesson Plans in Computer Science: http://www.eduref.org/cgi-bin/lessons.cgi/Computer_Science
- For free offline activities for teaching computing concepts, try “Computer Science Unplugged,” located at: http://unplugged.com
View related research:
View related case studies: