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.
One small quibble - you can’t really run an app with 100,000,000 users with the same dev team you would use for 1,000 users. There’s a lot more involved than just paying for more servers. You have to use different technologies, and have people with special knowledge that doesn’t come into play for a 1,000-user app.
But to your main point, I’m saying this as an adaptable person who is ten years into a successful career as a developer, and my college degree is in... “Jazz Studies” 😆
I think this is one of those things where the econ 101 story is straightforward (when Q goes up, P goes down) but the econ 304 story is more muddled. A surge in programmer supply could also raise demand for certain types of code.
People who work in tech but who have a limited upside on their coding abilities have more room to specialize and find a niche in the ecosystem where there is a huge rush to computer science. Your typical team of data scientists is now being supported by a team of data engineers that probably weren't in that group of sought after 50 purdue students. But because of the growth of the field there is now a niche that allows two different groups of non-top tier CS people to add marginal revenue.
This surge in supply is probably very bad for those at the very margin of the field. It is definitely actually good for those who are code competent but with a marketable complementary skill, and very good for those who are mid-tier CS people who can sell tools to that second group. (I don't think that's a insignificant chunk of jobs for computer science humans given how much of software is about keeping the damn site up and deploying new bits to the machines).