| ▲ | titularcomment 20 hours ago |
| With all due respect, what you're describing doesn't quite spell learning in my opinion. Sure, its better to read the code of an application you envisioned to learn a programming language rather than an unrelated convulated program; but you're still offloading your thought process to the LLM. You're not quite seeing why it chose A instead of B, and why it uses that struct instead of the other. And honestly, the LLM doesn't quite know why it chose that either. |
|
| ▲ | Scubabear68 19 hours ago | parent | next [-] |
| I am describing a problem and seeing how the LLM solves it (or how it goes off the rails). I am often exposed to techniques new to me. I call that learning. To be clear, I am closing in on 60 years old. I’ve written a lot
of code in a lot of languages. I have not bothered to check every fad that has come down in front end web and Javascript for the past umpteen years. Front end hasn’t been my thing. With current AI, I can leap frog a lot of bull crap I don’t care about and see what at least the AI thinks is good. I still retain a brain, I can still investigate what it did and form an opinion about it. I treat the AI stuff as idiot
savants that can make really nice stuff or go totally off in the weeds. But it is more than good enough to help me be a better me at what I do. |
|
| ▲ | phoghed 20 hours ago | parent | prev | next [-] |
| Nowhere did they say it’s learning. They said they can do more stuff now, it’s exploration. |
| |
| ▲ | titularcomment 20 hours ago | parent [-] | | The original article talks about 'savvy', which is to me an essence of learning. If 'exploration' is looking at walls of code you don't understand but the linter makes them look cool, you don't need LLMs for that. | | |
| ▲ | Scubabear68 4 hours ago | parent [-] | | Who said I was "looking at walls of code [I] don't understand"? Really, you are reading a lot into this without context. I've been working software development for close to 40 years now. I've worked in plenty of languages, software stacks, ecosystems, from assembler to VAXen to Unix (pre-dating Linux), to cloud stacks to...well, a lot of systems. The software ecosystem has ballooned so tremendously in that time frame that no human can really be an expert in all of them, or even in a tiny subset of all of them. As I mentioned in another comment, I couldn't be bothered to keep up with the Javascript/Typescript/Web front end drama. I don't do rollercoasters, and that ride is enough to make even the staunchest stomach heave with distress from the endless loop-de-loops. With LLMs, I can describe a little problem unique to my problem space, inspect the output, research it and even reverse engineer it, and see how well it fits (or doesn't). This is not unlike being a software engineering manager leading teams. When I said being able to see the results was "cool", I did not mean or imply it was about me trying to "look cool". In fact, I really don't know where that is coming from. I do this for my day job and also on the side for a lot of different causes and personal projects, and no one could give a rats ass about how "cool" I am. Seriously. People need to stop taking this all so personally. It's a tool. Maybe you all need to step back to my world in 1981 when I first started playing with code as a kid, and compare it to 2016. The advances from '81 to '16 are probably far more dramatic than what AI is doing now. |
|
|
|
| ▲ | nobodywillobsrv 20 hours ago | parent | prev | next [-] |
| I see this response a lot. What part of the thinking are you thinking is actually offloaded? Writing things down and then arguing with an agent that constantly gets things wrong is just a new kind of Rubber Duck. Are Rubber Ducks offloading thinking? These are more like search plus memory tools. Memory loss is real but that has been happening for me way before agents. |
| |
| ▲ | titularcomment 20 hours ago | parent | next [-] | | This came out a bit longer than I expected. Depends on your usage. A rubber duck won't upheave the entire history of written human knowledge to reach for your answer. It doesn't have inherent bias, and its purpose could also be handled by a wall, or the air infront of you if you can stretch your mind a little. What I'm going for here is that as you said, its just a hack to make your brain look for answers in a more efficient manner, by clearly underlining your thought process out loud, tricking yourself into conversation mode, yada yada. Its still you doing all the work, you're just being smarter about it. A LLM is more akin to a senior pair programmer. It may seem like a rubber duck on the surface, in the sense that you're having a conversation, but the senior programmer may come up with ideas you wouldn't think of. They may have more innate experience in the domain which might pull you away to very different implementations from what you had in mind initially. This is all good, but a common pitfall with LLMs is that they're much more conformative than a senior engineer, much faster, much more responsive. This is where it gets dangerous: they don't tell you you're wrong 80% of the time, like a rubebr duck. They also have innate experience of a domain, like a senior engineer. The result is that your brain never gets a 'hang' signal, and it doesn't feel the need to reevaluate. | |
| ▲ | philipportner 20 hours ago | parent | prev [-] | | > Are Rubber Ducks offloading thinking? Just that an actual rubber duck doesn’t do anything. You solve the problem you have by talking, and in doing so, thinking, to come up with a solution, an idea, or gain better understanding. After that you either implement something yourself or have learned something. With an LLM you offload all of that, the only thing you still do is tell it what the problem is. The agentic duck does the rest and you look at the output. Even if you have to argue, you argue without having gone through the steps to gain anything yourself. |
|
|
| ▲ | 2muchcoffeeman 18 hours ago | parent | prev [-] |
| > “ honestly, the LLM doesn't quite know why it chose that either.” Uh, have you asked it? These sorts of articles are funny. Like the author assumed that you have to use an LLM in a certain way. “I can just ask the LLM and there it is! I didn’t learn anything! :(“ You can interrogate the LLM. You can ask it all sorts of things. Tell it to justify its decisions. Tell it to give you supporting evidence. Tell it to give you options. Tell it to explain things in detail. I’ve been using it as a learning tool and it’s quite effective. Granted the stuff I don’t care about really does get worse. If I have a config typo I just go “There’s a typo in blah. Find it and fix it.” Or setting up the boiler plate for a project. I’m getting quite useless at that. But it doesn’t have to be any particular way. It’s a tool. Exploit it. |
| |
| ▲ | beej71 17 hours ago | parent | next [-] | | I use it as a very effective learning tool, as well. To test my learning, I make sure I can code it myself after that. | |
| ▲ | nkurz 16 hours ago | parent | prev [-] | | > You can interrogate the LLM. You can ask it all sorts of things. Tell it to justify its decisions. Tell it to give you supporting evidence. Tell it to give you options. Tell it to explain things in detail. Hopefully you realize that it's not actually introspecting into its previous thought process, and instead it is just making up a plausible after-the-fact explanation that matches the format of similar explanations found in its training set? I too often find these explanations enlightening, but please don't forget that you need to read all such responses as those of a pathologically lying psychopath desparate to trick you, not as a trusted expert who actually understands its internals. | | |
| ▲ | 2muchcoffeeman 16 hours ago | parent [-] | | Of course. But again this all comes down to how you use it. If you start blindly accepting everything it says, good luck to you. But you can do things like get one agent to do something. Spin up another agent to review and critique. Use different LLMs to critique. I’ve had the same agent write piece of code and then come back and say “there are bugs x, y and z”. For most code, it’s going to do a fairly good job and tell you best practices, give you things to research by yourself. |
|
|