Microsoft and Github have developed copilot with the help of openAI, an artificial intelligence research company already supported by Microsoft since 2019.
On June 29, Microsoft and OpenAI announced they were introducing GitHub Copilot, a tool that takes advantage of GitHub’s huge code repository to help developers by offering them pair programming, the classic pair development mode of agile methodologies, but in this case, using artificial intelligence, which auto-completes with suggestions lines of code or even entire functions within its editing tool.
Microsoft’s idea is to simplify the programming process, with the idea of keeping programmers who use the company’s tools loyal while attracting others. The system is based on the huge amount of source code that has been uploaded over the years to the code-sharing service GitHub, which Microsoft acquired in 2018, as well as on other websites. Microsoft and GitHub have developed Copilot with the help of OpenAI, an artificial intelligence research company already supported by Microsoft since 2019.
The idea of computers that can write their own code is not new, but until now they haven’t been very versatile, and programmers tended not to feel particularly comfortable with them. GitHub Copilot is different because it uses a large volume of code in multiple languages, as well as the computing power of Microsoft’s cloud, Azure: the tool looks at the code developers have written, their comments and cursor positions, and offers a number of possible lines to add, which the developer can accept or not. As the developer makes decisions regarding those suggestions, the wizard becomes more sophisticated. Based on testing in the GitHub development environment, a large number of developers have been testing the tool on a day-to-day basis, and most of them have accepted suggestions and have not turned off the feature.
Some developers have shown concern about the potential legal implications of using third-party code, for example, those that require attribution. As in previous cases, such as the use of image repositories shared under Creative Commons licenses to train facial recognition algorithms, the controversy is over the ownership of the material obtained from them, something that in the case of code is, to say the least, unusual. In the case of GitHub, we are talking not just about a huge repository of code shared over a long period of time, but code that is generally of very good quality: in general, developers upload code to GitHub after having ensured its quality and properly documented it, since this code becomes part of their profile as developers, making it their internet based CV for possible employers.
The same code can now be used by an artificial intelligence tool to make suggestions to third parties to reuse it. In some cases, when it comes, for example, to managing external services, the advantage is obvious: developers do not have to study the APIs and features of the connectors of the service in question, and instead can directly accept a code suggestion from a module that already does it, check that it works properly, and focus their attention on something else.
On the other hand, it’s hard to avoid wondering if by contributing their own code and with the training provided by their use of the tool they are creating a feature that may end up replacing their own work: today it is an assistant for pair programming, tomorrow it’s taken a developer’s job and the development is done by the machine alone. This is a short-sighted approach: eventually, the machine will do all the work where human intelligence brings nothing to the party — but which is nonetheless real in the current context. If the future is that an increasing part of development will be done by artificial intelligence, my advice would be to focus on gaining a lot of experience in handling these kinds of artificial intelligence, which are already part of the environment, in order to be more competitive; but this is not an approach everybody can easily get on board with, and many, in fact, have reacted negatively.
Let’s see how the use of GitHub Copilot evolves. But we are certainly at the beginning of something very interesting.
This post was previously published on Medium.
You Might Also Like These From The Good Men Project
Join The Good Men Project as a Premium Member today.
All Premium Members get to view The Good Men Project with NO ADS.
A $50 annual membership gives you an all access pass. You can be a part of every call, group, class and community.
A $25 annual membership gives you access to one class, one Social Interest group and our online communities.
A $12 annual membership gives you access to our Friday calls with the publisher, our online community.
Register New Account
Need more info? A complete list of benefits is here.
Photo credit: Shutterstock