this post was submitted on 11 Sep 2024
70 points (76.5% liked)

Programming

17024 readers
235 users here now

Welcome to the main community in programming.dev! Feel free to post anything relating to programming here!

Cross posting is strongly encouraged in the instance. If you feel your post or another person's post makes sense in another community cross post into it.

Hope you enjoy the instance!

Rules

Rules

  • Follow the programming.dev instance rules
  • Keep content related to programming in some way
  • If you're posting long videos try to add in some form of tldr for those who don't want to watch videos

Wormhole

Follow the wormhole through a path of communities [email protected]



founded 1 year ago
MODERATORS
 

Over the past few years, the evolution of AI-driven tools like GitHub’s Copilot and other large language models (LLMs) has promised to revolutionise programming. By leveraging deep learning, these tools can generate code, suggest solutions, and even troubleshoot issues in real-time, saving developers hours of work. While these tools have obvious benefits in terms of productivity, there’s a growing concern that they may also have unintended consequences on the quality and skillset of programmers.

you are viewing a single comment's thread
view the rest of the comments
[–] [email protected] -2 points 1 week ago (4 children)

You write machine code?

No, you only describe what you want the compiler to write in machine code.

With copilot it's still a description.

[–] [email protected] 10 points 1 week ago (1 children)

Sure but you're also specifically telling it direct instructions which it will follow every time to the T, based on predetermined logic.

That is no where near how an LLM works. Furthermore, most programming languages require effort to learn. They night not be machine language, or even an assambler, but its still a skill you actually have to learn beyond speaking your native tongue.

Also one could make the argument that machine code is a "description" of what you want the CPU to do.

[–] [email protected] -1 points 1 week ago

The skill beyond your native tongue is knowing what a db does and how to describe what your app does. Aka a designer, with design language. Good luck with a LLM getting it to do what you want with no domain specific language.

"No, no, not like that, I meant bigger...."

[–] [email protected] 4 points 1 week ago (2 children)

If the compiler produces a program that doesn't match your description, you can debug the compiler. Can you debug an LLM?

[–] [email protected] -1 points 1 week ago* (last edited 1 week ago)

Why wouldn't a compiled program match your description (code)? The compiler is broken?? Compiled programs alwsys match their description(code).

So more likely your translation from idea to function is wrong.

Re-read your description, step through it slowly, what did you assume, that was wrong, or where did you add a mistake or typo? Sounds like I can do this in natural language or in Rust.

You can say that llms are not deterministic of what they produce, but that's got nothing to do with making a programmer worse at their job.

If you can't translate your idea into function and test its output to be what you want, then you are a bad programmer.

[–] [email protected] 3 points 1 week ago (1 children)

Copilot frequently produces results that need to be fixed. Compilers don’t do that. Anyone who uses copilot to generate code without understanding how that code works is a shit developer. The same is true of anyone who copies from stack overflow/etc without understanding what they’re copying.

[–] [email protected] 2 points 1 week ago* (last edited 1 week ago) (1 children)

You're missing the point. If the program doesn't do what it's meant to its YOU that didn't use the tools between you and metal, correctly. LLM involved or not, it's how you've described it, in whatever 'language' you chose (natural or Rust)

[–] [email protected] 2 points 4 days ago

The key difference is that compilers don’t fuck up, outside of the very rare compiler bug. LLMs do fuck up, quite often.

[–] [email protected] 2 points 1 week ago (1 children)

And many programmers write some pretty stupid and horrible descriptions. LLMs don’t solve this, they just allow lazy programmers to be even lazier.

[–] [email protected] -1 points 1 week ago (1 children)

Anybody that doesn't write binary is lazy, said the compiler.

[–] [email protected] 3 points 1 week ago

I don't even know how to respond to this. It makes no sense at all and doesn't really relate to or respond to my comment except it happens to use the word "lazy", I'm guessing in reference to my comment. Good luck trying to push LLMs, not sure what your agenda really is, other than to be argumentative here. Peace.