The Future of Programming and GitHub CoPilot

The world of programming is ever-changing. There’s always something new, whether it’s a brand new language, the next big database, or even something as simple as a user created add-on. Despite these rapid new releases and changes, one thing remains certain: the programming industry will continuously increase in growth and demand for years to come.

One perfect example of new technology in the programming field is the recent creation of GitHub CoPilot. GitHub CoPilot is an advanced Visual Studio extension that uses artificial intelligence to provide developers with code based on what they type out. For example, if the user types something like:

“create a function assessTime that counts the time between each user click”

This would allow the extension to automatically create a function assessTime, that creates a counter for how long it takes a user to click again after each previous click.

One great thing about CoPilot is that it works in multiple programming languages! GitHub claims that its CoPilot extension works great with dozens of popular programming languages, but as it is still in a “Technical Preview” mode, they claim it works best with Python, JavaScript, TypeScript, Ruby, and Go. Imagine all of the possibilities of an AI partner to finish code snippets for you and even create entire scripts just by giving it a description in plain English!

Another key feature of CoPilot is that it learns with you. This means that as you create snippets, edit the auto generated code, or even create your own lines, it takes that into its database and memorizes your style! Once it knows you better, it will provide you with code that is very similar to how you would write it yourself. This allows for great consistency within your programs and makes everything easier to understand. GitHub even took things an extra mile, implementing a feature that lets you cycle through options of code in case the first result CoPilot returns isn’t one that you like.

With extensions that literally do all of the programming work for developers, some might wonder, is this the end of programming careers? Will anyone be able to create their own applications without any knowledge or practice? While these are great questions, the answer should remain clear. Despite these big changes to the industry, the jobs aren’t going anywhere.

Big companies will always need real people to manage certain aspects of development. These extensions, while getting smarter and smarter, will not be able to take over the careers through the rapid growth of programming jobs. Developers are still required to fix bugs and change the applications if the client desires anything different. Jobs like these are going to be available for the foreseeable future.

Yes, the creation of extensions like CoPilot makes programming easier and faster for everyone, but it still requires knowledge of code in order to make the programs match the desired outcome. If something goes wrong, it will be hard for an average person to go through the code and find the issue. Someone with no prior knowledge of programming would not be able to understand the concepts well enough to redesign the code and fix the errors.

On top of these notes, actual developers remain important for numerous other reasons. One of the most notable, at least with CoPilot, is that it does not write perfect code. This means that while it will make what the developer requests of it, the solution is often longer and more complicated than it has to be. CoPilot is a great tool to get things done quick, but it does not provide the best methods to do so. For this reason, developers should still prioritize doing things on their own afterwords and refactoring the code to become as optimized as it possibly can. CoPilot is best used for setting up the framework and tech demos before the final product.

For the foreseeable future, I believe that the programming industry is only going to get bigger and bigger. Despite numerous extensions, applications, and creations that make coding more accessible to everyone. This is because real people are still needed to modify, refactor, and optimize everything based on each specific application.

Don’t get me wrong, I see a big future with programs like GitHub’s CoPilot, but there will always be a place for a human mind in the tech field. With the advanced code snippets, detailed and fast creation of functions, and the other numerous uses of CoPilot make it very useful for setting up a quick and easy application with any language. However, it’s just that: a quick and easy application.

I believe that CoPilot and other similar programs should be put into practice by developers only as tools of visualization. To bring ideas to life quickly for a showcase or to see if an app could really work how it was visioned. After that, common practice should be to refactor and optimize the code, allowing for a more streamlined and smooth user interaction. Even with all of the amazing benefits of CoPilot, one thing will never change: talented developers will always have a place in the tech industry.

Software Engineer and Indie Game Developer