GitHub Copilot—The New Era of Paired Programming
What is Github Copilot?
GitHub recently launched a new AI-powered tool that collaborates with people on their software development projects. Named as GitHub Copilot, this tool suggests lines or entire functions as the coder types. Just as Gmail offer...
blogs.wearemist.in4 min read
I've been playing around with Github Copilot for some time now, I gotta say its a pretty impressive tool that acomplishes decent results. Not the best but not the worst either.
During my tests, Copilot achieved some pretty nice results and some "meh" results, mainly due to how its constructed and how it sources its model from. Github has a lot of incredible and top-tier developers, but at the same time it has newbies and people who don't really know how to code. And this is kind of the bottleneck of Copilot, Copilot could practically revolutionice coding as we know it, but the way it sources its training models is the reason why its not the "next big thing" in my opinion.
Lets put it like this, you buy the world's finest spices and then you cook a 50¢ ramen block and add the spices there, what do you think its gonna happen? Yeah, the ramen will taste better but is it really the best it can get? Of course not! You could either stick with your 50¢ ramen block or spend the time and money on buying and cooking a proper ramen block and then add the spices. Github Copilot's training models work in a similar way. In one side you could have the best pieces of code written by experts and in another side you could have some newbie's janky code, and as Copilot's AI Training (sometimes) can't really differenciate what is good code and what is bad code, it results on Copilot spitting out non-sense or code that is pretty broken most of the time. This could be solved by adding some filters to Copilot and maybe adding an option to repos in the lines of "Allow Github Copilot to get data from this repository".
This would solve the "Github Copilot is breaking licenses" and the low-quality code that gets fed into the training model (unless a newbie or a troll enables that and just feeds it garbage code ofc).
My conclusion is this: Github Copilot is a promising tool that is on somewhat of a downward spiral due to the low-quality code on Github and on how it sometimes can't differentiate between intent (for the people who don't have access to Copilot, this happens really often). Which at the end of the day, its something that will (probably) get fixed once Copilot fully releases (if it ever releases anyways), and as of now, the only thing we can do to help Copilot. Is using it and reporting bugs and mishaps, so that stuff like this doesn't repeat in the future.