The Rise of Computer Science in K-12 Education
Computer Science education is expanding in the United States and around the globe as more education systems recognize Computer Science as a fundamental, 21st century skill. Approximately 65% of students will work in jobs that do not yet exist1. Learning Computer Science is an effective way2 to prepare students for the jobs of today and tomorrow.
Using VEXcode VR to Teach Computer Science
The need to motivate and attract more students, especially students from underrepresented populations, has led to the development of many3 rich4 programming5 environments. These visual programming environments are intended to be interactive and also teach students fundamental computer science skills, such as algorithms, variables, and abstraction. Many different programming environments exist and research6 has shown them to be successful at teaching computer science and STEM. Research also tells us that there are specific elements7 that lead to the success of these interactive, visual environments. These elements have all been applied to the development of VEXcode VR.
First, VEXcode VR uses programming as a puzzle-piece8 metaphor that provides cues to the user about how and where commands can be used. This eliminates the syntax errors that are common to many other programming languages and environments.
VEXcode VR encourages students to experiment and tinker9 with their programs, all leading to higher engagement -- in the first 5 months of VEXcode VR’s release, there have been over 10 million projects run. Other advantages to VEXcode VR include having the ability to quickly run projects, see the result, edit the project, and run it again. Having this tight feedback loop10 has been shown to be an effective way to teach Computer Science.
Effective Curriculum - VEX’s Computer Science Fundamentals Course
VEX’s Computer Science Fundamentals is a curriculum that anyone can teach and everyone can learn. Designed for students of different interests and experience levels, students learn core computer science concepts as they code the VR Robot. Lessons and units in Computer Science Fundamentals are designed to allow students to work independently through each lesson - allowing it to be implemented in multiple ways (e.g. blended, synchronous, asynchronous).
Lessons are introduced with the learning objectives and the establishing of a shared goal. This shared goal is established with an introductory video at the beginning of each unit. This video sets up topic areas, tasks, and task contexts that puts teachers and students “on the same page.” Research11 tells us that ensuring that students and teachers share this similar focus is an important part of teaching and learning. Furthermore, this approach centers the lesson around student construction12 of a solution to the problem. In Computer Science Fundamentals the emphasis is on students thinking conceptually instead of just “guessing and checking” their way to an answer.
Direct instruction13 then helps students to get started by providing step-by-step directions on how to approach the lessons within each unit. This careful sequencing of learning14 emphasizes understanding, instead of superficially covering multiple topics.
The rest of the lesson structure uses a partial scaffolding approach15 to assist learners in constructing a solution to the unit coding challenge. The previously applied direct instruction foregrounds all of the skills and concepts needed to solve the unit coding challenge. For example, each lesson contains high-quality code examples for the students to use, study, and modify. With the unit coding challenge, teachers have the opportunity to see how well students can apply what they have learned throughout each lesson.
Formative assessment is built into each lesson and unit, providing both student and teacher with an opportunity to check students’ understanding and identify learning needs, allowing educators to adjust teaching appropriately. Formative assessment provides teachers with the means and the opportunity to acquire the right type of information needed to guide their instruction, thus leading to higher learning outcomes16. Additionally, teachers using formative assessment are better prepared to meet diverse students’ needs – thus helping to achieve17 a greater equity of student outcomes.
VEXcode VR and VEX’s Computer Science Fundamentals course are designed to provide Computer Science classrooms with a connected strand of resources designed to support all students and classrooms. Moreover, the connection between Computer Science and robotics is clear; students have the ability to program their robots to perform complex tasks. While the performance of complex tasks may be the end, the means involve decomposing these tasks into smaller parts and then iteratively building them together to create a solution -- all cornerstone parts of Computer Science and Computational Thinking.
Educational Terms Discussed in the Article
Direct Instruction - teaching approach in which material is structured, sequenced, and led by a teacher. Further reading can be found here.
Scaffolding - instructional techniques that are used to move students progressively to a stronger understanding of an instructional concept. Further reading can be found here.
Formative Assessment - the practice of monitoring student learning and providing ongoing feedback to students that can then be used to improve student learning. Further reading can be found here.