Monarch High School junior Natalia Rodriguez is getting a head start on her career goal of becoming a programmer, taking a Java class and joining the school's Technical Student Association.

"I see all the new business opportunities that this field has," she said. "I'm also a gamer -- and one day I want to make my own game. Everyone should take at least one programming class in their lifetime."

Code.org, a national non-profit recently started by tech insiders concerned about a looming shortage of programmers, is hoping for more students like Natalia -- and for more high schools to offer coding classes. Their goal is for learning to code to be part of every school's core curriculum, considered as useful as learning to read.

The non-profit's founders say that a million more software and programming jobs will be created in the United States by 2020, while the number of students here graduating with computer science degrees is falling.

"There's simply a huge gap in the job demand for computer science skills and the current production of graduates with such skills by U.S. universities," said Ken Anderson, associate chair in the University of Colorado's computer science department.

Software and programming jobs also are some of the highest paid. The average salary for recent computer science graduates is $64,800, according to a National Association of Colleges and Employers salary survey.

Code.org found that many high schools in the country don't offer computer science classes at all. In Boulder Valley, access to computer science classes varies by school.

Louisville's Monarch High and Boulder High offer the widest selection of classes, while the district's Career and Technical Education Center provides computer science classes to any district student. Broomfield High also offers an introductory Java programming class and alternates a computer information systems class with keyboarding.

All the classes fall under the Career and Technical Education umbrella, which means teachers must go through additional certification and the classes must meet state standards. The classes also count for college credit.

"We live in a very technology oriented area," said Broomfield High computer science teacher Jason Cole. "Because of this, I think word travels quickly that computer related fields offer a viable career path. Colleges and universities are offering more and more computer science degrees and many tech companies are scrambling to fill available positions."

Monarch High computer science teacher Sue Johnson, who previously worked for Oracle, said the key to keeping a program going is student interest.

Computer science classes are an elective and aren't themselves a graduation requirement, though they are among the classes that count to meet the district's technology graduation requirement. They don't count toward math or science graduation requirements.

Johnson said other district high schools stopped offering computer science classes because not enough students signed up. Now, she said, students from those schools open enroll at Boulder High and Monarch for computer science.

"We still fight hard to stay full-time," she said. "You have to keep your program alive. We want kids to understand that it's worthwhile to take a computer science course. It should be encouraged."

Boulder High teacher Tony Jiron, who worked for IBM, said one strategy to drive student interest was starting a gaming competition, with a goal of expanding it to other district schools. Changing the image of programmer is another challenge, he said.

"It's not someone down in a basement alone for hours," he said. "Programming is a skill than can be used in any business."

Added Johnson, "We try to show them the big wide world of computer science."

Both teachers said their classes are project based.

At Monarch, Johnson said, she starts the introductory class with fun options like designing games and apps to teach students the basics. Her classes also incorporate science and math, she said.

"There's so much that goes on in these rooms," she said. "We'll experiment with anything."

Junior Rachel Vidak said she's "kind of bad at computers," but chose a programming class because "it's necessity."

"Everything is done over a computer, everything is a program," she said. "You need to know how to work this stuff. I've learned a lot."

Sophomore Boskin Erkocevic said taking computer science classes in high school, where classes are smaller and teachers helpful, will give him a head start in college. Initially, he said, learning coding can be "really confusing."

"It gets easier as you go," he said.

He's considering majoring in either computer science or electrical engineering. If he decides on engineering, he said, programming will remain a hobby.

"Programming is another form of art," he said. "You can do anything you want with it."

Panthers brace for rematch of epic '13 playoff battleAs is typical for high school coaches at this stage of the season, Boulder boys basketball leader Eric Eisenhard didn't waste much time celebrating a big win. Full Story

New coordinator pushes Buffs to work, play at level he expectsJim Leavitt has discovered this much about his new defense at Colorado: He has some talent with which to work, but his players need to put it in another gear. Full Story