The Github Copilot : All You Need To Know !

The Github Copilot : All You Need To Know !

Let's talk about Github Copilot as currently, all the cool kids are talking about it & I can't afford to miss out. πŸ˜„

So, after reading this blog you will know :

  • What is Github Copilot?
  • Who made it ?
  • How does it work?
  • And obviously - Should you be worried about it as a Programmer?

Let's dive right into it ! πŸš€Woah hold on a second if you are a video person I've got you covered my friend β£πŸ‘‡:

What is Github Copilot?

As said by Github CEO Nat Friedman :

"GitHub Copilot, a new AI pair programmer that helps you write better code."

It gets the context from the code you’re working on and gives you suggestions starting from a line to entire functions. It suggests different ways to solve a problem without you needing to get out of the editor searching for resources and code to solve that problem.

And not only that, but according to Github it also adapts itself according to the way you write code thus eventually helping you to complete your work faster.

Who made it? πŸ› 

Well, this is the by-product of the 1 Billion Dollar investment that Microsoft had made into OpenAI as obviously, they realized that OpenAI has resources enough to build State of the Art AI systems which it did with GPT-3.

So as Microsoft owns Github thus Copilot is made in collaboration with OpenAI's Codex.

Well, what is Codex? πŸ€·β€β™‚οΈ

It is a new AI system created by OpenAI. Codex has a broad knowledge of how people use code and is significantly more capable than GPT-3 in code generation.

Why they say that it is more capable than GPT-3 is because you must have seen those videos when GPT-3 created small elements website by some prompts asking it to do that. But it failed to do core programming stuff that actual programmers do.

But with Codex that changes because it was trained on a data set that includes a much larger concentration of public source code

How does it work? πŸ‘©β€πŸ’»

As described by OpenAI's CEO Greg Brockman - It is a descendant of GPT-3 but narrowly focused on code generation.

The Codex has been trained of tons of data pulled from obviously Github and probably public code sites like StackOverflow. BTW, which was just sold recently at $1.8 Billion to Prosus. That's a sus, just before the release of Copilot : ) Just kidding πŸ˜„.

But technically speaking this is how it works, as you write a comment or function name telling to do something :

  • It sends the prompt to the Github Copilot Services.
  • Which in turn uses the Codex algorithm to Synthesize & suggest you back.

Github Copilot -Saumya Ranjan Nayak

And notice I tell "Synthesize" because it does not just provide you trivial auto-completion like most other products do rather it customizes the code according to your ask.

Should you be worried about it as a Programmer? πŸ“Œ

If you are a person who has used GPT-3 or Copilot you obviously know that it's not in any way going to replace humans but will definitely be a great partner. As it still makes really silly mistakes and sometimes you will now understand what it is trying to suggest which is a caveat that comes with every tech and especially with AI in it's current early days.

You will see people talking about things like - These billion-dollar companies are trying to replace programmers using AI but I don't think that is the goal.

If you have been using and following Github on Twitter n stuff you will see how much work they are putting in to make the life of programmers more smooth and automated. The whole past year they have been releasing some really great features that is being loved by everyone.

And like that Copilot is just a very big leap with the same goal - "To make programmers as efficient as possible."

Well, now they would have thought at first - How do we do this? Now the most common pattern of how a programmer works is :

  • You have to implement something.
  • Obviously, as you are a programmer you know the rules and with some thinking the way to do it too.
  • But as a human, you don't remember all the resources or the exact code to implement that feature.
  • So what we do is go to the almighty Google and search whatever it is, read a bunch of Stackoverflow answers, come back to the editor try stuff and this cycle repeats until we get what we want.

Well, then the most obvious thing that can be done to improve a programmer's efficiency is to bring the code to him instead of him going out and searching the code.

And I believe that's what Copilot is solving and also according to Github it's a Pair Programmer, not a Programmer.

At the end of the day, we both need it each to improve whatever we lack at, it will help us with its fastness and accuracy & we as humans will correct it with our creativity. ❣

That was romantic enough to end this blog. Let me know your thoughts below and I will see you in the next one. πŸ™πŸ‘‹

Did you find this article valuable?

Support Saumya Nayak's Blog by becoming a sponsor. Any amount is appreciated!