It's hard to argue with the importance of teaching students how to use computers -- how to turn on, log on, search the Web, and use applications. These skills are absolutely necessary for students' academic success as well as for their future job prospects.
Being able to use the Internet and operate computers is one thing, but it may be just as valuable to teach students how to code. Giving students an introduction to programming helps peel back the layers of what happens inside computers and how computers communicate with one another online. Programming knowledge, even at a very basic level, makes technology seem less magical and more manageable. Programming also teaches other important skills, including math and logic.
Many students don't have access to computer science courses until college, and that's a missed opportunity to introduce younger students to programming. There are many tools out there that provide a great introduction to computer science for K-12 students, but here are a few of our favorites.
Developed by the MIT Media Lab, Scratch is a visual programming language for children age 6 and up. Since its release in 2007, over 800,000 users have joined the Scratch website and have shared over 1.7 million projects -- from games to animations. That sharing aspect is an important part of the Scratch community, so the projects that are uploaded to the site are licensed under the Creative Commons attribute and share alike license so that others can download and remix them. Scratch is available free of charge and runs on Mac, Windows, and Linux computers.