How can we develop computer science skills at the elementary level?
We provide deliberate vertically aligned methodologies, as a pathway for preparing students to enter the middle level years with confidence in computer science digital literacy. We do this with a multifaceted approach that exposes students to many physical and software-based coding platforms. Much like a developer, our students are versed in many forms of code programming.
Students in K-1 are focussed in the basics of block and physical coding. Unit plans are assigned to emulate basic directional cues and encouraged to use the language that is important in communication. Students must show mastery in describing steps in a process and using computer science academic language.
Students in grades 1-2 approach the same concepts, but dive deeper into the language. For example, when using programs like lightbot or Scratch jr., students can use language to explain loops, algorithms, sequences, and memory management. Students begin more advanced coding lessons with output devices such as Sphero.edu platform, Dash Dot, and Little Bit robotics in these grade levels. Software is used as a tool to teach concepts in basic animations, events, loops, and input/output relationships.
Students in all grade levels use CodeSpark Academy at differing lengths of time in their unit plans to understand concepts that include boolean logic, loops, memory management, events, and sequences. Students in 3rd and 4th grade are pushed to use other platforms including code.org, Swift Playgrounds, and Scratch. The goal for 3rd and 4th grade is to be able to code on different devices including Android os, ios, and Chrome os. Students begin taking their skills in block code and translating them to text-based code. Plugins from third party apps that include Sphero and Dash Dot for Swift Playgrounds are utilized. Student also begin using external USB powered devices like Makey Makey to control the programs that they have created.
All students are also encouraged to engage in and practice “unplugged” lessons, and create basic understanding of binary code as a result. It is a weighted decision to promote technology as a tool and not a necessity.