Can We Fix Computer Science Education in America?

The tech industry is one of the few bright spots in a dim economy. So why aren't we teaching kids the skills they need to participate in it?

  • Share
  • Read Later
John Landa / Exploring Computer Science

Students at Gardena High School in Gardena, CA work on a robot in their Exploring Computer Science class.

Anthony Pagan has been teaching its curriculum for four years at Thomas Jefferson High School in South Central Los Angeles, a school with a student body that’s 90% Latino. When he first arrived, the school offered only one computer course which taught typing and how to use Microsoft Office.

“The word of mouth spread after the first year I taught the course and during the second year I was teaching four sections of Exploring Computer Science,” says Pagan. “It proves that, in the end, all that hard work is worth it. These kids can do it, whether or not English is their first language.”

The course ditches Java for a visual drag-and-drop language developed by MIT called Scratch, which introduces students to programming concepts with what Pagan likens to “virtual LEGOs.”

Speaking of LEGOs, students get to build robots they program themselves. They also create computer games and learn how to organize huge data sets they create with donated smartphones.

Other teachers have had similar success, like Elaine Blomeyer at South Gate High School, located southeast of Los Angeles. Blomeyer left teaching to code for companies like Hughes Aircraft for 25 years before returning to the classroom four years ago.

“The one thing I love about teaching computer science as opposed to math, which is what I taught before, is that students typically want to learn this,” says Blomeyer. “They get immediate feedback. They get excited. They put together some HTML and, voila, they can instantly look at a web page.”

In a field as quickly moving as technology, Blomeyer stresses the importance of building communities of teachers, either through physical meetings or online. She personally puts her lesson plans on her website so that other teachers from across the country can access them.

Still, once students take Exploring Computer Science, they still need something to advance toward afterwards. That’s why educators are looking to provide an alternative to the current, Java-heavy AP computer science course with Computer Science: Principles, which, aside from programming, also focuses on algorithm design, big data and social implications of technology.

While pilot courses are currently being taught around the country, they can’t become official AP courses until the tests are created and approved. Still, with programs like Exploring Computer Science, this represents a move to create computer science classes that might  actually excite students who don’t have a lot of previous experience with computers.

Right now Exploring Computer Science is being taught to 2,000 students in Southern California. The new AP course is being piloted at 10 high schools across the country.

If educators want to scale up their cause, they’re going to need to create a national framework. That’s where the Computer Science Education Act comes in. The bill, introduced by Sen. Bob Casey (D-Pennsylvania) and Rep. Jared Polis (D-Colorado), looks to take a page from the Israeli playbook and create clearly defined computer science education standards. It aims to give grants to states to update their computer science programs and to establish a national commission to evaluate those programs as well.

Why It Matters

The myth of the brilliant, self-taught tech entrepreneur has a strong hold on the American imagination. When people think of Mark Zuckerberg, they often think of the heady entrepreneur who dropped out of Harvard to start Facebook.

They don’t think about the fact that his parents hired him a private tutor to encourage his love of computers as a child and that he graduated from Phillips Exeter Academy, an exclusive prep school in New Hampshire that boasts such alumni as George Plimpton and Franklin Pierce, the 14th president of the United States.

Not every kid has those advantages.

“There is this assumption that if you have this innate talent and you’re drawn to it, you’ll learn it on your own and you don’t really need it at school,” says Jane Margolis, senior researcher at UCLA’s Graduate School of Education and Information Studies and author of Stuck in the Shallow End: Education, Race, and Computing. “Kids that have a lot of resources at home, often with parents with a lot of technical know-how and access to software, people look at them and say ‘Oh, they just take to it.’”

In 2010, the San Jose Mercury News reported that the percentage of computer workers in Silicon Valley that were black or Latino stood at 1.5% and 4.7%, respectively. Girls Who Code, an organization that encourages teen girls to pursue opportunities in technology, points out that only 14% of undergraduate computer science degrees are earned by women.

While a new computer lab or tablets are certainly welcome in low-income schools, they don’t guarantee that students will be able to fully utilize them.

“What often happens is that we spend a lot of effort trying to get technology into schools, but that isn’t coupled with ensuring that there is a really strong computer science curriculum behind it with really good teachers,” says Wilson of Computing in the Core.

