Learning How to Code

Unlocking the Mysteries of Code provides K-12 educators with a practical and hands-on introduction to coding.  Step-by-step projects will guide educators through the coding process to build their confidence and expertise to impart these skills to their students. By completing this course, classroom teachers will understand how coding can develop their students' skills in 21st-century applications, academics, and computational thinking.  Prior coding experience is not required!

Course Name: Unlocking the Mysteries of Code

Course Number: EDUC 718E

Semester Credits: 3

Course Description

Unlocking the Mysteries of Code is an introductory course for teachers who want to learn more about coding. At the end of this course, you will have the tools to guide your students as they learn to code, and you will be able to understand and provide a rationale for why students need to learn to code. This course will provide easy-to-follow instructions for creating projects that will build teacher confidence and expertise that can be passed along to their students. After creating the first project, it will be the start of your enthusiasm for learning to code. Even though students may surpass teachers in their understanding of code, teachers taking this course will unlock the mysteries of code and have more tools to teach students persistence, focus, organization, problem-solving, and computational thinking.

As classroom teachers, it is essential to help students learn to code because it will help them develop 21-century, academic, and real-life skills. Hands-on learning experiences with detailed instructions will make this course fun and practical using Scratch, a free online web-based program.


  • Explain the conception of "computational participation" and focus on wider social networks and the DIY culture of digital "making" by answering questions based on information in the text.
  • Reflect on the comeback of coding, connected learning, moving from code to applications, moving from tools to communities, moving from screens to tangibles, connected teaching, and coding for all by answering questions based on information within the text.
  • Provide a rationale for why children need to learn programming/coding, how it should be taught, and how teaching methods need to adapt to the 21-century by answering questions based on information in the text.
  • Grow in their confidence and expertise in coding to help students improve their academic and life skills in their classroom.
  • Develop their students' academic skills, problem-solving and logic skills, executive functioning, and other 21-century skills.
  • Communicate to their students the importance of planning and sketching out a design before starting a project to develop their organizational skills.
  • Help students begin to visualize abstract concepts and apply coding to math and real-world situations.
  • Instruct and demonstrate to students how coding relates to real-life decisions—the If-Then code block (if you choose to do this, then this will happen).
  • Teach students the value of concision and planning when they code, which will help them have better writing and storytelling skills.
  • Guide students in decision-making to improve their critical thinking skills.
  • Understand the challenges that students face when coding. With more advanced challenges, teachers can assist students in developing better focus and grit to have greater success in learning a new skill.
  • Be supportive of students when they become frustrated when writing more difficult programs. They can help their students understand that experimenting and being creative will give them the perseverance they need to help them work through any challenges they are facing, not only in programming but also in their everyday lives.
  • Explain why computer programs should be written with a purpose in mind, why it should be a collaborative activity, and how computer programming should be an integral part of the curriculum based on information within the text.
  • Demonstrate proficiency in basic code blocks, programming several sprites working together, changing coordinates, implementing realistic gravity, adding animations and sound effects, using the cloning feature, and adding mouse and keyboard.

Course Contents

  • The comeback of coding
  • Connected learning
  • From code to applications
  • From tools to communities
  • From Scratch to Remix
  • From screens to tangibles
  • Connected teaching
  • Coding for all
  • Scratch's programming environment with the different parts of the Scratch editor
  • Basic code blocks and programming several sprites working together
  • Changing coordinates
  • Implementing realistic gravity
  • Animations, sound effects, and more
  • Scratch's sprite cloning feature
  • Adding mouse and keyboard controls

 Evidence of Learning Outcomes

Upon completing Unlocking the Mysteries of Code, students will understand ideas and concepts that address computational participation. This includes why children need to learn programming, why computer programs should be written with a purpose in mind, why it should be a collaborative activity, and how computer programming should be an integral part of the curriculum. Upon completion of this course, students will have also demonstrated proficiency in coding by completing hands-on projects.

How to Register

Unlocking the Mysteries of Code can be completed in either an online or via emailed PDF format. It is open for anyone to register at any time during an open semester. After completion, students receive graduate, non-degree semester credit on official transcripts from the University of La Verne, an accredited university in La Verne, California. 

Registration is fast and straightforward and can be done online or over the phone. Courses are offered on a rolling basis during three standard semesters, and you can begin whenever you are ready! The registration dates are:

  • Fall: September 1 - January 31
  • Spring: February 1 - May 31
  • Summer: June 1 - August 31

Refer to a Friend


Newsletter Sign Up

Sign up to receive announcements, updates and reminders!