GitHub CoPilot — My Impressions thus far
I have been using GitHub CoPilot for last few Weeks and I must say
This AI will boost your productivity upto 200%
So What is GitHub CoPilot ?
GitHub CoPilot is your AI pair programmer . With GitHub Copilot, get suggestions for whole lines or entire functions right inside your editor. Trained on billions of lines of public code, GitHub Copilot puts the knowledge you need at your fingertips, saving you time and helping you stay focused.
How Does it Help You??
- Convert comments to code: Write a comment describing the logic you want, and let GitHub Copilot assemble the code for you.
- Autofill for repetitive code. GitHub Copilot works great for quickly producing boilerplate and repetitive code patterns. Feed it a few examples and let it generate the rest!
- Tests without the toil. Tests are the backbone of any robust software engineering project. Import a unit test package, and let GitHub Copilot suggest tests that match your implementation code.
- Show you alternatives. Want to evaluate a few different approaches? GitHub Copilot can show you a list of solutions. Use the code as provided, or edit it to meet your needs. It currently shows 10 different solution. With GitHub Copilot, you’re always in charge. You can cycle through alternative suggestions, choose which to accept or reject, and manually edit suggested code. GitHub Copilot adapts to the edits you make, matching your coding style.
How Did CoPilot Helped Me ?
Whether it was to fetch data from an api or creating an data Model, CoPilot helped me a ton in each and every situation. It also helped me solving DSA based questions(which I found freaking awesome abt it). So yes, this can be your buddy in next of those leetcode and codechef challenges. It does solve your entire question but can help you implementing an algortithm or creating a data strucuture.
Let’s Take an Example
In C++ , it does not give you whole block of suggestion instead it suggests line by line. The following example here:
As you can See , I told CoPilot to create a singly Linked List and you can see what results it . So saves a lot of time and writing the relevant code for you.
Though It’s Not Perfect!!!
Even though GitHub CoPilot made me go Wow on the code snippets , it provided some bizzare results on some part of the code. Sometimes it extracts and entire code written by someone(which you do not want that).
It produces absolute bizzare code in flutter(dart). It suggests those parameters which does not exists in the following widget
Here, I tried to implement an App Drawer in a test App. But it suggested those parameters which never existed in the drawer widget.
CoPilot also gets stuck some time repeating same type of code again and again. Like suggesting same type of comment everytime. CoPilot always suggest BruteForce approach of a DSA question first (you can find the optimised approach in the list of suggested snippets of CoPilot by pressing Ctrl(command for mac) + Enter) .
SO YES, IT NEEDS TO LEARN A LOT !!
Considering its still in Techincal preview , I am satisfied with GitHub CoPilot so far. The code you want from CoPilot , 90% of the time it will give you accurate code results. It needs to expand his horizon towards more languages but right now for the popular languages like Js,cpp,java,go — it’s almost stable , provide correct suggestions and can make your coding life a bit easier.
I am totally in love with GitHub CoPilot 💓 thus far and recommend everyone to signup for TechnicalPreview.
Till then stay tuned ✌️