Copilot Chat is here: Time for programmers to quit ChatGPT?

Copilot Chat is here: Time for programmers to quit ChatGPT?

Well, it's been a few days since I got early access to Github Copilot Chat. I certainly aint lying when I say I am impressed. So here am I providing my perspective on these recent developments and my two cents here and there.

First things first: How do you get access?

Email from Github

Provided you signed up as early as I did for the waitlist, you should receive an email like the above. You need to use the Code-insiders an upstream version of vscode with newer features. After that, add the extensions and link your GitHub. And Voila! You have made it.

What's New?

Code Explanation

For the last few months, if a large part of your schedule has been copy-pasting pieces of your code to ChatGPT and asking it to Explain, you are in for a treat. You can just do that much more efficiently with Copilot now. You just need to select the code and write /explain. Never have to worry about the ChatGPT word limit.

Github Copilot Explains Code Section

Bug Fixes

This one's my favorite. When you would have starch your head thinking why your code doesn't work. Copy the errors and search everywhere. Well, you could try asking Copilot. It magically solves the issues that are apparent like warnings and errors in the terminal. For the logical stuff, just like in ChatGPT, you have to give it some extra information. But the fact it makes the process so efficient and you don't need to switch tabs like a freak. Also, it has much more context inherently than you could provide to ChatGPT. Also, you can tell it to update some part of the code that may be seemingly correct.

Copilot Bug Fixes

Unit Tests

To use Copilot for test generation, developers simply need to provide the tool with a set of inputs and expected outputs for a given function or method. Copilot will then use this information to generate a set of test cases that can be used to verify the correctness of the code.

One of the key benefits of using Copilot for test generation is that it allows developers to generate test cases that are more comprehensive than those that are typically written by hand. This is because Copilot can generate test cases that cover a wider range of inputs and edge cases, reducing the risk of bugs and errors in the code.

Another benefit of using Copilot for test generation is that it can significantly reduce the amount of time and effort required to write and maintain test cases. This is especially true for large and complex codebases, where generating and maintaining test cases can be a significant challenge.

Copilot writing unit tests

How about Copilot itself?

Copilot has evolved immensely in this journey. From suggesting random things in the wrong language to even understanding my inner thoughts(maybe not). Let's take a moment.

Copilot's code suggestion feature can be used to generate code for a variety of programming languages, including JavaScript, Python, and Java. To use Copilot's code suggestion feature, simply start typing code in your editor. As you type, Copilot will suggest possible completions for your code. You can then accept or reject Copilot's suggestions, and Copilot will continue to generate new suggestions until you are satisfied.

Copilot's code suggestion feature can be a great way to save time and improve the quality of your code. Copilot can suggest code that is more efficient and idiomatic than code that you would write yourself. Copilot can also suggest code that is more consistent with the style and conventions of your project.

It's All Sunshine and Butterflies?

As you expected not quite. While the copilot does a pretty good job of providing code snippets - not so much with texts. I couldn't believe my eyes when it suggested this with little provocation.

Off course one must understand that the Chat models have been sanitized over and over again to make sure it doesn't go off the rails and yet it does. It is only natural for Copilot to behave unnaturally when performing tasks that it doesn't specialize on. But We all can strive for better, can't we?

What's Missing

A man could be given a mountain of gold. He would only strive to get another one.

We could certainly see the improvement in the chat itself. For example, the code it suggests should have context about all the chats I had in that particular workspace. GitHub themselves have revealed that giving access to all the open files has done wonders in the code suggestion. So this could be the next step. Off course we have the comments. But using the chat enhances that capability. And I don't see why we wouldn't see an update on that very soon.

Final Thoughts

Well it hasn't been a week since we are in this preview beta. It's not fair to judge even though they have done a spectacular job. And as for ChatGPT, it will be part of a programmer's life Always and Forever. We wouldn't have to endure and make it endure this unmeasurable pain to do every task with it.

In wrapping up, I'd love to hear your thoughts in the comments below. Your perspective is incredibly valuable to me, and I truly appreciate the time you've taken to read this article. Stay tuned for more captivating content as I explore fresh and exciting subjects. Thank you so much for your support, and I can't wait to catch up with you again soon.