Date: Thu, 27 Oct 2011 21:20:46 -0700 From: Norm Matloff To: Norm Matloff Subject: "American Programmers Are Superior" Lines: 138 To: H-1B/L-1/offshoring e-newsletter BEFORE WE GO ANY FURTHER, I want to make the disclaimer that: (a) my Subject title of this message is written tongue-in-cheek, an allusion to the "Chinese Mothers Are Superior" title that the Wall Street Journal gave to Yale professor Amy Chua's famous op-ed (much to Chua's chagrin), and (b) the study I will report on below, from eWeek Technology News, is of dubious validity and relevance. Yet all kinds of studies of dubious validity and relevance enter the H-1B/offshoring/"the U.S. is falling behind China"/"innovation will save us!" public discussion on a daily basis, and are treated as Nobel-quality research by Congress and the press. And this is indeed a real study of real programmers. So, it is definitely worth reporting. The title of the enclosed article neatly summarizes the piece: U.S. Tops China in Programming, but Lags in Math, Logic The following summarizes my response: 1. In software development, math is irrelevant. Programming ability is what counts. 2. The study's data collection technique undoubtedly leads to a biased sample. Here are the details: Make no mistake about it--I love math. My bachelor's, master's and doctoral degrees were all in math, and I started my academic career as a math professor. I think wistfully of those days when I used to teach things like linear algebra and group theory. But math is not used in software development. Yes, there are exceptions, such as the algorithms used in Google search, but they are just that, exceptions. The vast majority of the code written at Google is not mathematical. Indeed, the programming jobs at Gild, the company that conducted this study, don't involve math either. See their job listing at http://www.gild.com/blog/about/jobs/lead-ui-designer/ for an example of how NON-mathematical their requirements are. You can check software developer listings at Google, Facebook, Amazon, you name it--no math requirement. It is true that programmers, and in their younger selves, computer science students, are as a group weak at math. I've never figured out for sure whether they CAN'T do math or just WON'T do math. I think it's the latter, and I suspect that paying $100 per point scored on their math exams would work wonders. To me, as someone who loves math, it's painful to see their poor performance. But it's IRRELEVANT, folks. Sure, someone out there is going to say, "Math teaches you how to think, how to deal with abstraction, blah blah, so it helps one's programming ability." Great theory, but I haven't seen is borne out at all, in three decades of teaching programming and leading programming projects in industry. Before I leave the math part of this posting, let me repeat the well-known point that the math "skill" developed keenly in engineering students in China consists mainly of memorizing algebraic manipulations and the like. That's not real math. Math and physics students from China tend to have a tough time when they start graduate school in the U.S. The Chinese government itself is acutely aware of this, and is hoping to change their education system so as to develop insight and intuition, which is what math is really about. Now, what about the study's finding that the Americans have better programming skills than the Chinese? On the one hand, I'm sure it's true. Programming is by definition a creative activity, and the Chinese system, as discussed widely (including, once again by the Chinese government, which hopes to change its system accordingly) does not foster creativity. I certainly have observed that in my own students from China. But on the other hand, the participants in this study are a self-selected lot, one that is likely unrepresentative in many ways. Interesting study, but not really very relevant. Norm http://www.eweek.com/c/a/Application-Development/US-Tops-China-in-Programming-but-Lags-in-Math-Logic-626355/ Application Development News U.S. Tops China in Programming, but Lags in Math, Logic Darryl K. Taft 2011-10-19 Gild, a social networking and skills sharing site for developers, has announced a study comparing U.S. and Chinese developers that showed that Chinese developers lead Americans in some categories but lag in programming skills. Gild, a Website where developers build, share, compare and improve their skills profiles, announced the study on Oct. 18 with the results showing that Chinese developers outscore U.S. developers on math and logic by 20 percent. However, the study also found that U.S. developers significantly outperform Chinese programmers on mainstream programming languages. As a result of the study, Gild has issued a plea to the American education system to urgently review the way math and computer programming are being taught in schools, the company said. "Software development remains a bright spot for the U.S., with American programmers the best in the world, but is it sustainable? said Sheeroy Desai, CEO of Gild, in a statement. To ensure this leadership for more than a generation we urgently need to improve the quality of math skills in our schools. In fact, America should embrace and support this leadership position and introduce programming into schools. America must invest in education to stay ahead. Developing nations such as China are clearly putting an immense focus on core skills, particularly math. While nothing can replace creativity and ingenuity, the United States cannot afford to ignore the fundamentals." The Gild international programming study examined the skills of nearly 500,000 developers via more than 1 million tests. U.S. developers fared much better than their Chinese counterparts in programming core languages. U.S. developers scored 22 percent higher than Chinese developers in C language programming. And U.S. developers scored 26 percent higher on C# and 19 percent higher on C++. Meanwhile, U.S. developers scored 24 percent higher on Java as well as 24 percent higher in Oracle database programming, the Gild study showed. Gild touts its community as one where skills, as opposed to connections, are the primary focus. Nearly half a million developers from 150 countries use Gild to assess their programming capabilities and compare their skills profiles against others, giving the company a unique insight into skills-based trends across the world. Gild has offices in San Francisco, Bangalore and Beijing.