The most obvious thing to do with computers in the early days of edtech was to program them using the BASIC language (Beginner’s All-purpose Symbolic Instruction Code) that was built into the machines. Students wrote code, the instructions for computers to follow. In the early days it was simple stuff, such as printing words or numbers on the screen. Miraculously, the computers performed.
10 PRINT “HELLO”
20 GOTO 10
Today coding is enjoying a comeback. Rather than typing, students use visually engaging characters and blocks of words. Both the graphics and the reasons for coding have grown up, and the purpose is clear. Hadi Partovi, founder of Code.org, says: “These days there’s no greater opportunity than to change the world with technology.”
Partovi thinks students should learn computer science, and he’s an advocate of even young students learning to code. “The easiest way to equalize your opportunity is to learn computer programming . . . the computer doesn’t care if you are black or white or a girl or boy or old or young—as long as you know how to speak the language of code, the computer will do what you want. And if you are good at it, you can make a lot of money.”
“The vast majority of students not only don’t study [computer science], they don’t get the opportunity to study it,” Partovi says on Code.org. “Out of 40,000 high schools in the country, only 2,000 offer the AP computer science exam. The number of full-time teachers teaching computer science is about 6,000 in the entire country, and the number of teachers and schools that offer computer science classes is declining, not growing.” Fewer college students are graduating with computer science degrees than 10 years ago. “These are all trends that are exactly in the opposite direction of what you’d expect for such a fast-growing industry that’s creating jobs at double the pace of the nation’s average.” He started Code.org to promote computer science in K–12.”
Students know how to use devices to communicate, play games, and do homework, research, and reports. That makes them expert users of technology, but the future will demand creators—those who know how to create apps, not just use them. Code.org quotes President Obama: “Learning these skills isn’t just important for your future, it’s important for your country’s future. Don’t just play on your phone, program it.”
Partovi says the jobs will be in technology because it affects every field—not just computers and smartphones but also medicine, energy, space research, entertainment, transportation, and more. Learning coding is the pathway to the best jobs in the country.
Derek Thompson, in the July/August 2015 Atlantic Monthly article, “A World Without Work,” analyzed the impact of automation on work: “Economists and technologists see automation high and low—robots in the operating room and behind the fast-food counter. They observe that the capabilities of machines—already formidable—continue to expand exponentially, while our own remain the same. Oxford researchers have forecast that machines might be able to do half of all US jobs within two decades.”
Contrary to this dire forecast is Partovi’s prediction that by 2020 there will be 1.4 million jobs that involve technology. Current estimates say there are only 400,000 computer science students. Schools aren’t teaching computer science, but the emphasis on Science, Technology, Engineering, and Mathematics (STEM) subjects and coding could change that.
Programming impacts more than students’ career prospects. Graduating enough skilled workers for technology-based jobs in many industries has an effect on US economic competitiveness. Megan Smith, the United States Chief Technology Officer, believes that the key to innovation is early STEM education. Speaking at the Washington Ideas Forum in October, she said that she wants every child to be able to code.
According to the Center for Computational Thinking at Carnegie Mellon, the home of the coding language Alice, “computational thinking is a way of solving problems, designing systems, and understanding human behavior that draws on concepts fundamental to computer science. To flourish in today’s world, computational thinking has to be a fundamental part of the way people think and understand the world.”
Teaching students to code fits the models of good pedagogy that include hands-on, project-based, constructivist, experiential, and discovery learning. It teaches students how to predict, draw inferences, think logically, interpret, reflect, make connections, and draw conclusions.
GIRLS AND CODING
Today, more girls and women are using technology than ever before. But relatively few are playing a role in creating technology or pursuing studies in STEM. Girls Who Code provides the data: “In middle school, 74% of girls express interest in STEM, but when choosing a college major, just 0.4% of high school girls select computer science. While 57% of bachelor’s degrees are earned by women, just 12% of computer science degrees are awarded to women.”
Several organizations have been formed to address these needs. Girls Who Code is a nonprofit organization, working to close the gender gap in technology and engineering with programs to inspire, educate, and equip girls with the computing skills necessary to pursue 21st-century opportunities, and particularly opportunities in computing fields.
Reshma Saujani, founder of Girls Who Code, says, “Despite the fact that women make up the majority of the general workforce, we comprise only 25 percent of technical jobs. Because we’re missing the mark on tapping into a diverse talent force: statistics show that only 2.7 percent of venture-backed companies have a woman at the helm, and African-Americans and Latinos/Latinas make up only five percent of employees at top-tier tech companies; less than two percent of VCs are people of color.”
Code.org addresses young girls’ interests with a coding project based on Elsa and Anna from the movie Frozen. The backbone of the tutorial is basic: employ simple commands to help the princesses skate lines on the ice. The program uses Blockly, a visual drag-and-drop method for creating a string of commands.
HOW IT WORKS
Several programming languages are simple enough for young children to use. For example, MIT’s Scratch is based on a collection of graphical “programming blocks” that children snap together to create programs in ways that make syntactic sense. Scratch Junior was developed for early learners. LightBot was designed for students in grades 4–8 (ages 9 and above) to solve puzzles using programming logic. Younger students can use it effectively too. Kodable’s programming curriculum for elementary students is mapped to the Common Core State Standards. With Tynker, students can make Web apps, build custom games, draw math art, interface with hardware, and model science projects. Graphite has published reviews of many of these products.
Teachers can find plenty of tutorials to help them get started. In addition to Code.org’s tutorials, organizations such as Codecademy, Codesters, the Raspberry Pi Foundation, and others provide information and support.
SCHOOLS THAT ARE CODING
Loess Hills Elementary School: Loess Hills Elementary School in Sioux City, Iowa, is a Programming Specialty School that started with a summer program in 2014 to train one teacher per grade level. Teachers were given devices for themselves and sets of iPads for their classrooms. Teacher-librarian Polly Meissner says, “They picked Kodable for grades K–2 and Tynker for grades 3–5; the goal was to improve reading and math scores.”
First-grade teacher Jessica Faulk says, “With coding, students practiced mathematical processes such as precision, making sense of problems and persevering in solving them that are part of the standards. They also connected coding to language arts. Sequencing is a large part of programming and students wrote how-to instructions using key words such as first, next, then, and last. They wrote the sequence to program the Fuzz (part of Kodable) through the maze. By extension, they were able to write how-to books, including how to brush your teeth, get dressed, and make a cake.”
Third-grade teacher Jeff Gacke says, “My students began the school year working through Tynker’s prepared lessons to learn how the program worked and then used the program to create quizzes and games. This personalized their learning; it showed their understanding of the curriculum while testing others’ comprehension. It helped them get much better at logical thinking and problem solving and it helped them learn patience and not to give up. They created quizzes on vocabulary, math facts, greater than/less than, pictures of angles—anything, really!”
Catherine & Count Basie Middle School: Eileen Lennon, technology teacher at MS72 Catherine & Count Basie Middle School in Jamaica, New York, uses Hour of Code to get her grade 6–8 students started. Based on the Angry Bird game at Code.org, students begin with basic blocks to compile a script. They get through the 20 steps with short videos interspersed throughout to introduce new tools as they are needed. Students work at their own pace throughout the levels and their teachers monitor progress and create small group instruction as needed.
Lennon says, “My students love it; they feel very empowered to complete tasks with a skill they never knew they had. They see the real-world applications for this and immediately start thinking about a game or app they will design. Because they know how useful this skill will be, all my students want to be good at it. I’ve had kids come right off of superintendent suspensions and be the best workers, along with the valedictorians who love anything that challenges them.”
The next step at Catherine & Count Basie Middle School is an introduction to Scratch. Lennon says that students don’t just play games; they create them, starting with the Scratch Shark Game. The teacher models the script to create a simple game in which a shark chases a fish. The students follow along, making slight changes. They progress to use more blocks, cover more concepts, and become more confident in their abilities as beginner programmers.
Lennon is working with subject teachers to incorporate these skills in other classes. She started with a unit of study in which the characters on the screen recreate a scene in a book or an historic event or a science experiment. She says, “Characters can also speak another language, so I’m working with our Spanish teacher to create a unit for that.”
Angelo Tomaso School: At the Angelo Tomaso School in Warren, New Jersey, computer literacy teacher Sheila Connolly and gifted teacher Susan Kline used the ten-week K–5 Code.org curriculum with first and second graders. They started with an “unplugged” coding activity called Move the Flurbs 2, in which students cut out and pasted arrows to direct a character to go where he needed to be in a series of steps. They moved to Graph Paper Programming and then to Code Studio coding activities on Code.org.
Klein says, “I thought the kids really enjoyed the Code.org lessons. I made a point of bringing the students back to the big idea that they are writing a program for the computer and not just solving the puzzles. Many students found that idea empowering.”
Austin ISD: Vanessa Jones, instructional technology support specialist for the Austin (TX) ISD, provides professional development for all teachers (Pre-K–8). They use Code.org’s Code Studio (elementary) to provide the curriculum framework. Teachers go through the training as if they were students. They also use the Code.org lessons with high-school students.
Both teachers and students, and even principals, are engaged in the lessons. Not only do students participate in the activities at school, they also continue to work on the puzzles at home.
Austin ISD uses the Code.org curriculum framework because it is closely aligned with state standards and Common Core and it starts with the basics of computer science and builds on those skills. The entire district participated in the Hour of Code last year to promote computer science.
HOUR OF CODE
The Hour of Code is Code.org’s introduction to computer science, designed to demystify code and show that anybody can learn the basics. In the two years it has been running, 100,000 teachers have signed up to teach computer science and five million students in over 180 countries have participated. Tutorials are available in more than 30 languages. No experience is needed. The Hour of Code takes place annually during Computer Science Education Week. This year that will be December 7–13, 2015.
The Code.org site says, “Every student should have the opportunity to learn computer science. It helps nurture problem-solving skills, logic, and creativity. By starting early, students will have a foundation for success in any 21stcentury career path.”
A popular Hour of Code starter activity is Angry Bird, in which students help the bird to catch a naughty pig. They stack a couple of “move forward” blocks together and press “run” to help him get there. Then they build on what they’ve learned.
Students create games, solve fun coding puzzles, and learn programming concepts. They can personalize games with animated characters, multiple levels, and rich props.
In addition, Play Lab allows students to create a story or make a game, Artist lets them draw pictures or designs, and they can use Flappy Code to write their own games. Students enjoy what they’re doing and are amazed at what they can create. At Code.org, they can continue to learn coding through a series of lessons for younger or older students. Even adults can learn.
Teachers can learn on the site or in workshops set up all around the country. They can use that curriculum or try other coding platforms. You can try it yourself right now. Go to Studio.code.org to build a game and send it to your phone.
FOR MORE INFORMATION
Code Studio: https://studio.code.org
Girls Who Code: www.girlswhocode.org
Graphite (Common Sense Media): www.graphite.org
Grok Learning: www.groklearning.com
Hour of Code: http://hourofcode.com/us
Intel’s Code for Good: https://software.intel.com/en-us/codeforgood
Microsoft in Education: www.education.minecraft.net
Rasberry Pi Foundation: https://www.raspberrypi.org
RoboMind Academy: https://www.robomindacademy.com/go/robomind/home
Wonder Workshop: https://www.makewonder.com/