Much has been said about the STEM and computer programming labor shortage. Even though people with STEM degrees make 26 percent more than their non-STEM peers, many would-be technical workers lose interest in subjects like computer science as they advance through their high school educations.
52 percent of adults say the main reason young people don’t pursue STEM degrees is that they think these subjects are too hard. This is particularly true for women and minorities; a recent Microsoft survey found that by middle school, 30 percent of young women believe coding and programming roles “aren’t for them,” and this number jumps to 40 percent by high school.
In the same way that studies suggest children should begin learning foreign languages before age of 10 to achieve native fluency, children who are exposed to STEM early on fare better than those who are introduced later in life.
Unfortunately, when it comes to one of the highest paid STEM careers -- computer programming -- it is incredibly difficult to get children involved. This challenge isn’t due to lack of interest, as curious children naturally gravitate toward STEM, but rather the perceived difficulty of learning these subjects as children age. It’s telling that almost a full third of college computer science students fail the first time they take the class.
Why Coding Education Fails
Coding has earned its reputation as a difficult skill to learn. But some of these difficulties can be blamed on a lack of tools and equipment.
For example, most coders use an Internal Development Environment (IDE) like Visual Studio to create software programs. IDEs were built for developers -- not students -- so the tools come with an expectation that you already know how to code. Because the educational tools were designed for people who already have coding knowledge, they offer no guidance, making the interface very intimidating for beginners.
In addition to over-complicating the process, the existing tools do little to make the concept of software less abstract. For example, if asked to describe a mobile application, how would you respond?
If you asked an engineer to describe the components of a mobile app, they would describe a set of source code, based on a programming language, and accompanied by various APIs and SDKs. To a beginner student, the makings of a mobile app seem incredibly abstract. Without a program that visually eases students into these concepts, programming becomes even more unapproachable.
New Approaches To Solve Old Problems
The framework approach is great for making coding simpler for college students, but if you’re going to introduce coding programs into primary schools, you have to take one step back and turn the frameworks into something more simple -- like building blocks.
Making Coding Accessible For Early Education
In order to make STEM accessible for students at a young age, here are four ways educators can use new tools to support the growth and skillsets of coding students.
1. Adopt A Simpler IDE
Modern solutions allow students to move from building blocks to frameworks, and make it easy to get familiar with coding as they grow. When coding frameworks can be simplified into blocks, it reframes coding into language children can understand -- like legos. This is where companies like Roblox have been incredibly helpful in improving early opportunities for children to learn to code.
2. Show Real Time Feedback
With traditional coding software, students must write 300 lines of code, and compile it into an executable before seeing if the code works. But 9 times out of 10, the file that is created will fail because, even the most experienced coder introduces bugs into new code.
Without instant feedback, it’s easy for students to get frustrated. In order to provide the real time feedback that encourages students, software that powers a device can be incredibly effective. For example, Sphero produces a fleet of robots, which can be programmed easily on a mobile app. When students make changes to the Sphero code, they can see instantly how the robot responds. This makes feedback instant, visceral, and fun.
3. Make It Inspirational
In order to bring in new audiences, modern coding solutions must find ways to create broader appeal. Some students have natural interest in coding languages, but many do not.
In this way, focusing on applications that inspire students not only gets the typical people with interest to code involved, but can attract new audiences too. For example, programming a little ball to turn on its lights and move around is great, but programming a humanoid robot -- like SoftBank’s NAO and Pepper -- to gesture and to speak and interact is truly inspirational.
4. Make It Social
Finally, the holy grail of computer engineering is pair programming, which is a social experience at its core. Trained engineers can pair program, but for students -- particularly younger students -- pair programming can be difficult and frustrating. Teachers can make this experience better by leveraging a device that creates a social experience naturally, and guides social partnership in creating new solutions through code.
Again, this is where applications like NAO and Pepper can be invaluable. Programming a humanoid robot that can engage and gesture and work with many people and interact allows children to have fun and communicate, and drives engagement for people that wouldn’t normally code. This is particularly important when it comes to educating a diverse student body. The social experience of learning to program, combined with a robot that is gender neutral (versus programming a tank) makes the experience fun, and inclusive to a broader audience.
To learn more about coding education with SoftBank, visit the SoftBank website.