this post was submitted on 08 Oct 2024
8 points (100.0% liked)
JetBrains
166 readers
1 users here now
A community for discussion and news relating to JetBrains and its products! https://www.jetbrains.com/
Related Communities
- [email protected]
- [email protected]
- [email protected]
- [email protected]
- [email protected]
- [email protected]
- [email protected]
- [email protected]
- [email protected]
- [email protected]
- [email protected]
- [email protected]
- [email protected]
Copyright © 2000-2024 JetBrains s.r.o. JetBrains and the JetBrains logo are registered trademarks of JetBrains s.r.o.
founded 9 months ago
MODERATORS
you are viewing a single comment's thread
view the rest of the comments
view the rest of the comments
You're missing the point. You tripped over the word "AI", then equate it to just an LLM and on top of that you claim that nobody is getting any use out of it. Not only is your argument circular, it's also based on a false premise.
No, the point of code is to arrive at software that does what you want. Currently, we have to describe what our software needs to do, then mangle code into doing what we want. AI, and even an LLM, has the ability to take over everything after we provide the description of what we want and even write the tests to make sure it does that. The billions spent on bug hunting, quality assurance, acceptance testing and liability cases clearly show that it is not easier than natural language. Something we start learning before we're even born.
But copilot and others are not just tools to spit out code, they are a replacement for search engines with the ability to not only instantly provide you with a relevant answer, but also to explain their reasoning with the ability to go back and forth about details that would otherwise take you through multiple Google searches and trawling through different websites and fora to maybe distill an answer. Clearly it goes without saying that this interface with what "the internet" knows is a major step forward to how we find and apply relevant information.
But so is code unless we write it to be precise. And it is far more easy and productive to define what that precision needs to be than it is to write and test. A project without unit tests is half the price of a project with tests, that alone should tell you something about the idea of precise code being easy. Knowing full well that every bit of software starts by defining it in natural language anyway. It goes without saying that if code and test generation is automated after that initial step, productivity is increased massively.
https://www.nngroup.com/articles/ai-programmers-productive/
Just one example by the way..
You're missing the point. I'm responding specifically to them celebrating trash tech.
No, AI does not have that ability, and likely will not for an extremely long time.
No, code is not imprecise. It does exactly what you tell it to every time.
The study you're linking completely ignores code quality. In the real world, you get outputs faster, then spend 100x longer than you saved to get to a worse quality output nobody, including the developer, understands.
If you don't fully understand literally every single line you submit, it's bad code. By definition.
And that is exactly why it is imprecise, because it's a human conceiving it. You don't want code to do what you type, you want code to do what you define. It is easy to define what a program needs to do, it is not as easy to then translate that to something a machine understands. You are doing the interpretation for the machine, that is all that coding is and we will look back on this approach as comical. Now that machines have the ability to understand what we define, we can skip the harder steps and focus on building things instead of playing Rosetta stone and beating ourselves on the chest because we consider ourselves to be champions at it.
What you are doing is comparing the perfect coder with LLM's in their infancy and then conclude that the former makes less mistakes, I'm not sure why I have to point out that that is an unfair comparison.
I can make the same broken comparison about AI generating images. Will a Picasso produce beter art? Of course, for the time being, but the AI generates in seconds what we humans do in hours or days. And for a very wide base of what we do, the AI is already sufficient in its job even though the technology is young.
I'm sure you'll agree that everywhere a form of AI has been implemented, from playing chess, go and StarCraft, to medical imaging, folding proteins.. whatever, it quickly surpassed the quality of its human counterpart. Compared to those examples, generating code is a relatively easy task. And yes I understand that those use different "AI" than LLM's.
The study shows that your claim about productivity is false, now you're moving the goalposts. You've made a lot of claims, but it all stems from a narrow distaste in how LLM's function and you haven't backed anything up.
Code and "defining what you want" are exactly identical. Natural language is not capable of doing so.
LLMs aren't "in their infancy". They're tapped out.
You can't decouple quality and productivity, because code that isn't of sufficient quality is not useful, and the debt of bad code costs many, many more times more work than doing code correctly. Low quality code isn't "doing the job".
No, you define what you want in project planning and briefs, coding is the interpretation of your definition. It is quickly becoming far easier and definitely faster for a machine to interpret what we define than for us to translate our definition into what a machine can interpret.
And 64k oughta be enough for everyone.
You switch to LLM's at your convenience but you tripped over the term "AI". We've been over this a few times already and I hate repeating myself.
We can boil the issue down to a very simple question, do you think in time AI will play a significant role in how we generate code?
If the answer is no, then I'll see you in ten years, if the answer is yes, then you should admit that GitHub choosing that term is not out of place and it is only self evident that they use what is currently the best approach to produce code/assistance while putting it under the "AI" banner for their long term vision and because it wants and needs to ride the hype train.
All the arguments I hear are largely pedantry and contrarianism. You see this every time something new and exciting pops up, people will huff and puff about small issues while losing track of the larger picture. The way you choose your words makes it obvious that this is just another case of that. No nuance, no, just "this is trash", as if completely oblivious to the fact that in the time it took you to type those 3 words, a million people received an answer from an LLM that would otherwise take them 5 minutes to Google.
But you have no idea whether the code generated is of such low quality that it offsets the time it took to produce it. That is just another assertion. For someone who is so adamant about the precision of code, you sure do throw around a lot of unfounded beliefs.
Like this gem for instance. Not only do you build on the unfounded premise that AI generates bad code, it also assumes a coder does not. On top of that, how much bad code? How many more times? Shouldn't there be some quantification in all this rhetoric?