Professionals in Silicon Valley like to talk about technology being disruptive, replacing old, outdated models with creativity and hard work instead of access to traditional centers of power. Yet from a demographic standpoint, the tech industry doesn’t look that different from the older industries it’s trying to disrupt.

“Unless you are going to have this knowledge be only accessible to a very narrow strata — which is mostly white and Asian males from comfortable backgrounds — it’s going to have to be part of our education system,” says Margolis. “We feel that having it in the schools and having a strong program is important if you’re going to democratize computer science knowledge.”

MORE: ‘Girls Who Code’ Looks to Close the Tech Gender Gap

  1. 1
  2. 2
  3. Next
34 comments
drpage.pagewizardgames
drpage.pagewizardgames

I find this article portrays CS incorrectly, as do most people who aren't computer scientists.  Infact, I can even meet people with CS degrees and they couldn't even tell me what CS actually is.  Instead of making CS in schools a programming class, maybe make it more scientific, as it actually is.  CS isn't glorified programming, it is the study of the scientific nature of computation.  

Tech_Education_Enthusiast
Tech_Education_Enthusiast

There definitely is a lack of Computer Science courses offered to students in a high school setting, especially at public schools.  I have noticed that to fill this gap, STEM summer camps (http://www.internaldrive.com/stem/) that teach kids programming skills have become more and more popular.  iD Tech Camps is one that I personally have experience with.  I have friends who have sent their children, and it sounds like they had a great experience!  Learning AND having fun?  Sounds good to me.  Kids as young as 7 and teens as old as 18 can take classes in various programming languages such as Scratch, Java, and C++.  They can even take classes in app development, which is definitely a skill set that employers will be looking for more and more.  

AntonioDiaz
AntonioDiaz

i wish AP CP was anywhere in the los angeles area.... damn oh a boy can dream can he?...

Bill Mai
Bill Mai

I started teaching IT in the early nineties in a school which had a very aggressive program. We were Mac based back then and students were learning to program with Hypercard, Logo and Filemaker. By the end of the decade we were working with Lego Dacta teaching robotics and Premeir for video work.  Our IB (that's kinda like AP ) had a challenging program that included programing, hardware, and networking. Our elementary students were working with Microworlds, Amazing animations and doing robotics with roamer turtles. Many of our students from this era are today working in ICT and related fields.

All of this came to an end, partly for money and partly for laziness. IT was expensive and doing it right was very expensive, school administrators hate expensive. By 2000 our bugets were going for Microsoft and Adobe products, so our school began teaching the hell out of MS Office. By 2002 I and the other teachers moved on and the students were doing Office and yes Java.

Now it's boring for the kids, it doesn't require much from the staff and it's cheaper than doing it right but in the end it's the kids who are cheated out of a great opportunity.

systemBuilder
systemBuilder

It's not terribly important to have a good teacher or a good curriculum.  In computer science, it's very important to find the kids a peer group, and to use their creativity (like art) to compete with each other, in a peer group.  My jr. high friends and I taught ourselves to program (with an extremely excellent book, targeted to children) in the 1970's, on PLATO, and then we all competed for the next 4 years to write the very best games.  Among the top-7 games on that system, out of 250+ games, 3 or 4 of them were written by us.  That peer group and the desire to "out-do" each other launched our careers, even though only one of us had a parent in the field of computer science or engineering.

baisasa
baisasa

I agree with you but I think part of the issue is that students need to get a nice taste of what CS is with something like Scratch but know if they want to go further they need hard core math.

Math knows no race, gender or socio economic barrier. 2 + 2=4 no matter where you live or where you come from.  Your teachers can't discriminate against you as opposed to English where an essay point of view can be subjective.  But it takes hard work.

I think if kids know that the fun side of CS is at the end of the painful math tunnel they will stick with it.  Kids will sweat in 110 degree heat to be allowed to throw a ball at the game - you need to do a million problems sets to become Gates or Jobs or have the cool CS job.

umbrarchist
umbrarchist

There are too many computer languages and too many crappy computer language books.  But if computers were truly easy to program would that serve the economic interests  of computer programmers.

It looks like the operating systems get in the way more than they help.  It is like architects who don't know Newtonian Physics.

builder7
builder7

Here is how to improve computer science classes and the result set of competent students can result.  Tell American companies to start hiring people from America and paying them an American wage, rather than hiring from India and bringing them over here to work.  American's have no incentive to study for years and accumulate high levels of student loans at overpriced schools to end up unemployed and homeless.  They also do not want to work for 10 bucks an hour under these conditions.  They want to be paid the actual value of their undertaking, which is not to be confused with some sort of labor market.  If companies are not ready to pay Americans what it takes to do what is necessary then we will all be unemployed and dumbed down and homeless in the long run.  Are they prepping us to take over India's and China's place among the poverty stricken?!

AKEK
AKEK

It is so much easier to pass laws, fiddle with curricula and wring hands than it is to teach.  We don't teach engineering in high school, yet we have engineers.  We don't teach in high school (to any significant degree) business, psychology, physics or most any other college major and yet students somehow manage to start at the beginning of these fields as college freshmen and graduate.  I started in computer science back in the computer stone age and took my first CS course as a high school senior, literally not knowing what a computer was.  This idea that the cure is to push these subjects down to earlier grades is false -- easy, but false -- as the last 20-30 years of computerized education bears witness.

Anyone who has taught beginning computer science (as I have) will tell you, the programming language piece is the easy part.  It is the logical thinking and problem solving skills that is hard to teach.  Those skills are, in my opinion, best developed by math, and lots of it.  Uh-oh, math is hard though.  Kids don't like hard stuff, and hard stuff is also hard to teach, and you can't do it by buying more equipment and mandating a new federal policy.  Students have to study and put out.  Mommy and daddy and government nanny can't buy that for you.

Has anyone noticed just how many remedial courses are having to be taught by universities these days?  The three Rs -- let's graduate high school seniors who are really good at the three Rs.  All the rest of it will take care of itself.

Rolf Schlup
Rolf Schlup

 I've made to attempts to venture out down south the U.S. from Canada and it seems more difficult with a TN-1 visa than it's with an H1B visa.  Just because I got my education from various places ( some via correspondence and not on campus ), I don't always have the credentials most employers are looking for.  I have a B.S. in Computer Science and 12 years experience in the field and for the employers I tried for, it's still not enough.  It seems to me that they still only look at credentials and not talent.

Mediha Din
Mediha Din

Very exciting what the teachers of UCLA's Exploring Computer Science are bringing to students in low-income, low-resrouce areas of LA. Keep up the great work teachers!

Jim Perry
Jim Perry

Blaming Java for the lack of interest in Computer Science is like blaming English for the lack of interest in poetry. An exposure to the depth and beauty, and the theoritical and foundational ideas of a topic does more to advance any field than specific training. And it allows students to adapt faster to changes in the field, when they come.

In part, computer science is a love of problem-solving in any medium.  Students who like to play intellectual games, build with legos, take about a mechinical alarm clock, shape clay are all solving problems. These same students tend to embrace computer science as a field.

I always ask advisees, "Why do you want to be a computer science major?"  I find that that the ones who answer that they love to solve problems or love to program succeed.

 

rags17
rags17

ha...!they get to learn java or i must say they at least get an idea of what java is all about! when i was in high school all that i studied is C and C++. Don't think we master those languages all we were expected to do is memorize coding to write fibonacci series and matrix addition.we didn't even have windows XP OS.we didn't know what's .NET,VB,PHP or python . my country's(India :D) education system focuses only on memorizing stuffs.parents and teachers have a single goal...pass your exams with good score and get into a top university.yet you go knocking at your neighbour's door there is always an engineer working in a IT firm. 

DaveZiffer
DaveZiffer

** sigh **  The reality is that you couldn't pay most American students to take a class in computer science. Most kids' interest in computers extends no further than gaming and their use of Facebook. If there were a demand for real computing classes, we'd have them.

Belay Mylast
Belay Mylast

PLEASE don't make this a 'core' academic subject, ie required for high school graduation.   Although many more students should be offered the opportunity to take courses in computer and software design taught by people who do know more about the subject than the students, it's not for everybody.  Yes, we need more quality educated students.  Mandating that all students take a computer science course will result in more of the same old updates to 'keyboarding' that we've seen over the past 20 years.

Neniv Bazi
Neniv Bazi

I took a couple AP Computer Science Honors classes at my school in Arizona when I was a senior in 2008, and they were both horrible in my opinion. We were being taught Java the entire first class and some more Java and HTML the next class. I felt like this was such a waste of time, considering one of the other classes offered at the school (that I took) was Webmaster, which taught more HTML and Flash, among other web design aspects, and another class was Windows Programming, which covered VisualBasic.NET mostly and briefly covered Java. 

The AP CS classes were taught by a wrestling/basketball coach who had absolutely no coding experience, and taught us from tutorials and quizzes found on the internet that many of the other students figured out how to exploit to improve their grades within the first couple of weeks. 

These classes gave college credits to those who could pass the AP tests, and I was one of the few out of a class of over 20 students who even passed.

I definitely felt cheated out of a decent computer science education, but I'm glad I at least had the drive to teach myself. Unfortunately not all students have that.

bhayzone
bhayzone

The article seems to be suggesting the Java programming language as the culprit? Shouldn't it be the way that Java is perhaps taught, or rather the way in which programming languages have generally been taught. I read the LEGO's programming style and it was pretty interesting, but it seems to be one of those specialized type of courses that are offered by only the elite schools. For the remaining commoners, its just classroom programming, computer science algorithms and o-notations.

hokieray
hokieray

Because the kids already know more than any current teacher or administrator about computer science...lol.

Yoshi_1
Yoshi_1

As dear old George articulated several years ago" There's a reason education isn't going to improve in this country: The "owners" don't want that".

All the platitiudes and pompous B.S.  flowing over this and other "educational failure" in America won't change a damn thing. "New normal"? This is the "New sub-normal".  Get used to it and learn to prosper.

Yoshi

Whatnow05
Whatnow05

Really ought to start teaching it in elementary or middle school before even high school.  We dont just dump most kids off into complex math or other subjects why do the same with IT/CS? Which are arguably just as complex. 

Edna_Bucket
Edna_Bucket

Microsoft's British Columbia division was an offshore H-1B/L1 visa mill for "low-grade" testers. The Director of this division told reporters: "It's the guys without a turban who are the standouts":  http://www.sikhchic.com/articl... , as though Microsoft is proud of its exclusionary policies

One of their workers was a British PhD, who they brought to the US on H-1B.

According to this government ruling, they violated H-1B law by forcing him to work for no pay part of the time and Canadian dollars the rest:

http://tinyurl.com/7lhq6yc .

He seems to have lost his job shortly after complaining about it.

This illustrates the H-1B is not a "genius visa" bringing future Nobel prize-winners. It is an indentured-worker visa that allows companies to replace unionized Americans with foreigners having little to no rights. For the first time, there is a net migration of Mexicans out of America, which is an indicator that the US is seen as a sinking ship and it's time to seek better opportunities at home. 

In a decade or two, when India and China have the same technological infrastructure as Japan, this endless supply of indentured workers and cheap outsourcing centers, like Foxconn, will cease and corporations shall have so betrayed home-grown engineers that they have neither cheap foreign labor nor qualified home-grown labor, as American students desert the sciences in favor of degrees in law or business that offer better job prospects.

At that stage, Silicon Valley will shut down and the world economy shall revolve around chips made in Taiwan. Software firms will close down as the Indian workers who once supported Microsoft in droves start their own businesses in India, where local labor remains a more cost-effective option than emigrating to the US. Canada, Europe and Australia will be the first choice for foreign scientists seeking good research opportunities.

Grassley has been good at playing the pseudo-race-card, "The beleaguered American under the yoke of the foreign menace", but he has failed to tackle the issue at its source. Give a company legalized slave labor and they won't give it up. All the Congressional rhetoric in the world won't help, since Microsoft has the same lobbying power as any tobacco company. Microsoft and Infosys are parasites, whose profitability is dependent upon legalized trafficking. 

OlHarley
OlHarley

High School Computer Science in America perfectly reflects the district-by-district inequality and organizational hodgepodge that this story mentions. Some of it is totally wonderful, and a few of its practitioners totally get it as to how to bring in students, and how to bring in girls and minorities -- in their own community.  In some communities, Computer Science teaching, if it exists at all, is a perfectly terrible, slapped together mess. It ain't secondary Computer Science that's broken. It's our society. Until we quit valuing inequity and cranking out winners and losers as if it was our national religion, this isn't getting fixed.  And making it a required core subject is a terrible idea for now. Nobody knows whether Computer Science is a "literacy"  like reading, or a somewhat exotic talent to be cultivated in a context of competition, like pole vaulting. -- Or if it's both, which parts are which. We just don't know. Ed researchers and people with money backing them up just need to start observing what Computer Science teachers and students actually do, and start writing smart papers about how to scale that up.

bhayzone
bhayzone

I'm glad we don't have people like you making decisions at the levels that actually matter, else all of America would be "unemployed and homeless"

You are only hurting your own prospects by believing in the cheap Indian labor story. Once you open your eyes to the fact that the tech worker coming into the US from India earns much much more than the average US wage, only then will you learn to compete better. Until then you have a popular excuse to hide your sorry life behind.

And for the record, US immigration laws require companies to pay foreign workers a lot more than $10/hour, so there goes your dumb excuse for ranting.

OlHarley
OlHarley

 Yes, Advanced Placement is part of the problem. In the early 90s AP muscled in and took over the better computer science classes, and turned them very difficult and very boring, because the point of AP Computer Science is to provide feeder programs for Computer Science majors at elite colleges. Guess where AP Computer Science thrived and guess where it failed -- Places that were already college prep powerhouses feeding elite colleges.  The ironic thing is that Advanced Placement is a bamboo finger trap. If it is a bad match for your program, it goes away, and kills your program, instead of just going away. College Board is really rather evil.

Belay Mylast
Belay Mylast

Coaches should be prohibited from science classrooms, with rare exception.

OlHarley
OlHarley

Yes,  LEGO is fun and effective project based learning. It is also closed source corporate intellectual property, and therefore really expensive. So kids in rich districts get better curricula. Yet another way the rich get richer.

OlHarley
OlHarley

 This isn't as true as it was half a generation ago, but yeah.

hokieray
hokieray

But seriously, computer science grads make way more money than high school teachers.  Simple math people.  Who will teach computer science at high school for way less money?

OlHarley
OlHarley

I followed up on this quote and it is from dear old George... Carlin: "There's a reason for this, there's a reason education sucks, and it's the same reason it will never ever ever be fixed. It's never going to get any better. Don't look for it. Be happy with what you've got... because the owners of this country don’t want that." Yep, that's about right.

builder7
builder7

 You sure are big on ad hominum attacks, or just an outright lack of manners.  I cannot see how you not only could have an education but any responsibility over people.  I don't know what you consider the average U.S. wage, but you can't compare a tech wage with an average wage.  Since tech workers are educated they make more, generally, or they did in the past before the Indian (and other) workers started coming.  I don't know what wage you are talking about, but the Indian tech workers wage has traditionally (for the past 35 years) has been less than an American tech workers wage.  This undercuts American workers, as if you didn't understand that.  I might add also that Indians comprise 25% of tech industry executives because they have a better grasp on reality than many here in the U.S.  For your information, the American worker is the most productive in the world, and has been for a long time.  This is what has allowed the massive expansion of companies, off-shoring, and the U.S. economy.  I don't think that you want to kill the goose that laid all of the golden eggs.  Shoot yourselves in the foot though, if you want, because your way of thinking always leads to worst products.  By the way, why don't you move to India, I am sure that they could use somebody with your attitude!  Finally, the U.S. immigration law doesn't guarantee wages like you are saying, that is the minimum wage law.  It does say that foreign workers need to get paid the prevailing rate for the classification that they get hired for, which can be seen here:  http://www.foreignlaborcert.do....

You also might have mentioned that education is free for anybody and everybody in India and that they learn how to program computers from the first grade of school.  Because they put so much emphasis on education, and for some reason can afford free education and health care for everybody, even though they are very poor for the most part, it behooves me as to why our companies want to use socialist education in their workplaces.  It also shows us the reason that our educational system is not working out for companies, if true!