According to a recent study by Code.org, the vast majority of schools in the US do not provide a rigorous computer science curriculum (http://code.org/promote/ks). One skill that is critically ignored in schools is the actual coding of computers, with many computer science skills focusing instead on office skills like using Microsoft Word and Powerpoint. In fact, 90% of American schools don’t even discuss computer programming!
While office skills are necessary, this neglect is a dangerous position for America’s students to be in. According to a recent poll by the US Department of Labor, computer science is one of the most rapidly growing job areas of the last decade, with well over 500,000 new job openings anticipated in the next ten years (http://www.bls.gov/ooh/computer-and-information-technology/home.html). On top of this statistic, almost every job in America, even previously blue-collar jobs like manufacturing or auto repair, now requires some ability to handle and navigate computer programs. Without these skills, students are leaving the educational system woefully unprepared to fill that need.
Unfortunately, another thing that schools have been lacking is a supply of skilled teachers with experience in computer programming. Most people with experience in computer programming opt for the business sector, rather than bringing their skills into education to teach new coders. As a result, many of the computer science classes in the US are hampered by being led by a teacher who (through no fault of their own) has little more experience in programming than their students. This results in computer science classes that don’t cover the new computer skills modern students desperately need.
So what’s to be done? The most helpful step would be for teachers to start building their programming class, by finding materials that can also help them learn programming. Since many teachers don’t have time for a new college course, what they need now are resources to help them learn at home or on their own. Here at Teq, we’ve compiled a short list of handy resources that can help teachers learn code, and learn how to teach code:
CodeAcademy is one of the most widely touted online courses for computer programming on the Internet, and for good reason. Signing up for a free account provides teachers and students alike with a wide variety of customized courses. Whether your desire is to learn job-specific skills such as website building, or to start from scratch with a brand-new coding language, CodeAcademy’s lessons are built as simple, relatable walkthroughs, paired with equally simple practice activities. CodeAcademy users can develop their knowledge of basic principles without clutter and are able to see the symbols used in each line of code for quick translation.
I’m currently running through the Python course on my account, and personally love the friendly feel and the immediate view of the code. Without all the extra visual bells and whistles other sites tout, users can focus tightly and directly on the syntax and vocabulary of programming. For the entire course, you’ll see a screen very similar to the one below:
Initially, the workspace looks rather blank. However, this simplicity can be helpful in turning the website into a classroom tool. As users progress rapidly through the lessons and activities, that space will fill with lines of code that they can proudly say they built all on their own! As they progress, they can collect badges and complete courses, which a teacher can also find to be handy for tracking progress when using CodeAcademy in their school. As a result, we’d recommend this source for teachers and students alike, allowing the teachers to translate their own learning experiences into classroom curriculum.
Tynker is unique in that it’s designed to be directly integrated into a classroom. Teachers can sign into a separate version of the website that allows them to create and manage classrooms for students, as well as work with lesson plans involving the website. Parents can also log into Tynker, share coding progress and check on their child’s progress as they learn.
(Of course, having these log-ins doesn’t prevent teachers or parents from logging in as students too. If the kids can learn coding here, why can’t you?)
While the highly visual format doesn’t address many of the language details of coding, a website like Tynker is a good place for teachers to begin teaching critical thinking skills such as logic, organization, and the ability engage in trial and error. The website is fun and colorful, and allows students to let their creative flag fly in every lesson! I ran through a few lessons while in student mode, and found the blocks and step-by-step instructions on how to use them to be easy and intuitive.
The website comes with a limited set of free lesson plans, with additional modules available for purchase. While this may initially put some schools off, we’ve found the website’s pricing to be extremely reasonable, especially given the fact that once a teacher’s account purchases a module, it has that module forever.
(A side note: Both Codeacademy and Tynker have free apps available through the iTunes, where students can carry their work over from platform to platform using their login information.)
The previous resources are great both for students, and for the teachers who have to use them to learn coding before teaching it. As the teachers grow more advanced, however, they can move beyond these sites and engage in other avenues for more programming knowledge.
One amazing recent resource is available on the MIT website, which has made many of their computer science syllabi and coursework now available for free. While much of this coursework is more advanced than high school level coding, it’s a great standby for teachers to help educate themselves. Other available courses, such as artificial intelligence, can provide perspective for more advanced students. I’ve linked one of the most helpful sets of courses below, for those of you who are eager to get started.
Harvard’s Extension School is another great example of free college-level materials. Unlike the MIT resource, this course includes lecture videos and audio, rather than textbooks and assignment texts. As a result, teachers can mix and match for their own computing needs and learning styles.
Finally, getting involved in the wider educational community can be important for teachers struggling to create a strong computer science class.
The Hour of Code (http://hourofcode.com/us) is a national movement encouraging teachers, students, and parents to get an early start in computer coding. The website provides a way for teachers to sign up and join in the event, as well as materials for anyone who signs up to create an event at their school. The website is linked to Code.org, which helps promote the event nationwide.
Code.org provides a social aspect to coding, often focusing on connecting computer programming to real-world concepts students already know and love. The website itself provides a quickly-changing set of logic puzzles and coding activities, often centered around popular games or pieces of pop culture. In the last couple of week’s I’ve seen Frozen coding projects, miniature games of Angry Birds, and many more, all ready for the creating.
These activities are designed to be used along with the Hour of Code, as pre-made content for any teacher looking to help their class join in. The website’s code studio also provides tons of access to these kinds of puzzles for free, without requiring teacher or student logins. I especially like the Plants Vs. Zombies coding puzzles; follow the link below to give them a try!