You got it admit, it is a good suggestion. It just wasn't the right one. But it is trained well enough to correlate left and right together. Since those are very commonly associated together it is certainly a logical choice.
Ah, come-on, why do you think Eliza could do that 60 years ago?
(It couldn't. It's at most 40 years old technology, and way more likely just 30. Even though you could program Eliza to do something like this, it would be way too specific for any use.)
don't get the negativity towards copilot in other comments.
it's a really smart autocomplete, and this is exactly what i wanted for the past 5 years.
(yeah it's not going to replace programmers or whatever people's exaggerated opinions of it are)
wanna quickly create a wgpu bind group? let texture_bind_group = <tab> <tab> and it's smart enough to understand the context and pull in texture and texture sampler that are already defined as local variables.
too lazy to type this obvious thing in?
(like of course the next opcode islet op = self.fetch();)
just press tab and move on with your life.
wanna quickly refactor something?
select, ask CP Chat to "replace all if statements with match", check if it's correct and click confirm (it will even show git-style diffs, so it's hard for something unexpected to slip in)
it's not perfect, and it's suggestions do not match your intention like 50% of the time but when they do match or your intention is REALLY obvious (like you already wrote a clear and concise variable name and need to complete the value), you're a single keypress away from completing those 2 lines of code
It's not a total deal breaker but it's definitely very useful. (especially for me, because of my very short attention span. unless i can quickly complete a thing I'm currently working on in less than a minute i will forget about the next 10 things I was thinking of doing)
also i don't believe the price is justified, but it's free for students so of course I'm gonna use it.
(you just need to verify your student email and upload a photo of your student id on education.github.com, and you get a free gh copilot subscription, gh pro account, priority support and promos on loads of services like heroku etc while you're a student)
This has been the thing for me. I get really bored and lose focus when doing all the obvious repetitive stuff. And the obvious stuff is the stuff I find copilot does best. For anything that requires thought I'm engaged. Those are the fun parts of the job. It lets me do more of the fun part.
The one major downside that I've found is that sometimes I just want to tab complete a long variable/function name, and because of copilot i dont have "old style" tab completion anymore. (I could definitely still handle this myself, but i haven't)
edit: this all to say that I don't use copilot to write code that I don't know how to write, I use copilot to write code that I've written 1000 times before and don't want to write again. Copilot does a good job of looking through all the open files for context to help make sure the suggestions actually fit into the codebase's pre-existing style.
What's CP Chat? Im a bit afraid to type that into a search engine but it seems to be what I'm missing in my Copilot-assisted flow. It's a great autocomplete but sometimes refactoring would be useful too.
well I'm using lower-ish-level stuff like wgpu a lot, so there's a lot of repeated code in my codebase with only small variations, but I can't really encapsulate it into anything since all of my pipelines are completely different and have different requirements (it's basically already as encapsulated as it gets without limiting freedom)
Well, LLMs are, at least. But also, autocomplete is already AI, so really LLMs are just glorified AI. And that checks out, they are the ones that get all the glory*. Everything else is just spooky algorithms.
I am just making fun of all those AI doomsayers on Reddit. It’s nowhere close enough to be even called such. It’s just a mindless algorithm, a tool. Math operation. Are calculators smart? Well yes from a certain point of view.
That's what I need most of the time, though. I don't see these AI things as replacing programmers or writing large chunks of code. I just see them as an improvement over the autocompletion/IntelliSense features we're all using already.
I was lucky enough to get in on my company's beta test for copilot.
When I hear people say it's bad, all that tells me is that they are either completely ignorant and have never really used it, or they aren't good at learning how to use new tools.
This wasn’t made for programmers. It was made for middle management who think the reason the ticket is taking so long is because the devs can’t type more words per minute.
i mean i still think tab/auto completion is good to save time.
the problem is when people become reliant on it and just have it write entire chucks of code without going through it and checking it or changing it after the baseline is done.
Stuff like this is really useful when variable names are annoying, or when you have to repeat the same monotonous pattern over a large batch of code.
My favorite use of AI in code so far has been refactoring deprecated feature flags. "Replace enableXYZFeatureFlag with true and optimize the code". Bam, 1-2 hours' worth of crunch work solved in minutes.
If it takes 1+ hours of work to remove a feature flag branch in an area of code, I wouldn't trust the correctness of anything the AI writes and would be super skeptical about anything the humans had written.
Can you please describe how you do this? I thought Github Copilot can only make changes to the currently open tab? It's been a few months since I've used it, and I've only used the Visual Studio version, which I think isn't as good as the Visual Studio Code version. Has Copilot already gotten to the point where you can tell it to make changes to an entire codebase?
You could say that about any kind of autocomplete. Why would people install snippet plugins into their vim/emacs? Sure you can just type everything by hand but it's just more convenient.
Personally I find these kinds of inline AI suggestions make a more convincing use case than trying to prompt engineer a Chat based LLM and diverting your attention to phrasing specifics instead of the actual problem space.