Consider the following programming test: this data file defines a maze with diagonal walls made up of sections with a length the square root of 2. In 45 minutes, design and implement a solution in Pascal to count the number of enclosed areas and the area of the largest enclosed space. Got it? Ready... set... go!
The maze that goes with the problem
Image credit: Neil Fraser / BẾ VĂN ĐÀN
If you were able to do it, congratulations! That means you could pass the Google interview process. It also means that you have the programming skills of a Vietnamese eleventh grader.
That's according to Google engineer Neil Fraser, who recently visited schools in that country and came away quite impressed with the commitment to teaching computer science starting at an early age. As he wrote earlier this month, it all starts early. In third grade they learn how to use Windows, in fourth grade they learn Logo commands and loops and by fifth grade they can write procedures.
He witnessed a class of eleventh graders take the above programming test, which he said is on par with some of the questions during a Google interview. Most of the students had no trouble completing the task in the time allotted. He concluded that, "There is no question that half of the students in that grade 11 class could pass the Google interview process."
While the decision to start teaching computer science at an early age is relatively recent in Vietnam, it already puts them well ahead of the average student in the United States, which Fraser bemoans. In fact, he goes on to paint a pretty bleak picture of computer science education in the United States, saying that eleventh grade students in the U.S. have trouble with HTML tags. He attributes the lack of computer science education in the U.S. to:
School districts not wanting to devote resources away from traditional subjects (e.g. English), so as not to threaten funding
Lack of teachers qualified to teach computer science
Students not wanting to learn computer science and be labeled "geeks"
"The result in America is a perfect storm of opposition from every level," Fraser writes. "Effecting meaningful change is virtually impossible."
If by "meaningful change" he means getting to the point where U.S. eleventh graders could pass a Google interview, then, yes, he's probably right. U.S. students are behind their counterparts in Vietnam and Estonia in learning programming. It's not clear that computer science will ever become a required subject in grade school or even high school in this country.
Sign up for Computerworld eNewsletters.