# Print an error message in red and exit if this program returns an error
and have it print out if ! some_program
then
echo -e "\e[31msome_program failed\e[0m"
exit 1
fi
makes it so much quicker to cobble together something that works without having to context switch and go Google something. That being said, I've found when writing more complex code it has a real tendency to introduce subtle bugs that can really catch you out if you're not paying attention.Purely from the amount of time I've saved I'd say it's well worth the $10/mo for my employer (it only has to save a few minutes a day to be worthwhile). Very excited to see how they improve it in the future!
Yea, that is basically my experience as well. On balance I feel I wasted about as much time debugging broken copilot code as I've saved from using it.
It's for the hobbyists that it's painful. Adding another 10 usd subscriptions might be too much for your budget, especially if you only code occasionally.
It would have been nice of them to introduce a free tier where you could use copilot for a few hours a month for free.
Yeah, it makes mistakes, sometimes it shows you i.e. the most common way to do something, even if that way has a bug in it.
Yes, sometimes it writes a complete blunder.
And yes again, sometimes there are very subtle logical mistakes in the code it proposes.
But overall? It's been great! Definitely worth the 10 bucks a month (especially with a developer salary). :insert shut up and take my money gif:
It's excellent for quickly writing slightly repetitive test cases; it's great as an autocomplete on steroids that completes entire lines + fills in all arguments, instead of just a single identifier; it's great for quickly writing nice contextual error messages (especially useful for Go developers and the constant errors.Wrap, Copilot is really good at writing meaningful error messages there); and it's also great for technical documentation, as it's able to autocomplete markdown (and it does it surprisingly well).
Overall, I definitely wouldn't want to go back to writing code without it. It just takes care of most of the mundane and obvious code for you, so you can take care of the interesting bits. It's like having the stereotypical "intern" as an associate built-in to your editor.
And sometimes, fairly rarely, but it happens, it's just surprising how good of a suggestion it can make.
It's also ridiculously flexible. When I start writing graphs in ASCII (cause I'm just quickly writing something down in a scratch file) it'll actually understand what I'm doing and start autocompleting textual nodes in that ASCII graph.
The thing ive most enjoyed is that it forces me to write out what I want to do in english before getting stuck in the weeds of how the code ought to work.
I've found if I explain the whole program ahead of time (the other day I wrote some python that converted the local time to display on a 13x13 grid of LEDs) co-pilot can write 90% of the code without me, just translating my explanation into python.
I thinking knowing how to express yourself to AI will be a unique skillset akin to being "good at googling"
I fear copilot may encourage these type of pseudo-code comments. The most valuable thing the AI doesn't know is WHY the code should do what it does.
Months later, we'll get to debug code that "nobody" wrote and find no hints of why it should behave that way, only comments stating what the code also says.
Seems we're replacing programming for reverse engineering generated code.
Ever considered parameterization?
I was skeptical going in, but ... wow. There were a lot of jaw-drop "how the hell did that just happen?" moments.
The systems ability to quickly learn form local code is especially impressive.
I had to implement a non-trivial Rust trait for about 20 types, which is not just copy-pastable between types or I would have used a macro. On the first one Copilot didn't have a clue what I wanted. The second one was halfway auto-completed. The other 18 were mostly just generated correctly, with some minor fixes required.
It literally was 5x faster than without Copilot.
And that's for a rather niche language with not that much code to learn from... I didn't even try it out with something like Java or Typescript.
Even in this early iteration the productivity boost would easily be worth 100+ for me, even though I'm not working all that much on repetitive code like REST endpoints or UI components.
The productivity benefits are worth more than $10/month easily, but somehow I still don't want to pay for it... maybe it's because they're using public domain code to train the model.
This includes a lot of code under copyleft licenses, and possibly even more code under no license at all (implicitly All Rights Reserved). It's not obvious to me that it's ethical (or possibly even legal) to sell a model derived from code not in the public domain.
(I think those cases would be mostly full lines that I know exist on other files in the project - but I don't want to go there, copy and paste if I can avoid it..)
Copilot clearly cost money to run, so it couldn't be given away forever. By putting a business model on it, it means it's less likely to be rugpulled in the future.
Are the productivity benefits worth more than $10/month?
Let's be on a more conservative end and say that an engineer gets paid $60/hour (i know that most engineers are salaried, so you will need to divide the monthly pay number pre-tax by 160 hours to get that hourly number). If copilot saved more than 10 minutes of your time a month, then yeah, it is worth more than $10/mo.
Do the math on this one yourself, based on how many hours you work in a month on average + your compensation for that time period.
I’ve been trailing the beta for the past few months and plan to recommend a corporate account to our leadership once it becomes available.
The calculus is $10 for a pizza or something for myself, or copilot.
Given that copilot has saved me too many hours to count, i.e. the 1 thing that truly matters, then it's a no-brainer.
You don’t need backcraft some moral argument. It’s trivial to see that a large amount of creativity went into developing the system, it’s not just a repackaging of public domain works.
I don’t care about getting a discount, just dislike being billed on two different billing cycles and it seems like a missed opportunity for them to get more devs on their paid tier.
Do you also consider it ethically questionable to look up oublic domain code on for inspiration (like on StackOverflow) while being paid $20,000/month?
Because I certainly do that plenty. I think most of us do
$10 a month for this is an unbelievably good deal!
If you value your time, this is a ridiculously good deal.
That being said, my biggest issue with CoPilot is that it's a ML system trained from open source and public repositories. Also straight from the website, "By using GitHub Copilot [...] you help to improve GitHub Copilot." I'm now paying for the privilege of handing over my data to GitHub so they can combine it with open source code to make more money off of people who are convinced it's somehow saving their company money.
Maybe people who used it didn't find enough value in it? Is that their fault?
I haven't used it, but it's certainly not immediately clear to me that there is enough value there to justify $10/mo.
5 minutes in my IDE and I'm already sold on trying it for the next month.
I'm also still skeptical about the legal aspects of it. Microsoft says that training the model is fair use. Good for them, but that's not applicable to me in any way.
(Shhhh don’t tell GitHub!)
I found it fun to play with for smaller projects, but during my day to day work I found that it always seemed to get in the way. You're trying to type out a function and Copilot is always there going "do you mean this", eventually you just turn it off.
I'm sure there are some good use cases for it, but in my line of work I found it to only really be useful for small things and toy projects where you are trying to demo the capabilities of Copilot more than you are trying to actually build an app.
That said, was highly disappointed with the switch to non-free. Maybe they never did say it would remain free, but they certainly didn't advertise it wouldn't be later. I feel bait-and-switched.
Yes, $10/mo. isn't a lot if you're getting paid to work, but if you're developing on side projects that aren't (yet?) making any revenue, it's kinda a dealbreaker.
# Print an error message in red and exit if this program returns an error
rm -rf /I don't need help parsing a string or iterating over a list.
Unless you want to pay for your IDE + Copilot with JetBrains, this will still benefit only Visual Studio Code, which Microsoft knows that you cannot beat free. So this a great resurgence of 'Embrace' with free developer tools.
On the other hand, Co-pilot is going to probably ruin the Leetcode, Hackerrank, Codility candidate as a candidate can Co-pilot the solution if not checked properly.
To use a famous example: if an AI were taught to perform heart surgery by viewing footage of skilled surgeons ... would it not be fair that those surgeons earn an on-going amount for their input? An input that is essential to the AIs function.
I worry this is the pointed end of the data hoarding big Co Internet. Our data is used to train models that (potentially, in future) degrade _our_ value while giving nothing back despite being used, unwillingly, to train their models.
That's clearly a remix of the work of others
And yes, MS is now monetising the work of others.
If I use a ii V I progression in my music, who gets compensated? I find most of co-pilots suggestions are similarly basic. Any lawsuit about whether an artist used a few of the same chords or a snippet of melody has been totally asinine IMO, like how all the money from "the thong song" went to ricky martin just because he was quoted for one measure.
when I write a few lines of code myself, should I search GitHub to make sure no one else has included the same algorithm in their codebase before slapping my own license on it?
By its very structure it's output always looks credible, and it's not always right-- it wouldn't be a sign of foul play if copilot suggested some code that looked just right but happened to backdoor your cryptosystem or protocol.
Maybe it would be a little tricky to get it to produce NOBUS vulnerabilities that were credible mistakes, but if the target isn't OSS then nobus isn't really that important.
I found it actually worse than useless in those cases. Often I will type a function name it will populate my function body with code that at a quick glance looks like exactly what I want, but at closer inspection is actually complete nonsense. Trying understand if the code it suggests actually does what I want or not is often slower than just writing the code.
>the Office will not register works “produced by a machine or mere mechanical process” that operates “without any creative input or intervention from a human author” because, under the statute, “a work must be created by a human being
https://www.copyright.gov/rulings-filings/review-board/docs/...
I suppose that something similar is at play here.
Poor show Microsoft - should've just been free as goodwill and to help people build software that can be deployed to Azure for the real money.
I still constantly get surprised by how good it is. Just now I had a function I was procrastinating and thought would take a long time to write. When I finally sat down to actually do it I typed the function name and Copilot just autocompleted the whole thing for me. I didn't have to modify it at all. I wonder what other things I am unnecessarily procrastinating.
I cannot share the code here, but to explain in simple terms I was able to write around 100 lines of code in say 10 seconds. I had a switch statement, around 7 variables with around 5 if conditions inside each case. I retrieve data from end point. Do JSON serialization. Convert JSON to a data class. Use the data . Loop over the data and then work with the elements.
Copilot, understood the first two conditions of what I was doing and just completed the rest for me. Replaced it with right variables, type annotations, etc.
I would definitely recommend this to any one at this price point. Sure, I was so happy using it for free since the launch of the product and did not expect it to be coming so soon out of waitlist. But it is ok to pay for it.
I use it on both VSCode and Neovim and it works beautifully with both editors.
PS: I was early adopter of TabNine too, have used it for quite some time, however Copilot would be my preference.
Unless I misunderstand something, its not yet for businesses right?
It also produces a ton of horrible, nonsense code. I totally agree that if github's corpus starts to fill with that stuff, the overall quality of github will tank and I wonder how they'll continue to train the model.
Now I have to gate declining quality marketed as a time saver. It really just moves the cost elsewhere.