I had to learn emacs for my engineering computation class, up to the point that we were required to present our code in emacs if we had questions to ask during office hours.
I’m just an emacs … enjoyer (…?) and I just don’t understand the post. I’m pretty sure buffers here refer to something different from emacs buffers as they’re completely unrelated to clipboards. Then from a quick scan of the plug-in mentioned it seems to mimic the clipboard ring emacs has had for many decades (always?).
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.
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)
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.
Typical issue of the corportate programming world being a hivemind. Just because many big tech companies use it you can’t blindly implement it for your 5 developer team.
And it for sure has its usecases - like if you run something with constant load swings that does n’t need to be 100 percent accurate like Youtube it makes sense. You can have a service for searches, comments, transcoding, recommendations, … which all scale independently trading in some accuracy. Like when you post a comment another person doesn’t need to see it within 1 second on another comment service instance.
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.
The other poster is either speaking from a place of ignorance, as they’ve never really used it, of they just aren’t smart enough to learn how to use a new tool.
As much as middle management sucks, devs blaming management for their own inability to learn is almost on the same level.
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.
Yeah, usually it’s pretty good autocomplete. Definitely makes my coding faster (and highlighting a chunk of SQL and asking it to modify it in plain English is magic)
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?
I do go file by file, but I just copy and paste the same query into each. It also gives me a chance to do a quick review before moving on. It’s still a manual process but it’s a HELL of a lot faster than manually refactoring.
(I can’t give too many more details though since I use proprietary software that isn’t public facing)
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.
It’s a tool like any other, appropriate under some circumstances and inappropriate in others.
Blindly rejecting it without considering whether it’s appropriate in the context is honestly just as bad as choosing it without considering whether it’s appropriate in the context, fwiw.
Pretty sure microservice architecture was invented by enterprise architects as a way to justify their existence, and by dev teams in general to explain why adding new features now takes so long (we have adopted best practice!).
programmer_humor
Active
This magazine is from a federated server and may be incomplete. Browse more on the original instance.