coding
Grizzled computer scientists will hardly give it a second thought when working in basic programming languages like C++, Java or HTML. And with their training and inquisitiveness, they'll hardly flinch when the programming is more involved with APL, Pascal, CLEO or ColdFusion.
But slide these exotic-sounding programming titles in front of a minority middle schooler who could be a candidate someday for a STEM college education and bewilderment descends on the room.
As a hedge from inadvertently scaring young students away from science, technology, engineering, and mathematics (STEM) before they have a chance to get started, many STEM educators and advocates are placing value in the emerging concept of "coding," a means for introducing students to STEM through less intimidating programming approaches.
"Keep trying to introduce them to even low-level programming languages like C++ and Java and you're going to lose a lot of kids," says Dr. A. Nicki Washington, an associate professor in the Department of Systems and Computer Science at Howard University.
But show those same students how to make tracks in SCRATCH, Alice or KidsRuby, rudimentary drag and drop programming languages, and they'll perk up and be more likely to receive the message that they too can forge a career path in STEM, Washington says.
"A lot of black and brown students don't know what computer science is. If you ask them what is computer science they can't tell you. They don't understand how much computer science plays a part in their daily lives," says Washington, who coordinates a STEM program at Howard in association with Google, the Partnership for Early Engagement in Computer Science, for middle and high school students in Washington, D.C.
SCRATCH, for instance, developed at the Massachusetts Institute of Technology, is an open source, drag, and drop program designed for children to help them understand programming concepts at an early age while nurturing their creative skills through devising stories, animations, music, and games.
Alice, another freeware, object-based educational programming tool, allows students to learn fundamental programming concepts by helping them understand the relationship between programming statements and the behavior of objects in animations. Both programs allow students to see their work in action immediately.
"Those are going to be things where students can learn the basic concepts of programming, like function, groups, and other abstract concepts that they can apply. Once they get excited about that, then you can go a bit deeper," Washington says.
Rather than bombarding impressionable young students with hard-knuckle computing concepts like discrete structures, computer architecture, and operating systems, coding advocates, who include luminaries Bill Gates and Mark Zuckerberg, say developing initial programming skills offer the right start up.
Coding programs expose students to computer science "at a level they can still see the real world application," Washington says. "The basic essence of computer science in order to be a computer scientist is you have to know how to program."
A key touch point for educators and advocates with the coding movement is determining when and how much coding to introduce to young students. Some organizations, such as code.org, which Gates and Zuckerberg have endorsed, advocate getting children involved with coding even as early as preschool.
By 2020, according to code.org, 1.4 million computer jobs will be on the market in the United States with only about 400,000 computer science students to fill them. Further, the growth in programming jobs, the organization says, doubles the rate of other jobs being created in the United States.
Another organization based in Oakland, Calif., blackgirlscode.com, takes a similar advocacy approach through showing that 'black girls can code' by growing the number of women of color working in technology through affording opportunities to underprivileged girls.
In today's Internet-driven and social media environment, technology basics often mean focusing on games and apps, says Dr. Daryl Stone, an assistant professor in computer science at Bowie State University in Maryland. A coding foundation can lead students to acquire basic computing skills and ultimately jobs in areas like web design, database development, cyber security and mobile app development, Stone says, who operates annually a summer CPU Camp for young students at Bowie State.
The vast majority of STEM students will not go on to earn master's degrees or doctorates, so the goal has to be getting them to a point to earn undergraduate degrees in STEM disciplines like computer science, Stone says.
The key often is to teach students about STEM much in the way a coach will teach fundamental skill development to young athletes, such as footwork or how to catch the ball, he says. "You want to introduce the basics early on and build that interest."
At the Bowie camp, Stone says he will initially use peer-demonstrated video clips to show his students how to use the SCRATCH so they will see others their ages mastering the concepts. Then as the program moves further into the course, he will start to make parallels with many of the more complex computing concepts.
Other STEM and technology organizations are feeding off similar approaches. The Congressional App Challenge, a project of the Internet Education Foundation authorized by Congress, is a program that promotes STEM education by taking students through competition in app design and programming projects. The App Challenge is modeled after the Congressional Art Competition, which has served more than 650,000 student participants since 1982.
Dianne Kirnes, who coordinates a summer STEM program at Alabama A&M University for high school students each year in conjunction with the National Science Foundation, says coding instruction falls into line with what employers are seeking in the technical jobs marketplace.
Employers engaged in STEM activities are seeking job candidates who can undertake specialized projects, Kirnes says. "Coding would be beneficial to students if they would know how to write a program to do a specific task that employers want done. That may be the key point in deciding whether or not to hire somebody," she says.
A focus for coding proponents is to determine what to teach and at what levels. Stone at Bowie State, for instance, is directing the research of a doctoral candidate at the school into those questions.
"A lot of times (students) are getting introduced to STEM too late," Stone adds.
Washington at Howard says the computer science education community is still relatively new, thus debate is occurring about how coding should be taught and what the emphasis should be compared to other areas of computing.
"People are on both sides of the pendulum in education," Washington, who earned her doctorate in computer science at North Carolina State University. "The debate centers around how prevalent coding should be early on."