The number and quality of coding sites are beginning to grow to meet the need to teach coding in the classroom. The focus in this unit are the FREE ones which just happen to be the gold standard when it comes to teaching coding.

Steps:

1. Begin by going to Code.org a non-profit dedicated to expanding access to computer science and increasing participation by women and underrepresented minorities. Their vision is that every student in every school should have the opportunity to learn computer science, just like biology, chemistry or algebra.

2. Watch the introduction video to learn more about code.org and coding.

3. Next, watch this video by MIT the inventors of Scratch another coding program which you will learn more about below. They point out that they teach students to code with a graphical interface that uses blocks that snap together like Lego bricks. 

4. When you begin coding, you will see that the free programs below all use a graphical interface with blocks to teach coding. 

5. Now you are ready to try out coding for yourself! 

6. Go to Learn on the Code website or use the shortcut https://studio.code.org/courses.

7. In the Studio, you will see three different pathways for students. If you have some basic skills in programming, you will want to go to any of the three pathways and choose a lesson. If you are a beginner, you will want to try one of the Hour of Code activities which will take just one hour.

8. Go to https://code.org/learn. Choose beginner and then an activity that sounds like fun to you. Frozen and Minecraft are two good ones to start with. You can watch a short video and then begin to drag and drop the prompts (blocks) to code and run the activity. The prompts allow you to turn left or right, and move backward or forwards. As you get into more advanced programming the prompts will be more complicated. 

In just one hour you will have completed a project and learned the basics of coding.

Anna and Elsa

As you can see in the Anna and Elsa example it starts out with moving forward by 100 pixels and turning right at 90 degrees. You can change the amount of both and see what happens!

When you are done writing your first line of code you may see something like this:  

  • moveForward(100); turnRight(90); moveForward(100); turnRight(90); moveForward(100); turnRight(90); moveForward(100); 
  • The code above makes Anna walk in a square

Your first lesson is going to be very basic, but know that what you have done is the same thing a programmer would have had to have done to prompt a game piece to move in a square. The commands are in drag and drop mode using blocks to teach you programming in Code.org, but the commands are the same that a programmer would use. 

9. There are several other FREE resources that can be very basic or advanced depending on what level you start out at. Go to the next section, expand it and learn about Scratch. 

Scratch was invented at MIT and is a free program that can be used on the Internet or download to use offline. With Scratch, you can program your own interactive stories, games, and animations and share your creations with others in the online community. Scratch helps young people learn to think creatively, reason systematically, and work collaboratively — essential skills for life in the 21st century. Scratch is a project of the Lifelong Kindergarten Group at the MIT Media Lab and it is provided free of charge.

10. Begin by watching this less than two-minute video and you will be programming immediately with Scratch. 

11. Go to the Scratch website. You may want to start with the online tutorial if you need more assistance after watching the introductory video. 

12. Create a login and password for Scratch. 

13. Go to Create on the Menu Bar. When the page opens, on the right you will see the Sprite and his actions once you begin programming him to do things. You drag the command blocks to program the Sprite. To see him begin to move, just click on the green flag. 

Scratch 3.0

14. Try out all the commands from Motion to More Blocks. Note the numbers in the blocks. These can be changed to the number of steps or degrees you would like the Sprite to move or do. You can also choose Costumes and Sounds. You can also change your Sprite from a cat to another character if you wish. Click on the icon next to New Sprite and a Sprite library will open with 100's of choices. 

Scratch motion

15. After you have played and have programmed the Sprite to do various things, go to the Activity Cards from MIT and choose one Activity Card to complete to share with your instructor. 

Scratch Cards

16. You will need to be logged in to see the Share button in the upper right-hand corner. Type in notes to explain how to use your project when prompted. Once you have clicked on the Share button, if you look at the URL, you will see that it has been assigned a number. You will share the Scratch project URL with your instructor. 

You have learned how to code using the two most popular coding programs for K-12 students. 

Next, you will want to learn about how to use them in your classroom with students. 

Move on to Teaching Strategies

Addressing the ISTE Standards For Educators


Leader
2c. Model for colleagues the identification, exploration, 
evaluation, curation and adoption of new digital resources and tools for learning.

Citizen
3b. Establish a learning culture that promotes curiosity and 
critical examination of online resources and fosters digital literacy and media fluency.
3c. Mentor students in safe, legal and ethical practices with digital tools and the protection of intellectual rights and property.

Designer
5a. Use technology to create, adapt and personalize learning experiences that foster independent learning and accommodate learner differences and needs.
5b. Design authentic learning activities that align with content area standards and use digital tools and resources to maximize active, deep learning.
5c. Explore and apply instructional design principles to create innovative digital learning environments that engage and support learning.

Facilitator
6a. Foster a culture where students take ownership of their learning goals and outcomes in both independent and group settings.
6b. Manage the use of technology and student learning strategies in digital platforms, virtual environments, hands-on makerspaces or in the field.
6c. Create learning opportunities that challenge students to use a design process and computational thinking to innovate and solve problems.
6d. Model and nurture creativity and creative expression to communicate ideas, knowledge or connections.