If Everyone Learns to Code, the Value of Knowing How to Code Will Be Destroyed!
you sell skills in a market!
Alright kids, tell me - who is this dynamic bad for? Why, those very people with “practical” majors, of course! They’re getting the downside of a more crowded labor market for their particular skillset and nothing in return. If you’re a young coder who wants to break into the field, you should be furious at the endless repetition of “learn to code” as a panacea for solving all of our employment woes. It’s created an army of new competition without any necessary attendant structural increase in the amount of coders the market can bear. The inevitable impact will be a tougher job market and strong headwinds on coder salaries. The overall fundamentals for the profession might mean that salaries still increase, but the immense number of new entrants into the field will still be depressing salaries. They have to. That’s how a market works.
It’s so strange to me how many people in the policy world don’t seem to grasp this basic reality: educated labor is sold in a market like any other, which means it’s subject to supply and demand. College degrees in general and specific college degrees are valuable depending on the demand for them and the number of people who have them. I’m not reasoning from first principles here; we know this empirically. Yes, I’m once again referring to this NBER paper, which found that over the course of more than a century the college wage premium was remarkably predictable simply as a function of the number of people with college degrees and the number of jobs that called for them. Which, duh. I suppose you could argue that specific majors aren’t subject to supply and demand in the same way as college degrees in general, but… why wouldn’t they be?
Look, we have experience in this regard. Some geniuses decided the pharmacy was a “safe harbor” for jobs, thanks to a perceived shortage of trained pharmacists. In 20 years, American colleges started some sixty or so new schools of Pharmacy, all of which started cranking out new graduates. Can you guess what happened next? Pharmacy school graduates emerged into a world where they suddenly had vastly more labor market competition and the safe harbor didn’t look so safe anymore. Who could have predicted? The median pharmacist is still doing well I’m sure, but a) all of those pharmacy grads act as a headwind on their labor value and b) some nontrivial number of those new graduates will have dropped out or ended up in a job where they don’t use their pharmacy skills. Business strikes many people as the ultimate “practical major,” and yet in most of the metrics people throw around for post-graduate success, business majors only do alright, not great. But of course they only do alright - we graduate 350,000 of them a year! With that many people with the same degree scrambling to get the same finite number of jobs, alright is the best we could possibly expect.
For all of the constant “learn to code” rhetoric out there to work, you’d have to believe that there’s essentially insatiable demand for coders, that there’s always going to be more and more jobs that need them. That does not seem to reflect a real-world economic reality to me. All of this is particularly stupid because the great advantage of coding is that code is infinitely and costlessly replicable. If you make a physical product no matter how efficiently you do so there will always be at least some relationship between how much you can scale up your production and the number of people you employ. Sometime has to make the thing. GM can automate as much of their factories as they like, they’ll still have some degree of labor costs that scales with increased production.
But code is immediately and infinitely replicable; a team of six coders can make an app that 1,000 people use or that 100,000,000 people use, and while the server costs might go up in the latter instance, the labor costs are exactly the same. Indeed, a huge advantage of software companies (bits not atoms) is that they can have very low labor costs relative to their size! In my experience tech companies hate hiring and want to stay as lean as possible. And these are the firms a ton of otherwise bright people are expecting to essentially carry out economy. Recent results are discouraging for the youngest computer scientists.
(Here’s where I remind you that the fastest-growing job in the United States, by some measures, is home health aide, which requires no education or training and averages less than $15/hour nationwide.)
People in STEM fields have been sounding the alarm on this for a long time. I myself argued at length that there was no STEM shortage ten years ago. To the degree that computer science remains an attractive field, it’s in part due to dynamics that are perverse in this context: many, many people try to join the field and can’t hack it, ending up dropping out of their programs or collecting their degrees and shuffling off to look for good white collar email jobs where they’ll never use the skillset they acquired. And, look, ask the median recent computer science graduate if their labor market is the land of milk and honey. Not your Stanford or CalTech grads, but the median graduate from an average state school. It’s them that policy has to cater to. Better yet, ask a professor at a good-but-not-exclusive public university whether they think their students will just breeze into jobs because they learned to code, even with all that new competition in the chart up there at the top. They’ll tell you. The point is not that their prospects are particularly bad but that a) the major has been sold as the key to riches by a lot of people who are long on rhetoric and short on sense and b) that very cultural expectation that computer science is a safe major makes it less safe!
Labor markets are not determiners of virtue where the practical and hardworking are guaranteed to be rewarded. Ask petrochemical engineering specialists if outside forces impact their labor markets.
When I was at Purdue I was once walking across a quad with a friend of mine, guy from China getting his PhD in Electrical Engineering. They were doing one of those job fair things where big recruiters like Microsoft and the NSA were trying to entice our students to apply. I made some comment about how valuable a Purdue degree must be in those fields, and my friend laughed. “They're all trying to hire the same 50 students,” he said.
They were trying, in other words, to hire the 50 most talented and intelligent students, not the median Purdue student. And the median Purdue student is probably a good bit ahead of the median American college student. The real valuable advice is not “learn to code,” but “be smart and talented.” This is doubly unfortunate, though, as we don't have a reliable path to becoming smart and talented, and also discussion of talent and intelligent has been written out of our policy conversations, seemingly because it’s deemed impolite. Personally, I would much rather be a talented and adaptable Classics major than a computer science major who’s less bright, less talented, and less able to adapt to an endlessly-changing labor market.
Programmers are born, not made. I've known plenty of people with advanced degrees in CS who couldn't code their way out of a paper bag.
One of many big motivations behind my current path was learning that something like 70% of CPAs are going to retire in the next decade. Accountants, while not paid poorly, consistently are paid less than MBAs and finance people so those two disciplines siphoned off many students, especially MBAs because the academic knowledge is much less rigorous. It also helped that I already was working as an accountant and just wanted to remove the ceiling to advancements.
Anyhow, liberal learn to code rhetoric is a complete crock for the very simple reason that you can't make income distribution more equal without actually doing so. If we live in a highly stratified society it won't make a lick of difference if you hand out PhDs in ComSci to every man, woman, and child. Someone will still have to be poor. This was never a solution and I'm sure you know it.