I do, it's helpful most of the time, mostly because it behaves like intelligent text expander, and couple of times a day I'm consciously aware how it helped me in even more "intelligent" way. There were also situations when it was distracting/confusing, but I can deal with it. I'm working as web dev, with TS, JS and PHP, and in my case there is no place for some great solutions that I wouldn't thought about myself (less than 5 times I've used something generated with comment), it's simply predicting what I want to do next in the line and instead of writing 50 chars to end that, I can hit tab. Honestly, I don't want to work without it anymore.
EDIT. regarding these situations when it doesn't predict what I wanted, I feel that my brain is getting better at not focusing at that and moving on. At first it was distracting, now I subconsciously know that the provided solution might be wrong and I'm deciding faster if it's something I should choose or skip. Your tool is adapting to you and you're adapting to your tool to find the right balance :)
Perhaps controversial, but maybe that's an issue with the PL - if higher level, domain specific, more powerful abstractions were baked into the language, maybe all the boilerplate would not be necessary.
Of course, getting a new language to wide spread adoption is far from trivial, but that's a separate problem.
The correct response to becoming obsolete is to learn something new, not to fight the thing making you obsolete. Doing the latter is about as productive as yelling at the tide to not come in.
It's irrelevant whether the technology is good or bad. There's nothing you can do to stop it happening, so do you want to complain, or do you want to embrace the change and stay ahead of the curve?
I profit from your obsolescence. I'm making you obsolete. I know what I'm doing. I'm making you worthless. The fact that you can fail to do even a basic check into me speaks volumes.
Writing boring chores or repetitive code is amazing. Need to handle all cases in a case in pretty much the same way but changing only one thing? Write the first one, the rest is auto coded perfectly.
> Need to handle all cases in a case in pretty much the same way but changing only one thing? Write the first one, the rest is auto coded perfectly.
As someone who has suffered though inheriting a code base of excessive copy/paste with things done "pretty much the same way but changing only one thing" it's a nightmare to take it to diff and try and refactor out the common code. In my case I had to fix a bug in their copy/paste mess and found six separate copies of a whole functions worth of code duplicated.
I suspect part of the reason is for the initial developer it's a great feeling to churn out tons of code and it all kind of works without having to think how you make a block of code generic (avoiding temptation to just pass in a global state struct and dealing with function pointers in the worst cases etc) but having suffered the after effects, I implore you, PLEASE don't repeat yourself (DRY)
But isn't much better to just manually code it into reusable function and use it repeatedly, instead of letting AI generates all the boilerplate code and causes maintenance headache down the road?
I do every day. I code 5 times faster on problems several times harder.
You also get good at 'using copilot' just like you can be 'good at googling'. So if you not already doing it. Start now.
IMO. There's literally no point coding without it. You are completely wasting your time. However it has limits. It only helps you write code. Architecture is still down to you. If it could read your whole codebase rather than just the page you are on. And if you could supply it prompts via urls. i.e. preloads it with hints from other code bases. Then it will really become something else.
True. My son is on the waiting list several week now. But honestly traditional coding is the past. Soon they might be asking for someone with 12 months copilot experience. I don't mind the negative downvotes from luddites. Copilot is smarter and faster than you. Accept it and learn to use it.
Does this mean that it couldn't potentially be a useful tool? No. I think it could be, and for some projects I would probably use it myself to speed up some laborious tasks. But currently, claiming it can help with anything remotely more complex is just untrue.
If you have evidence to the contrary, I'd like to see it.
Not sure what you would take as evidence. You seem convinced. I have github repos. If you like, take any app idea. In any language you want. We can both spend 2 weeks building it. Screen record yourself making it and ill use copilot, you don't. We can see who's is better?
edit.
- ok so you conceded in your sentence that it's faster and you would use it for that reason.
so your only disagreement is it can't help you solve harder problems?.
- the average dev is hitting stackoverflow 10x a day for that very reason. And that data is embedded in copilot. I've literally typed the name of functions I was going to have to spend 20 minutes googling to figure out how to achieve. typed the pseudo code comments and boom. copilot has done it before I even had to think. If not I just have to change how i prompt it by feeding it a few variable names or changing my comments. As I said. You can get good at using it. If copilot is crap it's because of the person using it. I.e. if you are looking for a bike and you google 'chicken sandwich' well. You aint gonna get a bike.
That sounds like an interesting idea, but to me a more convincing thing would be seeing the same person do something with + without copilot and see if it makes a big difference when used correctly.
To me 'smarter and faster' means being able to solve harder problems + accurately reason about things, etc. (And not introduce security issues, which is a whole other thing...)
If it is just a replacement for stackoverflow, it's probably useful and it could save time, but I'm not sure it's 'smarter and faster' any more than any other feature in an IDE (you could also create a hotkey or something to search SO which would probably be just as fast too).
You really notice when you don't have it anymore after using it for several weeks. Writing each line again, each painful character one at a time. I keep accidently opening sublime and going to type then realising it doesn't have copilot. And think ugh.
It's nice to reason about your actual problem and not the features of code.