If you're a young person who is thinking about becoming a computer programmer but can't afford college, you might think about skipping college altogether, says Ryan Carson, co-founder of an online coding school.
And he isn't alone. In interviews with other code-school founders, I heard the same story again and again: committed programming students are getting jobs whether or not they have a college degree and whether or not they are starting careers or switching, midlife, from another field.
The most intensive schools, like Seattle-based Code Fellows, are so sure they can get students work they will refund a student's tuition -- $US12,000 for 16 blitzkrieg weeks to get a person from zero to trained -- if that person doesn't get a job.
What's going on here isn't complicated: there is an enormous mismatch between the supply and demand for computer programmers. The US Bureau of Labor Statistics projects that by 2020, one million programming jobs in the US will go unfilled. And traditional institutions, which largely treat introductory computer science classes as barrier courses designed to weed out all but the most committed students, are demonstrably not meeting the need.
This year, the University of Washington could accommodate only a quarter of the qualified students who applied to its computer science major. And this is happening at schools across the country -- most of which have seen hockey-stick growth in applications to both be computer-science majors and to take individual courses in recent years.
Fortunately, it turns out that a computer-science degree isn't necessary to get a job in programming. Fourteen per cent of the members of some teams at Google don't have a college degree, and 67 per cent of the programming jobs in the US are at non-tech companies where other kinds of industry experience are more likely to be valued.
Coding is no different to nursing or welding
Computer programming, in other words, has become a trade. Like nursing or welding, it's something in which a person can develop at least a basic proficiency within weeks or months. And once budding coders learn enough to get their first jobs, they get onto the same path to upward mobility offered to their in-demand, highly paid peers.
Take Facebook: the first thing that happens to a new engineer there is six weeks of intensive classes, many of which are -- you guessed it -- programming classes. This is in part because university courses in computer science favor theory over programming, which is a mishmash of skills ranging from practical knowledge of in-vogue programming languages to how to work on projects that involve dozens of other programmers and thousands or even millions of lines of code.
Coding schools, online and otherwise, let everyone from recent high-school graduates to career switchers skip straight to the part where they learn how to make the things companies actually care about: websites, services and apps.
That is not to dismiss the value of a computer science degree or even a college education -- if a student can afford it. But now that student-loan debt in the US has swelled to a record $US1.2 trillion, many clearly cannot.
Computer science degrees teach theory and help the best engineers advance the state of the art, but we've entered an age in which demanding that every programmer has a degree is like asking every bricklayer to have a background in architectural engineering.
Zach Sims, co-founder of Codecademy -- which claims 24 million people worldwide have taken one of its courses -- doesn't like to call his company a trade school, but only because of the negative connotations it evokes in a nation obsessed with boosting the number of college graduates.
Carson, co-founder of Treehouse, says his own computer science degree, which he got in 2000, is useless. Technology now moves so quickly that programmers must constantly retrain in new frameworks. This provides an opening for students willing to learn exactly the skills that are hot right now, as long as they're also willing to continue learning for life.
"We've crossed some sort of border in human history where everything we touch now has software in it," says Carson, echoing the common Silicon Valley refrain that the future comprises two types of people: those who know how to program and those who must obey the machines created by those people.
Not everyone needs to be a coding 'ninja'
Despite all the breathless hype I heard when talking to the heads of these institutions, I still couldn't find hard numbers on what percentage of their graduates are actually getting jobs. This isn't necessarily a mark against them. Almost all of these schools have been around only a couple of years, and Treehouse, for example, has only just started a job placement program for its graduates. Codecademy is free, which means that many people try it but never get very far.
As of last month, Code Fellows had graduated 88 per cent of those who entered its intensive program, but Code Fellows is highly selective, which always boosts the kinds of numbers educational institutions like to show off.
"You don't need superior intelligence or schooling to become an amazing developer," says Carson. But to graduate from Treehouse you do need $US25 a month and a willingness to commit to up to a year of part-time education.
All the programs I investigated were enrolling women at rates two or three times above their representation among engineers at most tech firms, which hovers around 10 per cent. And there is anecdotal evidence that alternative programming education opportunities are more inclusive of both women and people of colour.
Taken together, all this suggests the solution to America's computer programmers is right here at home, among the millions of un- and under-employed people between high school and midcareer. No, they're not all going to turn out to be coding 'ninjas' or 'rockstars' -- but that's the point. As technology becomes ever more widespread, it's creating programming jobs as diverse as the types of knowledge workers it has displaced.