A few days ago I was granted access to GitHub’s Copilot app, which uses “artificial intelligence” to write your own code for you. The irony that software developers have written software to replace software developers was not lost on anyone, by the way.
But now that I’ve had some time to work with the coding robot at my real-world software job, I keep coming to the same two conclusions: 1. It definitely isn’t going to replace any software developers, and 2. it definitely rocks.
You might be interested in reading about how it works. It works like this. You begin typing some code—any code—and it figures out what you’re trying to do and then writes the code for you. Here’s an example where all I did was name a function something descriptive and it literally just wrote it for me:
Additionally you can just write a few comments describing what you’re about to do, and it’ll finish writing those comments for you as well, and then for good measure will just go right ahead and write the code for you too.
What would’ve taken me, I don’t know, eight to twelve minutes?, of Googling and reading comments on Stack Overflow, then physically typing and formatting a function has now taken me about five seconds. So before we start with the detached cynicism or oh-so-clever contrarianism, we can plainly see that this thing rocks.
But let’s turn to cynicism for a moment, since cynicism has its place in evaluating new technology. Your first hot take might be something along the lines of: “Hey. That’s just basically Googling and reading comments on Stack Overflow, then putting the synthesized answer in your tab-complete. That’s not novel or cool.”
My answer to that is, it is certainly not a novel process, but it is very cool, since I don’t have to do that process anymore, a process that has always kind of sucked. Additionally, the fact it isn’t actually coding is in fact a good thing, because, as Stack Overflow hasn’t put any software developers out of jobs, Github’s code robot won’t either. Nobody’s VP of Technology has hired one less developer because comments on Stack Overflow already tell you how to write a prime number solving function.
“Okay but by autocompleting whole functions, you’re no longer forced to reason about the internals of that function. If you just rely on the robot to write the guts of everything, you’ll be dumber and quite unable to write these kinds of functions from scratch in the future!”
My answer to that is, you are completely correct, and I officially no longer care about being able to write, line-by-line, code that can now be reproduced by a robot. Like the first generation of programmers who had to write assembly language by hand moaned about how kids these days no longer needed to worry about bytecode, and then THOSE kids got older and moaned about how kids these days no longer needed to worry about memory allocation, etc, software development gatekeeping based on what you already learned is hypocritical and, ultimately, will be the losing side of the argument.
The argument, by the way, that Github’s code robot will make software worse is proved wrong by the fact that all software already sucks extremely hard. And at least now I don’t have to waste so much time writing it.