DEV Community

EdemGold
EdemGold

Posted on

GitHub Co-Pilot in a Nutshell

“We cannot solve our problems with the same thinking we used when we created them.” Albert Einstein

Summary

  • GitHub Copilot is an AI pair programmer.
  • It was built by GitHub in collaboration with Open Ai.
  • It helps Software Developers by providing code suggestions. -It is trained on billions of publicly available Code.
  • It provides support for a lot of popular programming languages.

ML_pic.jpg
Above is a picture of a robot thinking

GitHub just recently introduced their AI tool called GitHub Copilot which helps software developers write code.

But a lot of people don't know what the GitHub Copilot is, some aren't even aware it exists. That's what this article is for, to tell you all about the GitHub Copilot.

Let us Begin

What is the GitHub Copilot

GitHub Copilot is an AI pair programmer that helps developers write better code by giving suggestions based on the code being currently worked on.

It was created by GitHub in collaboration with Open AI.

GitHub Copilot is powered by OpenAI Codex, a new AI system created by OpenAI. OpenAI Codex has a broad knowledge of how people use code and is significantly more capable than GPT-3 in code generation, in part, because it was trained on a data set that includes a much larger concentration of public source code. GitHub Copilot works with a broad set of frameworks and languages, but this technical preview works especially well for Python, JavaScript, TypeScript, Ruby and Go.

In simple words, GitHub Copilot is Artificial Intelligence that helps software developers write better code by providing valid and well-tested suggestions to the code they are currently working on. It can be seen as an AI assistant which provides developers with code based on the code they are currently writing.

We have explained what GitHub Copilot is now let's see...

How it works

The way the GitHub pilot works is similar to how your phone's keyboard gives you word suggestions based on the words you are currently typing.

The Machine Learning model behind the GitHub Copilot has been trained on billions of lines of code — many of them are hosted and available publicly on GitHub itself. When you’re writing code, GitHub Copilot suggests code as you type. You can look through suggestions and decide either to accept or reject them, the same way you can choose whether to accept your phone's word suggestions or ignore them.

In order to figure out what you’re currently coding, GitHub Copilot tries to parse the meaning of a comment, the name of the function you are writing or the past couple of lines. The company shows a few demos on its website, which you can see by clicking here.

When you begin to write a function the AI then parses (understands) the start of the function and goes through its knowledge base to see if it has been trained on that function and if it has, it then gives you a code suggestion containing the function written in full.

Since the GitHub Copilot is AI it learns so if you then accept its code suggestion it marks that off and if you don't, it then learns from its mistakes and will be able to provide better suggestions to you or the next person to call that particular function.

Now we've explained how the GitHub CoPilot works let's talk about...

How it Helps

The GitHub Copilot helps promote developer productivity. As developers, we all know that most of the code we write isn't really groundbreaking it's just routine like maybe writing a function to output a result for a test. Now imagine if you didn't have to write that but instead you could have the GitHub Pilot do that for you

If you’re writing code every day, GitHub Copilot can be used to work with a new framework or library. You don’t have to read the documentation over and over again from start to finish as GitHub Copilot already knows the specific functions and features of the framework you’re working with. It could also replace many Stack Overflow queries😅.

The GitHub Copilot also help improve developer focus more on creativity rather than the grunt work of typing on the computer. As developers, our main jobs involve solving problems by writing code. And to do this we have to think outside of the box a lot and once we do that we then have to sit down and write the code to accompany our idea the GitHub pilot can help worth that by reducing the amount of time we have to sit to write code by giving us suggestions on the best code to put into our software to help us solve the problem.

With all these I'm sure some people are surely thinking...

Won't this be a threat to developers

As developers, most of our work involves dealing with people and thinking creatively and these are things AI doesn't have nailed down yet. Imagine the GitHub Copilot sitting down to listen to clients specifics about a job or having to listen to the boss talking about shipping a new feature early.

In simple words, the GitHub Copilot cannot replace developers because all it can do is write computer code and as developers, our jobs involve way more than that.

Conclusion

The GitHub Copilot is just a new piece of technology and we have no idea how successful it will become or if it will even help us as developers or become a pain in the ass.

But at the core of this let us remember that we weren't sure about metal with an engine that moves around, we weren't sure about we as humans living in a ball which spins around another big ball in fact we aren't sure about how our days are going to go.

In essence, our lives are filled with uncertainties what can we do but embrace them.

hey, you made it to the end of the article🎉 if you like what you read subscribe so you don't miss any upcoming articles.

Top comments (0)