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.
I forget a lot of things, simple dumb stuff like type conversions or specific keywords spelling. Copilot takes care of 99% of that so I can focus on my higher level spec.
If anything sometimes it's too agressive. I start typing a word and it's already building up the rest of the application in a different direction...
I've had this experience too. Usually it's meh, but at one point it wrote an ENTIRE function by itself and it was correct. IT WAS CORRECT! And it wasn't some dumb boilerplate initialization either, it was actual logic with some loops. The context awareness with it is off the charts sometimes.
Regardless I find that while it's good for the generic python stuff I do in my free time, for the stuff I'm actually paid for? Basically useless since it's too niche. So not exactly worth the investment for me.
I find I spend my time reviewing Copilot suggestions (which are mostly wrong) rather than thinking about code and actually doing the work.
There's a ton of developer effort that went into Copilot and those devs should be paid fairly. But the majority of what fuels Copilot is the millions of lines of open source code submitted every day.
I think I'd feel a lot better about it if they committed a good chunk of that money back into the same open source communities they depend on. Otherwise its a parasitic (or at least not fully consensual) relationship
And no, I'm not a beginner. I'm a principal with over 20 years experience. I don't really use it for the Stack Overflow-type stuff, but even as an autocomplete it's worth the money. As it happens I'm apparently eligible for free access as an open source maintainer, but I'd pay $100/year in a heartbeat for it. I'd pay for Intellisense if that was $100 too.
I’m curious whether we’re talking 5% or 30%.
No it doesn't "understand what I'm doing" or "get everything right" but that's hardly the point
It's often reducing the amount of labor I'm doing by hitting the keyboard by guessing 90% correctly what I was going to type
It also often saves me from having to google how to do something, it's effectively serving me a search result right along my code
I'm lucky to be getting it for free but would have immediately paid $10. It needs to only save you minutes a month for that to be worth it
Also the comments about it being "unfair their monetizing other people's work" are missing the point.
Github has created a product that many people use and through that effort created a large repository of code.
They are now releasing a product that is going to create a large amount of of value in time saved and are maybe capturing 2% of that. This is a great outcome for everyone
It's definitely not perfect, but it's worth the price to me and if I can pay and help the product improve, it's a no-brainer.
It also saves a ton of time having to look up small pieces of syntax, I've taken to writing a lot of quick one-off scripts because copilot does a fairly decent job of generating code for the relatively simple individual steps.
The OpenAI threads are the exact opposite: The do not seem organic at all. Of course users probably do all the flagging, but it still gives a bad impression.
- It's an amazing all-rounder autocomplete for most boilerplate code. Generally anything that someone who's spent 5 minutes reading the code can do, Copilot can do just as well.
- It's terrible if you let it write too much. The biggest problem I've had is not that it doesn't write correctly, it's that it think it knows how and then produce good looking code at a glance but with wrong logic.
- Relying on its outside-code knowledge is also generally a recipe for disaster: e.g. I'm building a Riichi Mahjong engine and while it knows all the terms and how to put a sentence together describing the rules, it absolutely doesn't actually understand how "Chii" melds work
- Due to the licensing concerns I did not use CoPilot at all in work projects and I haven't felt like I was missing that much. A friend of mine also said he wouldn't be allowed to use it.
You can treat it as a pair programming session where you're the observer and write an outline while the AI does all the bulk work (but be wary), but at what point does it become such a better experience to justify 10$/mo? I don't understand if I've been using it wrong or what.
The more experience I get with GPT-3 type technologies, the more I would never let them near my code. It wasn't an intent of the technology per se, but it has proved to be very good at producing superficially appealing output that can stand up not only to a quick scan, but to a moderately deep reading, but still falls apart on a more careful reading. At least when that's in my prose it isn't cheerfully and plausibly charging the wrong customer or cheerfully and plausibly dereferencing a null pointer.
Or to put it another way, it's an uncanny valley type effect. All props and kudos to the technologists who developed it, it's a legitimate step forward in technology, but at the same time it's almost the most dangerous possible iteration of it, where it's good enough to fool a human functioning at anything other than the highest level of attentiveness but not good enough to be correct all the time. See also, the dangers of almost self-driving cars; either be self-driving or don't but don't expect halfway in between to work well.
I dismissed these concerns before I had early access.
Then, _literally the first characters I typed_ after enabling the extension were `//`, and it autosuggested:
// Copyright 2018 Google LLC
I immediately uninstalled it.https://mobile.twitter.com/mrm/status/1410658969803051012/ph...
> I am honestly flabbergasted they think it's worth 10$/mo
These two statments seem contradictory to me. Why are you using it 'non-stop' if it isn't even worth $10/month?
The completions are often trivial, but they save me from typing them by hand. Sometimes they are trivial yet still wrong so I need to make corrections, wasting some of the gained speed. In total these probably won't save me much time on a day.
However, every couple of days there is one of these cases, where it can do tedious work that really saves time and headaches.
Example: - After writing a Mapper that converts objects of type A to B, I needed the reverse. Co-Pilot generated it almost perfectly in an instant. This can easily save a minute or two, plus the thinking required. - For a scraper, I needed to add cookies from my browser into the request object. Basically, I pasted the cookie in a string, and typed `// add cookies`, and it generated the code to split the string, iterate over each cookie value and add it to the correct request field.
So if a few of these cases can save 10 minutes in a month, I feel it's objectively worth it. Then subjectively, not having the headaches of 'dumb stuff'/boilerplate feels great, and I am glad to spend my energy on the actual hard stuff. I will sign up as soon as their sign up page lets me.
I came to the same conclusion as you, you can see comments I made elsewhere in this thread. I'm not thrilled with it.
If it were $60 yearly it'd be an auto-yes for me.
The licensing problems make it impossible to use at work so I won’t use it for that.
People need to be aware of the security risks of letting microsoft read all your code as it’s sent to the servers copilot runs on. By my lights that’s almost as big of a problem as licensing.
I've rarely found that CoPilot produces more than a line or two of accurate code. How likely is it that one would run into licensing issues with a single line of code that looks similar to something from another codebase?
While I understand the problem in principle, I am really skeptical that significant licensing issues would really come up with using CoPilot as an individual.
Let's say the average developer in the US costs 10k a month (I think that's pretty close to the real average of around 120k a year). So copilot would cost .1% of that developer's salary. I realize calculating things around "improvements in developer productivity" involve lots of fuzzy math, but it would be stupid for any company NOT to pay this if it improves developer productivity by just 1%.
Another way to think about it that I think may be more "real world": Let's say I'm CTO of a big company with 1000 software developers. Do I think it's going to be a better investment to hire another developer so I have 1001 developers, or instead use that other developer's salary to buy all the devs at my company a Copilot license?
But for some reason individual developers think that anything over $1-2 dollars a month is an exhorbitant cost.
So the same problem ML has in every endeavor where we have a good metric of "correctness" that's distinct from plausibility, like OCR or natural language translation: very good at spitting out stuff that superficially resembles training data, and whether that happens to be right is totally accidental. Surprisingly good odds if you're working on something boring within the "bounds" of the model, sure, but also pretty likely to think that "now on sale" is a zillion times more likely to be announced on an advert than "a decision has been made to release this product (at an unspecified future date)."
it thinks it knows how and then produce good looking code at a glance but with wrong logic.
This is so accurate. I still like copilot and I might even pay for it, but I will never trust the logic. It always wrong in a way that _almost_ looks right.I’m honestly flabbergasted that anybody would think it isn’t worth $10 a month, despite its many serious flaws.
I think it is good for short lines, repeating tasks; for example when writing tests and want to assert different fields, assert string, int, etc; for these sort of lines was really good and fast.
my main problems: 1. sometimes make a horrible mistake, takes couple of minutes to understand 2. repeat the same mistake over and over 3. adding a single tab take a bit of time, had to copy & paste tab to avoid copilot suggestion!
It's an AI powered autocomplete. And honestly it's excellent at that. All I really want is an AI powered autocomplete and if a FLOSS project took up the challenge I'd happily donate $10/month to see it succeed. Especially if it meant none of the licensing concerns that come with GH Copilot
I can't justify $10 a month for it. Maybe as it improves.
EDIT: To clarify, $10 a month for personal use. We can't use it at work due to licensing, or it'd be worth that just to emit boilerplate.
If you're an engineer who is paid $150/hour and Copilot saves you 5 minutes/month it just paid for itself.
If you steal 10 lines of code from me, the damages will be the greater of:
- The benefit to you (10 minutes programmer time)
- The cost to me ($0)
- Statutory damages (probably $200)
In other words, it's very unlikely to be worth a lawsuit. The most likely outcome is:
- A legal letter is sent
- Infringing code is removed
- As good bedside manner, some nominal amount of money is transferred, mostly in some gesture designed to make the violated party feel good about themselves (e.g. a nice gift).
I know what you mean, but silly nit pick since you mentioned “commercial” twice - GPL v3 does not prevent commercial use, it only requires copies to be open source. For someone to notice the project has copied code and not be inside the company, the code would (probably) have to be open source. So, this hypothetical is less likely to happen than your comment makes it sound.
A little further off topic, but amusing to me, is that the US government defines “commercial” software to be any software that has a license other than public domain. Free and open source software, such as GPL v3, is still “commercial” because it is licensed to the public https://www.acquisition.gov/far/part-2#FAR_2_101
More on-topic now, a small single function accidentally copied from an open source project by automated software might be considered fair use by US copyright law. https://www.copyright.gov/fair-use/more-info.html
(Edit) Oh yeah, and I just remembered that GitHub’s Terms already carve a necessary exception to whatever license you use in your project, to allow Github to host & display your code. I assume those terms already include some CoPilot coverage…? If not, and if they aren’t legally covered already (which I bet they are), then they could change the terms to stipulate that hosting code on GitHub bars people from suing over incidental amounts of automated copying. Main point here being that the GPLv3 license on your project is neither the only nor the primary license governing GitHub’s relationship with your code.
Honest question: can a function have a license? Ie. can a function be copyrighted?
If an MIT library and a GPL library use the same function with some minor variation and I use the function from the GPL code in my commercial project, have I infringed on someone’s copyright/license? Or would be argument be that the function in question is not copyrightable as almost the same version exists licensed under MIT?
> body: `text=${text}`,
So it breaks if the text contains a '&' and even allows parameter injection to the call of the 3rd party service. Isn't that critical on a sentiment analysis API, but could result in actual security holes.
I hope the users won't blindly use the generated code without review. These mistakes can be so subtle, nobody even noticed them when they put them on the front page of the product.
1) You should have managed the expectations of the users in a better way. Tell them it will become a paid feature from the begining, so nobody gets surprised 2) The way everyone unsderstood this today was too aggresive. An infinite warning in visual studio saying "hey, i've stop working, please sign up and pay or uninstall me". Too violent.
A "Hey, we are happy you're using Copilot. We want to inform you that in 2 weeks we will close the beta and we will need you to sign up. But don't worry, it will be free for 60 days"
I'm sure 99% of people here would just be happy to pay those 10usd/month
So now each individual developer using it for work suddenly has to either pony up $10/month or figure out how to expense it.
Copilot is such a marvel though. I think they could have gotten away with it if they did like you say and give more of an advanced warning.
I don't want my code editor to try to up-sell me, ever.
> or assure the developer, that the inserted/suggested code is not a verbatim copy of existing code
No, it does not do that.
> How can developers be sure, that they are not violating licenses by using Copilot
There are no clear answers.
""" We built a filter to help detect and suppress the rare instances where a GitHub Copilot suggestion contains code that matches public code on GitHub. You have the choice to turn that filter on or off during setup. With the filter on, GitHub Copilot checks code suggestions with its surrounding code for matches or near matches (ignoring whitespace) against public code on GitHub of about 150 characters. If there is a match, the suggestion will not be shown to you. We plan on continuing to evolve this approach and welcome feedback and comment. """
So to avoid a violation a developer needs to perform a mind-wipe?
Maybe I'm using it wrong but I've hardly seen it pump out a mass volume of code.
That’s not a knock on Copilot, I think it’s a great product and I happily subscribed today after using it the last few months!
What is your time worth? You should easily get $60/hr, so you need to save 12 minutes per month to make it worth. I would pay that for all my employees.
CoPilot is not a replacement for writing code, but it’s incredible useful when you are stuck and or / write simple logic.
Often I don’t have the right method, function or logic on mind. Before I google, I write a comment of what I want and 8/10 CoPilot generates the right code.
Typing the comment, checking the solution, reformatting it is <<< less time than without it.
To me Github CoPilot is a standard part of my IDE and I wouldn’t want to miss it anymore. It saves me at least an hour a day of coding. Some stuff is really crazy. I invite you all to try to be open-minded. You have to experience it.
// You have to code for yourself
I don’t really like this argument, because if that argument would be true, we would also need to now how our codes translates to 1 and 0s and how the electronics build our application than. AutoComplete is part of our life on our phone and it can be with developing. Don’t make it harder as it needs to be.
For me the bottleneck is seldom typing. And while Copilot can sometimes dish out some more advanced stuff, I still have to verify it and understand it. Since I can basically solve every problem I encounter day-to-day, Copilot's contribution is not that useful.
It's incredible that we're able to do these things but awful at the same time since this data was / is not theirs. Same as something like Dall-E.
Also feels kind of icky to train on open source projects and then charge for the output.
To be specific, the FAQ states: "It has been trained on natural language text and source code from publicly available sources, including code in public repositories on GitHub."
Some have raised concerns that Copilot violates at least the spirit of many open source licenses, laundering otherwise unusable code by sprinkling magic AI dust... most likely leaving the Copilot user responsible for copyright infringement.
When I'm in the flow, trying to solve some algorithmic problem, I always turn it off because the BS suggestions coming from its little "mind" actually slow me down and mess with my focus. Which all makes sense when you realize what it ultimately is - a philosopher, as opposed to a mathematician.
Yeah, this feels like the same nonsense that scientific journal publishers pull. If your product only has value because of what we made, it's completely unfair to not pay us for our work and then to turn around and charge us to use the output.
Sure it has: Time.
In terms of economics it's really simple: Does Copilot free up more than 10$ worth of your time per month? If the product works at all as I understand it (I haven't tried), the answer should be a resounding "yes, and then some" for pretty much any SE, given the current market rates. If the answer is no (for example because it produces too many bad suggestions which break your flow), the product simply doesn't work.
There might be other reasons for you not to use it. Ego could be one. Your call.
> Also feels kind of icky to train on open source projects and then charge for the output.
I don't know why it would feel any more icky than making money off of open source in other ways.
What I pity however is that there's no free tier for hobbyists as paying a 10 usd monthly subscription wont make sense when you only code occasionally. For professionals using it everyday, 10 usd / month is inconsequential.
I don't think that would have costed them much more to offer a free allowance to cover say an average coding session of 8 hours per month.
"open source is great, except when it's used in a way I don't like"
You wouldn't have an issue with someone making money by using open source software (like a website that is hosted on a server running linux).
It's been really nice for autofilling console logs and boilerplate code...but $10? It's a novelty that is nice when it works, but that's a steep price point for what it is, and I don't see that changing any time soon.
The business model for most of the Internet is to bait people into using things for free and then monetize them without compensation in some roundabout way.
How would you feel if they just provided the software without the model, assuming you could train it yourself on open-source code in an instant?
Then the Internet and Google came around. I found that instead of me maintaining those code snippets, I could search in Excite/Altavista for how to do something, and it will be stored there for me. Later came sites like StackOverflow (expertssexchange before it) which concentrated much of that information which before was scattered in PHPBBs and Geocities pages.
Now I see this Copilot app like the evolution of that; Instead of having to manually go searching for a snippet, I imagine I can "pull it" almost automatically while I am writing code, with an AI helping me search for the right snippet with the current code context.
That doesn't sound bad at all.
Nevertheless, I haven't used it because I DON'T want my code to be sent to Microsoft or any other company. And I don't believe in adding random code for which I don't know the license! What if there is some code which was AGPL that Copilot happens to use? that's pretty bad.
How? I was in beta but looks like I'm kicked out. I also verified my student status but get prompted to pay. Are you a maintainer? Have you verified that you have access?
Copilot is marketed as a pair programmer but the code quality is often times just wrong, not just bad. It thinks it understands what I want based on the function name and parameters but the generated output is no where close to what I want.
Multiline AI generated suggestions are not a good idea anyway (not yet at least). AI based LSP/auto completer would be much better at this stage with a lot faster DX.
I've been in the beta since almost the beginning I have not really seen much improvement on the frontend side. Since its release, the changelog only mentions 10 small (or so it seems) improvements
https://marketplace.visualstudio.com/items/GitHub.copilot-ni...
On the backend side, I feel like I've started to "figure out" copilot a little bit. One thing I'd like to see is inline completion which I think gpt3 can do now but copilot which I believe it's based on cannot.
I think I will pay to continue, but I'd like to see some frontend improvements and maybe some backend alternatives. Ideally I'd love this to be open source but compute power doesn't seem feasible (?) unless we start magically crowd sourcing our computers to run a model somehow.
EDIT: looks like I'm getting it for free because of my contributions to open source o.o dope!
Hope though, when AI is becoming increasingly useful and seamlessly integrated, they not gonna take an arm and leg for it. It's just gonna be way too good to pass, people won't really have a choice but pay.
I’m certain Copilot gives me more than a 2% productivity boost. That’s a conservative estimate (I wouldn’t be surprised if it’s more like 10-15%). If you consider 2% of what a developer makes each month, it comes to a lot more than $10. I’m not based in the US, but Levels.fyi suggests it’s not unusual for devs there to make $200K/year, that would mean $16.6K/month, 2% of which is $333. Maybe that’s a bit reductive, but the point is, $10/month is negligible if it gives you a noticeable productivity boost on a developer’s income.
And by the way, I don’t particularly love using Copilot. It can be annoying now I’m over the honeymoon period. But I think it’s pretty clear it speeds me up by a noticeable margin, and time is money.
It's nothing I couldn't do myself, but just makes my job that much easier and quicker
I am sure some of the typical cynicism here will turn this into a protracted argument of "well maybe you shouldn't be a shit developer and you would be able to fit all the complexity in your head" but whatever.
Unfortunately, there is no way I can hope for that much…
So yes, please, take my money and do All my boilerplate lol
When they keep giving out freebies (VSCode, npm etc.), I never know which direction the product is going to evolve (e.g. unnecessarily tight integration with Azure).
With this, there's at least direct alignment between end user & the product.
[1]: https://github.com/andrewmcwattersandco/github-statistics
[2]: https://docs.google.com/spreadsheets/d/1HBSwxr0jkUoMulQxyVTC...
https://github.com/pricing#i-work-on-open-source-projects-ca...
I like how "open source project" == "on github". Can't say that I am surprised though.
If anyone knows why pls let me know
The FAQ [0] says
> A maintainer of a popular open source project is defined as someone who has write or admin access to one or more of the *most popular open source projects* on GitHub
(emphasis added)
[0] https://github.com/pricing#i-work-on-open-source-projects-ca...
HN can set itself apart from Twitter and Reddit by celebrating great achievements rather than tearing them down.
Copilot stands on the shoulders of open source, yes. So do many of our personal and commercial projects. Copilot benefitted from having beta users. That relationship went both ways.
A big thanks to the Copilot team for letting us be a part of the beta. I will happily pay $10/m for this.
agree !!! as any burgler-thief-attorney will tell you, it is *totally worth it*Given the cost of single GPT-3 codex query, it's very likely that Microsoft/Github is still taking a huge operating loss at 10USD per month.
How well does copilot help with languages like Elixir that are less common? WIth TypeScript it's been remarkable, but that's one of the most popular and surely very familiar to devs and GH, so I would expect less popular like Elixir to not perform as well.
Does copilot work for shell scripts?
I'm a vim person and don't want to use VS code. Is copilot worth the hassle to get installed into vim?
Copilot did pretty poorly when I tried using it with Julia- it kept suggesting Python code. I suspect it would do something similar in Elixir.
I'm also a vim person who doesn't want to use VS code, but I've gotten more than enough value to get into my first IDE (with vim keybindings). A lot of tedious C++ code is getting correctly auto-generated.
Sometimes, with variable results. I think I've only observed it guess patterns from the current directory
> Does copilot work for shell scripts?
Yes, it gave me this earlier today while editing my .zshrc:
# kill a process on a given port
killport() {
lsof -i :$1 | awk 'NR!=1 {print $2}' | xargs kill
}Oh wow—a language where there are: 20 ways to do something, three of them are common, but only three others actually behave, by any standard, correctly, while being among the least-common in public code, seems like exactly the wrong kind of thing to use this for.
Shell doesn't need machine-learning autocomplete trained on existing shell scripts, it needs a hand-built aggressive linter.
My primary usage is shell scripts, as it seems to struggle on complex code, while shell scripts are typically a lot of simple code.
No, it cannot make me write code I couldn't write before. It does not autopilot and does all the coding by itself. But it still boosts my productivity greatly, making me relaxed while coding and focusing on the important part rather than errands.
Also if there are some repetitive sections of code I need to bang out quickly this will auto fill that repetitive pattern (although I'd argue this is usually a sign that the code should be cleaned up)
I avoid letting it fill in large swaths of code though. I have no idea where that code is coming from (license infringement?) and it tends to go way off the rails.
Additionally I feel that it makes me a worse programmer if I allow it to take over too much.
I've been programming for 20 years (more if you count my time as a kid) and have a certain flow. Part of that flow is the natural pause between thinking of solutions and typing. When the computer is beating me to the typing portion (and often times making mistakes) I would find myself doing more code review than code writing. Sometimes a few bugs popped up and it was thanks to copilot (or was it me failing to correct copilot's mistakes?).
I found my brain sort of switching into a different mode. Rather than thinking about my next steps I was thinking about the steps the computer just took and how I needed to clean them up.
Rather than the AI being my reviewer during a paired programming session, I was the computer's reviewer.
So now, like I said I use it very sparingly.
It's called OpenAI Codex. https://openai.com/blog/openai-codex/
It is very useful for things that I would call boilerplate, e.g. you have almost duplicated code (say in a view and a controller) and need to copy from one to the other.
It is annoyingly bad for autocompleting an api as it tends to be slightly (and plausibly) wrong.
I haven't found it very useful for anything else.
Working on a project where I have to do lots of the first makes me sad, so I tend to try to avoid those projects - but if I was forced to for some reason it would be worth $10 a month. However, if enough of the programming I did could be helped by github copilot for it to be worth that much I would start to get worried I was working on the wrong sort of problems and try to move into something different.
I can't use it to generate longer chunks of code like methods or functions, because it will do it a bit wrong and I loose time to correct it.
It can somehow generate correct and fitting code, but it takes multiple tries and writing comments in which you describe exactly, with lots of details what you want to do. At that point I'm better off writing the code myself.
However, if the method should be small like VerifyIfNumberIsEven, it does a good job.
Probably I would pay 10$ for it.
I recently started a 100% Common Lisp job and it does not work nearly as well for Common Lisp. A lot of generated code is Emacs Lisp.
Two months ago I would have signed up for a payed account with no hesitation, but I need to re-evaluate it with Common Lisp again. BTW, I happily pay OpenAI for GPT-3 APIs instead of using it for free. For NLP work, OpenAI's APIs have high value to me.
Definitely does not seem worth paying for me to end up more stressed out, haha.
The IntelliJ Copilot plugin became worthless just before the release. It borks up the formatting and requires almost more keystrokes to make the code work than it saves.
It sometimes works brilliantly, the result has almost always been either duplicated code which could use refactoring or simple minded attribute access code which could be solved generically. I have the fear that it will push developers to go the "easy route" and not think about the code too much while churning out more and more lines of generated code, so I'm unwilling to recommend it to junior developers.
However I wish there was more competition. Github could rescind access to Copilot or charge $40/mo or it could slow down because their cloud is overloaded with new users, and I would be out of luck.
Tabnine and Kite are alternatives but I've heard they don't work nearly as well. I wish there were similarly-effective alternatives which charge similar rates for cloud hosting / profit, but open-source their datasets and algorithms, and just generally provide a fallback if Copilot's quality ever goes down.
Since this is derived from code Microsoft did not write, or ask permission to use, it should be at the very least free to use.
"They gave away all their code, so we packaged it up and sold it right back to them, the stupid bastards!"
It’s also awful that they took free code (open-source), and now they want money for it. Make it open-source and free to use…
Some say it’s great for repetitive tasks, but if you write repetitive code (tests also) maybe you should look for other solutions than “auto-generating” unmaintainable code.
.filter(table.deleted==False)
nothing complicated, but one tends to forget it. So i got into the habit of starting a new line in whatever query I am building and see what copilot thinks I forgot.That way it can capture code in a library instead of having thousands of developers copy/paste the same code snippets.
Every human was just trained in the same way. Why isn't this a problem for every human?
I really don't see the difference. One is an artificial neural network while the other is a biological neural network?
In my view: I don't believe a machine (at least not any we're capable of creating) can truly learn.
Copilot is a machine working on its inputs. Humans think and create. Maybe it can be argued that humans are just more complicated machines, but I don't think most people would agree with such an equivalency.
Copilot is constructed almost entirely from others' code. There's a tiny fraction of original "ai glue" in there, but the end product is arguably a derivative work of all that code it was trained on. As is its output.
It can also be argued that the AI part is really just an obfuscating copy machine. One that was created specifically for that task.
And of course, the real killing blow: if/when it reproduces training code verbatim, and you don't notice... will "copilot did it" be a valid defense in court? There are different opinions on that I guess, but no one knows for sure -- and I wouldn't take that risk.
Here GitHub (Microsoft) is charging for a product that in certain circumstances violates copyright.
I think I myself teached copilot a lot of things about supersymmetry :)
> Do you want to start using GitHub Copilot today? Get started with a 60-day free trial, and check out our pricing plans. It’s free to use for verified students and maintainers of popular open source software.
Seems pretty clear. If you're willing to do your own research (aka going to the CoPilot site): https://github.com/github-copilot/tp_signup, you'll see that pricing reflected here as well as the date when the free period ends, which is August 22nd.
I guess that means I feel the level of expectation is in the name.
To everyone expecting Copilot to magically write the code they are thinking about - you are missing the point. There is a learning curve of using this service that allows you to be more efficient in expressing your ideas. It's not about doing all the work for you. It's like auto-complete on the next level.
Licensing concerns - oh come on.. what is the big deal? There are millions of "for (int i ..)" loops out there. Like anyone gives a damn about 5 auto-generate lines being _probably_ copied from somewhere. Moreover, if you used Copilot just a bit you would know that is not how it works.
Charge 10x more (or more) and let the dreamers help push the product further and faster. Once it’s awesome then charge a commoditized price for the service.
Charging 10x+ more means we have enough skin in the game to properly send feedback and improvement ideas. At 10/m/u it’s barely worth you reading my support tickets and it’s almost with me just not using it while paying for it.
Thoughts?
I suffer enough with legacy code created by junior programmers that long left the company. I imagine how much more fun will be to work with this type of code.
* I know Copilot is not capable of creating full systems yet but it is a matter of time before they evolve it to generate all the bolierplate code for you based on some comments you make or, even worse, some UML abstraction!
I joined the Copilot beta and where it has helped me most is: 1) Ideas 2) Filling in the broad-strokes.
It's name does not deceive, it is only a co-pilot. It will not tell you where to go, it will push you in the right direction and let you focus on the more difficult parts of a task.
I signed up for it because at $10 per month the keystroke reduction is somewhere in ballpark of 70% or more. That's the real value in my use-case.
If most code is "bad" code (any definition works) and this AI was trained on all/most code on GitHub, does that mean that this AI mostly helps to produces bad code?
if (x.length < 10) throw
And it figures out the rest. So while sometimes it encourages bad code, when you know how to use it well, it helps you write the good things I'd normally be too lazy to write10$/Mo. Is way to much for what you get.
I mostly write js/ts code.
The suggestion feature / auto-complete feature is wonky at best and leads to bugs or just bad code in the worst case.
Even when you write comments or have a function like `addOne` and you want to add `subtractOne` it will not get it right a lot of times.
Then you have the cases were it throw 50 or more lines code at you for something very simple.
Catching errors or error handling is basically non existing.
I tried it for writing tests. It bad. It does not help at all.
I uninstalled and after some hours of work I don't really miss it.
But I would be interested in me picking 2 of those 3 for me to do, and the AI can do the third for me. So if I love coding and test writing but don't like documentation, then the AI can do the third leg for me.
I think that the quality of results from the AI would be much better than what Copilot is capable of. Even if I focussed on test writing and documentation, I think that the AI should be able to write decent code based on those two inputs.
I get to a "Confirm your payment details" screen, but there is no further action I can take (ie: no button to press or link to click to "confirm"). It does say "You will be billed $100/year starting August 20, 2022" -- but when I view my "settings", it tells me I haven't signed up for copilot.
I tried various browsers, including Edge on Windows 10 sans plugins (the combination I would expect to be the most supported for MS owned github.com).
There would be no issue if they trained the model on Microsoft's closed source instead.
Given that the cost of a software engineer's time is so high, $10/mo. seems very reasonable if Copilot saves you more than that in time per month. So in a vacuum assuming all dollars are spent with equal productivity, if I take the equivalent of $1000/mo. in time writing boilerplate, and I can reduce that to even $989 with Copilot, it becomes a good deal.
Which means it's going to be harder to evaluate junior candidates code without actually running and testing that code because they'll have built a huge library that looks really well formatted but has logic gaps which are difficult to catch on a glance. As it stands currently, usually some style and organization tells you this person gets it.
>What data does GitHub Copilot collect?
>...
>User Engagement Data
>...
>Code Snippets Data
>Depending on your preferred telemetry settings, GitHub Copilot may also collect >and retain the following, collectively referred to as “code snippets”: source >code that you are editing, related files and other files open in the same IDE or >editor, URLs of repositories and files paths.
It's possible to opt out, but it's not disabled by default, and this code snippets might be very sensitive.
At best, it is scary in it's ability to pre-emptively suggest context-specific implementations of functions before I have even considered what I might need to do. It probably helps that I am very particular about how I name variables, which seems to help copilot infer my needs.
But at least a couple of times a day, I am blown away by it.
Will be paying for the public version, absolutely worth the money in a single day's coding alone.
https://github.blog/changelog/2021-10-27-pull-request-merge-...
No bulk licensing of Teams? This makes no sesnse, so if a team wants to make Copilot part of their official tools, each member have to purchase this individually. Thats a huge PITA
That said, launching a dev tool without Orgs integration seems dumb. I work for a FAANG and so can’t use this professionally. It’s a totally different price calculation for “programming as entertainment”. Is this worth more than Netflix to me?
Having a type checker is critical for this, though. When I code Ruby I’m much more skeptical of Copilots suggestions.
What i'm concerned with is that i think it can interrupt the flow of thoughts while programming since you have to review the generated code, but that is the price to pay to use such a formidable tool
I was excited when it came out, but it ran slowly and annoyingly (crashes) and I gave up.
I already have a jetbrains license; when they release a similar feature I’ll consider uping my subscription to get it.
As it stands… eh. It’s not that great. I couldn’t really be bothering to continue using it for free, I’m not gonna pay for it.
It seem to understand the common boilerplates things in Django that always annoyed me and type them for me. It understand the structure and adapt them to my code: imports, connection between modules, etc.
For sure, you need to be carefull with it.
So I'm probably taking it.
They kinda know what they're supposed to do. Sometimes they do the right thing, sometimes they get it completely wrong.
In either case you can never let anything they do get committed without a review.
So are they really helping?
Right now, there is no competition, and an amateur developer will really benefit from copilot - certainly they will be more productive than a developer that demands just $1000 more annual salary.
Do the guys at Microsoft have any morals left?
Some counters for…
CopilotRecommendations CopilotRecommedationIterations (Number of saved changes to initial recommendation) CopilotRecommmedationSaves SkipToNextSuggestion
Metrics on my code that is used by copilot by others would be nice to see.
The VS extension could check if the current git repository is open, and if so, it should work without a subscription for that specific repository.
I see this useful for non core languages, where you often need to look up common patterns.
No.
Is it particularly smart?
Also, no.
But it really speeds up all the dumb stuff in coding. Especially UI code can be very chatty, and Copilot is a nice assitance here.
Also, it would be cool if it was part of GitHub Pro, which I'm already paying for, haha.
Would be happy to pay for it (or expense it to my employer) if I was still an IC.
HackingWithSwift shows how this process gets rocket wings with Swift[0] (skip to the end for the mind melter)
[0] https://www.hackingwithswift.com/plus/high-performance-apps/...
Preferably, I would like to try it in Vim. But anything that I can run in a container would be ok.
Do people want to see ads instead?
Or would they be ok paying for Google search (another service trained by all the information we willingly volunteer to them)?
Copilot adds tremendous value and they are justified charging for it.
Extension activation failed: "Unexpected end of JSON input"
I'll miss it for personal stuff but I'm not paying $10 a month just for my personal projects at home.
To paraphrase: "sure it's minblowing and the biggest productivity gain in years, but I want it FREE".
Yes. You got used to it being free. And now it's not. But $10/mo is a steal. It's more than fair and far, far less than they could get.
And no. They don't owe you anything.
In fact, they probably host your code (often free), and less directly provide your IDE (for free). So this idea that they owe you something needs to be reassessed.
CoPilot is easily worth it and I think this is fair. I actually welcome it because I was nervous it might be like 80.
TLDR: Tabnine advantages vs Copilot 1. Can run locally 2. As-you-type suggestions (mid-line) 3. Private model based on your code 4. Free plan available
Read more at https://tabnine.com/tabnine-vs-github-copilot
Probably the best autocomplete I’ve ever used across multiple languages but it’s not reliable at all for the more complex tasks that their marketing makes it seem it’s good at.
Usually, I suggest that my team start with the user value and experience, but for this specific comparison, it’s essential to start from the technology, as many of the product differences stem from the differences in approach, architecture, and technology choices. Microsoft and OpenAI view AI for software development almost as just another use case for GPT-3, the behemoth language model. Code is text, so they took their language model, fine-tuned it on code, and called the gargantuan 12-billion parameter AI model they got Codex.
Copilot’s architecture is monolithic: “one model to rule them all.” It is also completely centralized - only Microsoft can train the model, and only Microsoft can host the model due to the enormous amount of computing resources required for training and inference.
Tabnine, after comprehensively evaluating models of different sizes, favors individualized language models working in concert. Why? Because code prediction is, in fact, a set of distinct sub-problems which doesn't lend itself to the monolithic model approach. For instance: generating the full code of a function in Python based on name and generating the suffix of a line of code in Rust are two problems Tabnine solves well, but the AI model that best fits every such task is different. We found that a combination of specialized models dramatically increases the precision and length of suggestions for our 1M+ users.
A big advantage of Tabnine’s approach is that it can use the right tool for any code prediction task, and for most purposes, our smaller models give great predictions quickly and efficiently. Better yet, most of our models can be run with inexpensive hardware.
Now that we understand the principal difference between Microsoft’s huge monolith and Tabnine’s multitude of smaller models, we can explore the differences between the products:
First, kind of code suggestions. Copilot queries the model relatively infrequently and suggests a snippet or a full line of code. Copilot does not suggest code in the middle of the line, as its AI model is not best suited for this purpose. Similarly, Tabnine Pro also suggests full snippets or lines of code, but since Tabnine also uses smaller and highly efficient AI models, it queries the model while typing. As a user, it means the AI flows with you, even when you deviate from the code it originally suggested The result is that the frequency of use - and the number of code suggestions accepted - is much higher when using Tabnine. An astounding number of users accept more than 100 suggestions daily.
Second, ability to train the model. Copilot uses one universal AI model, which means that every user is getting the same generic assistance based on an “average of GitHub”, regardless of the project they're working on. Tabnine can train a private AI model on the specific code from customers’ GitLab/GitHub/BitBucket repositories and thus adjust the suggestions to the project-specific code and infrastructure. Training on customer code is possible because Tabnine is modular, enabling the creation of private customized copies. Tabnine "democratizes" AI model creation, making it easy for teams to train their own specific AI models, dramatically improving value for their organization.
Third, Code security and privacy. There are a few aspects of this. Users cannot train or run the Copilot model. The single model is always hosted by Microsoft. Every Copilot user is sending their code to Microsoft; not some of the code, and not obfuscated - all of it. With Tabnine, users can choose where to run the model: on the Tabnine cloud, locally on the developer machine, or on a self-hosted server (with Tabnine Enterprise). This is possible because Tabnine has AI models that can run efficiently with moderate hardware requirements. This means that, in contrast to Copilot, developers can use Tabnine inside their firewall without sending any code to the internet. In addition, Tabnine makes a firm and unambiguous commitment that no code the user writes is used to train our model. We don’t send to our servers any information about the code that the user writes and the suggestions they’re receiving or accepting.
Fourth, commercial terms. Microsoft currently offers Copilot only as a commercial product for developers, without a free plan (beyond a free trial) or organizational purchase. Tabnine has a great free plan and charges for premium features such as longer code completions and private models trained on customers’ code. We charge a monthly/annual subscription fee per number of users. All our plans fit organizational requirements.
Philosophically, Copilot is more of a walled garden where Microsoft controls everything. Copilot users are somewhat subjects in Microsoft’s kingdom. Tabnine’s customers can train the AI models, run them, configure the suggestions, and be in control of their AI.
In sum: both products are great; you’re welcome to try (Tabnine Pro) and see which one you prefer. for professional programmers, Tabnine offers in-flow completions, the ability to adapt the AI to their code, and superior code privacy and security.
For those who want to try Tabnine Pro, here’s a coupon for one month free https://tabnine.com/pricing?promotionCode=TWITTER1MFREE
Also, here's a detailed comparison table of Tabnine vs Copilot https://tabnine.com/tabnine-vs-github-copilot