Recently I heard about GitHub Copilot and thought it would be amazing. I was right . I applied for the waiting list and got access recently. It is amazing experience so far.
What is GitHub Copilot?
GitHub Copilot is the newest tool developed by GitHub to autocomplete code. It uses OpenAI for this purpose.
Copilot generates smart code suggestions with context, such as docstrings, code comments, function names, or even file names. It works with multiple languages like Python, JavaScript, TypeScript, Ruby and Go as well as dozens of other languages because it’s “trained on billions of lines of public code,” per the Copilot website.
Features
Copilot’s main feature is its autocomplete function. When typing a function description or comments,Copilot completes the whole function. User just have to press tab key to use the complete code.
For Example
I am using copilot in a project and it is saving my time by giving me valid suggestions.
For example when writing my Action it gives me whole suggestion and the suggestion was 100% right because I was going to write the same code.
My Point of View
I think GitHub Copilot will change the way we code. It will make things lot easier for developers. It is a good asset for developers.
Top comments (34)
Yeah I was perturbed when I saw how accurately it guessed what I wanted from code. I would add something in one file and swap to another file to interact with it and it instantly recognized and knew what to do with it. Freaky stuff, I turned it off because I'll never improve as a developer if I depend on this thing.
Though maybe the future is learning how to depend on it and be hyper-productive with it. Interesting thought...
Yes if you are Junior developer you shouldn't use this thing as it will limit your practices.
But I think this is somehow revolutionary. I always wonder if robots could create softwares without human. But it's not possible.
If you as a devoper learn patterns and concepts, best practcies etc, it only saves you time googling, stackoverflowing stuff.
IMO copy pasting from stackoverflow without understading the code is same as using blindly copilot, so in the end if you courius developer copilot will give you more options to think about and will act as huge snippets library
That is why i switch it off unless i am in a hurry to meet a deadline
I do not think so. it's like vscode and notepad. nodepad users are not sure to get better practice & learn more than vscode users.
on the contrary, copilot will help you save time google, you also learn from the code it suggests, you still have to edit the code to suit your project. and you have time to re-architect the whole project
Yeah that's what I thought too. New developers should not use this tool as this may stop them from learning new things
Yes.
It's been pretty neat for specific use cases to save a trip to google, for example sometimes i misremember how some CSS selectors work for nth-child and it automatically gives suggestions based on what I ask.
You haven't alas made it clear how this works. Github and my IDE are two different things, in fact I simply push code to github. To wit, I am curious how the Github and Copilot in Github Copilot interact and it's main feature of autocompletion I see no context for in my life. What context are you sharing?
For now, I'm just explaining the main feature of Copilot which is giving valid suggestions and code auto-completion.
The detailed Article is coming soon 🙂
But you haven't explained ;-). I have no clue how github and editing relate. Github to me is hosting .... a remote repo.
GitHub is just the company developing it. It's probably more accurate to call it Visual Studio Copilot - it's separate from the platform.
Thanks heaps Hannah for clarifying. Weird product naming and alas rules a pile of github users out because surprise surprise I'd confidently guess there are at least 3 maybe 10 or 20 github users for every Visual Studio user.
Github after is Microsoft's odd dive into a big FOSS world and FOSS developers are famed methinks for using a whole array of tools as long as they ain't MS, licensed or freemium (hamstrung so the minute you need a dev feature you hit the paywall). VS Code has made huge inroads though being free as in free beer and if copilot works there it'll boost that even more.
Me, nah, don't think I'll be Visual Studioing much. I mean I do use VS Studio on one job I have, but it takes little maintenance and I'm rarely in it, and I did use it for years commercially developing software and do like it to be honest, a rocking good IDE to be frank, but alas, as I dived more and more into github and FOSS over the years never adopted in in that context, in fact intently sought alternatives in the FOSS world and am very content.
TabNine does the same thing. Been using it for ages. Feels like it's reading my mind sometimes
maybe it does read minds, who knows?
It doesn't
TabNine wow!! I'll try this as well 😉
I have used it in a couple of projects and it has helped me a lot, especially in repetitive tasks such as creating a new endpoint, error handling even in the design of a bootstrap form and the best thing is that it gives you several suggestions and is going to adjust To your code and context, sometimes it has errors but as everything can be improving, definitely to be a beginning is going very well, in a future it would be great that it had a context of the whole project (although that seems to be a bit dark). Greetings, good article!
I got it recently too likely they recently rolled out another batch of users on the list. I quite like the hint offered almost instantly while typing. It mostly from myself for reuse my code but for certain commons methods it save me from remembering a lot of attributes. So far so good. If you haven't submitted your interest, better get it done sooner.
Yup, I also got its access recently.
And when I tried it, I was shocked. I didn't expected it to be this good.
I tried it in python tkinter. & not only it gives wonderful suggestions, its suggestions are also go well with the previously written code.
For eg. I just wrote a comment to make a window with date & time as labels. It showed me the perfect suggestion in tkinter with the window being a sub window for my main window. I was literally shocked to see this.
Yes this thing is amazing.
Yeah man. GitHub Copilot is good. It saves lot of time. But sometimes suggests wrong code.
Yeah it still learning
same here, still trying till got best suggestions
GitHub Copilot certainly has its strengths and weaknesses. Here’s a roundup of key takeaways:
Fewer browser searches: Common functional solutions are available after a few words + Tab, and established patterns used in the most used frameworks/libraries are there, too. It’s a great time-saver.
Context matters: “Context” is key here. The AI considers factors like the frameworks or libraries in use, the variables in the current file, and related files and scope in order to produce better suggestions. Patterns are also considered in part of the answer as well.
It's best for experienced developers: Although AI assistance might look like a good learning tool, it’s not. Code suggestions are just that: suggestions. The developer needs to be able to evaluate these suggestions and choose to accept, skip, or ignore them. In order to use the tool properly, it’s necessary to know the context, logic, and expected output to make a smart (and fast) decision. Otherwise, the suggestion can create errors.
If you would like to learn a bit more about GitHub Copilot, I'd suggest checking out this article written by my colleague, Rafael: scalablepath.com/full-stack/ai-pai...
Does it support every language? Because some new language doesn’t have much open source github projects to learn from.
As mentioned in the article it support JavaScript, Typescript, Python, Ruby and Go for now.
It support php as well, but I think it support a lot more than these languages, because it uses almost everything public on github