Artificial intelligence is topping headlines. Whether it’s self-driving cars or Alexa storing your grocery preferences, it seems that AI is finding its way in to just about everything these days, and the implications for daily life and work over the next decade are likely to be significant.
Many jobs are at risk for disruption, and cities across the country are thinking about how to prepare their economies for a world in which AI is everywhere. Nothing is safe from speculation, so it should come as no surprise that even coding has come under scrutiny as a skill that may become obsolete in this brave new artificially intelligent world. As one Quartz article put it, coding may soon become “as useful as learning ancient Greek.”
In recent years, the “learn to code” movement has exploded. It seems everyone — from politicians to tech industry leaders — has become a champion of the importance of learning to code. Programs like Code.org strive to make exposure to coding more ubiquitous for kids across the country and advocate for more robust computer science curriculum for all students. Coding bootcamps have popped up all across the country to target this very phenomenon.
This calls into question: Is the coding movement overhyped? Is there value to learning to code, or is it just one more skill that will be automated by artificial intelligence?
The above-mentioned Quartz article rightly points out that the ultimate objective of programming is to communicate what you want a system to do. It’s true that before long, AI will make that communication feedback loop much easier for people who have no idea how to write code. What implications does that have for businesses? For employees in tech? For students and younger generations? We’ve been told for around a decade that coding is the No. 1 skill for workers to have, but does that assertion still hold true?
This kind of thinking is counterintuitive. The question is not which specific tasks will be automated, but rather what types of skills will be perpetually important. In practical terms, we’re nowhere near the level of automated coding capability that would put developers out of a job. Businesses and employees who make decisions based on the assumption that coding is close to obsolete will be sorely disappointed.
More importantly, however, the capacity to solve problems as well as the ability to understand how technical systems work and improve upon them will only grow in importance as technical systems come to govern more of our daily processes.
As more industries incorporate artificial intelligence into their operations, most of the U.S. workforce will require a basic knowledge of coding. AI will create more technologically advanced careers as it displaces some of the more labor-intensive jobs. As a result, human labor will become more specialized and technical, requiring at least a basic understanding of how these systems operate.
Automated Coding Has a Long Way to Go
Automated code generation won’t be perfected in the near future, and even as it gains popularity, there will be limits to what it can do. GitHub is giving automated coding a shot on its platform, but it’s in an early stage.
Right now, GitHub’s automated coding is simply evaluating code to discover whether it’s relying on packages with known vulnerabilities. When it finds one, it might suggest a fix. None of it requires the creative thinking that actual coding needs. That’s hardly taking over any jobs or making coding an obsolete language.
There are other systems testing automated coding, too. For instance, for AI to reliably create code, it’s essential for it to understand the problem you’re trying to solve. Microsoft and Cambridge have taken a step in making this possible with their DeepCoder algorithm, but, again, it’s a relatively small step.
Researchers showed DeepCoder how basic code is used to solve simple math problems. When given a new problem, the algorithm solves it by predicting what would have been used to solve similar problems. It learns how to create its own solutions. It’s extremely impressive, but the algorithm can only work with a few lines of code. Entire programming languages are far too complex for the tool to sort out.
For the foreseeable future, technologically skilled humans will be needed to understand how programming code is being utilized, realize its potential to increase productivity, and make relevant decisions based on that knowledge.
Skills That Can’t Be Automated
Learning basic coding skills provides the building blocks to make a system function; furthermore, these skills empower humans to fully understand the role of technology in society and the ways it can be controlled to solve problems. To Apple CEO Tim Cook, coding is the most important second language for kids to learn. “It’s the language that everyone needs,” he says, “and not just for computer scientists…you can [use it to] express yourself to 7 billion people in the world.”
It is impossible to know exactly where innovations in automation will lead. That being said, it will likely lead to a world where even more of life and jobs involve interacting with technology. In that case, having a greater level of literacy in how to build, manage, and iterate technical systems will be a boon. Thus, learning to code — at least enough to gain insight into these systems — will remain valuable.
Much of automation will focus on taking over a large share of the more mundane tasks. In fact, according to futurist Martin Ford, jobs that will most likely be automated are those that are repetitious and predictable. The creativity to solve problems in ways that benefit everyone, to shift a company’s focus from one goal to the next, and to respond fluidly to trends and outside influences will continue to be important no matter what systems are being used. These are the very skills that learning to code cultivates.
As many industries become more dependent on automation, more computing jobs will be needed in those industries, not fewer. Again, coding requires a certain level of creativity to solve problems, and automated artificial intelligence hasn’t mastered this skill — it’s still rule-based.
The ability to build and cultivate relationships with people is vital in many different industries; it’s yet another area where, for the foreseeable future, humans have the upper hand to machines. From medical professionals and their patients to businesses and their clients, relationships are the backbone of many companies’ strategies. While jobs that require such skills won’t disappear, the required skills for these jobs will become more advanced as they incorporate AI into other processes.
Even as AI gets smarter and potentially develops greater ability to generate code, it won’t replace the need for human coders. It will, however, create a need for coders to be more creative and beef up their data science and AI skills, as well as learn new technologies like how to code for IoT products and platforms. As more people learn to code, they’ll be able to more effectively harness new technology to identify issues, create solutions, and change how the world works.
As technology and languages are always changing, learning to code encourages lifelong learning, a habit that will only become more vital in the future. This is why disregarding the importance of coding is dangerous. Those who assume that learning code will soon be useless will be discouraged from acquiring those new skills — and that’s when their jobs will truly be at risk.
We’re still in the early stages of AI, and coding skills will be essential to moving it forward. As technology and artificial intelligence take more of a hold on our economy, the ability to code will only become more integral to each company, industry, and the economy as a whole.