"tab completion good enough to write 25% of code" feels like a pretty good hit rate to me! Especially when you consider that a good chink of the other 75% is going to be the complex, detailed stuff where you probably want someone thinking about it fairly carefully.
The problem being that the time spent fixing the bugs in that 25% outweighs the time saved. Now that tools like Copilot are being widely used, studies are showing that they do not in fact boost productivity. All claims to the contrary seem to be either anecdotal or marketing fluff.
The AI tap complition is >100000% better than the coding assistants, it just saves you typing and doesn't introduce new bugs you need to fix instead of writting buggy shitty code from a text description.
I have around 7 YOE, and I have found LLMs useful for very specific questions about syntax whenever I am working in a new language. For example, I needed to write some typescript recently and asked it how can I make a type that does X.
It is not as good with questions about API documentation for popular java libraries though and it will just hallucinate APIs/method names.
If I ask it a generic question like "how can I create a class in Java to invoke this API and store the data in this database" it is pretty useless. I'm sure I could spend more time giving it a better prompt but at that point I can just write the code myself.
Overall they are a better search engine for stackoverflow, but the LLMs are not really helping me code 30% faster or whatever the latest claim is.
It'd be interesting to know how much of Google's code is written by junior engineers. I can't imagine 25% of the code is from juniors, at which point Google's CEO is either exaggerating what he considers LLM-generated code or more than just juniors are using it.
I agree with your take though, it does seem helpful to juniors but not beyond that (yet), and this OP stat seems dubious unless juniors are doing a big portion of the work.
"rm re[TAB]" to remove a file called something like "report-accounting-Q1_2024.docx" is really helpful, especially when it adds quotes as required, but not exciting enough to get me out of bed any earlier in the morning.
I feel it's a bit like the old "measuring developer productivity in LoC" metric.
As I hinted at in another comment, in Java if you had a "private String name;" then the following:
/**
* Returns the name.
* @return The name.
*/
public String getName() {
return this.name;
}
and the matching setter, are easy enough to generate automatically and you don't need a LLM for it. If AI can do that part of coding a bit better, sure it's helpful in a way, but I'm not worried about my job just yet (or rather, I'm more worried about the state of the economy and other factors).
For me it's really goddam satisfying having good autocomplete, especially when you are just writing boilerplate lines of code to get the code into a state where you actually get to work on the fun stuff (ther harder problems).
I don't care. The vast majority of code written in the private space is garbage and not unique. Products are usually not won because of the code.
Would I send the source of a trading algo or chatgpt to a third party, probably not but those are the outliers. The code for your xyz SAAS does not matter.
I am probably an outlier in that I don't really care what corpus a LLM trains off of. Its its available in the public space, go for it.
Great question, yeah I do. Right now it backs up to a separate NAS on my home network. Every once in a while I'll copy the most important directories onto a microSD card backup, but its usually going to be at least a few weeks out of date.
They are, but frequently the boxes where they are hosted are in AWS or similar. Or do frequently companies have actual in house servers for this purpose?
Not in house, but in a "segmented" part of the cloud that comes with service level agreements and access control and restrictions on which countries the data can be hosted in and compliance procedures etc. etc.
An extreme example of this would be the AWS GovCloud for government/military applications.
25% is a great win if you are prone to RSI. And for quicker feedback. But in terms of the overarching programming goal? Churning out code is a small part of it.