| ▲ | nicksergeant 4 hours ago | ||||||||||||||||||||||
I feel I've upskilled in so many directions (not just "ability to prompt LLMs") since going all in on LLM coding. So many tools, techniques, systems, and new areas of research I'd never have had the time to fully learn in the past. I have a hard time believing any tenured developer is not actually learning things when using LLMs to build. They make interesting choices that are repeatable (new CLIs I didn't even know existed, writing scripts to churn through tricky data, using specific languages for specific tasks like Go for concurrently working through large numerous tasks, etc.) Anyone not learning things via LLM coding right now either doesn't care at all about the underlying code/systems, or they had no foundational knowledge or interest in programming to begin with (which is also a valid way to use these tools, but they don't work very well without guidance for too long [yet]). | |||||||||||||||||||||||
| ▲ | titzer 3 hours ago | parent | next [-] | ||||||||||||||||||||||
Learning calculus by watching the professor solve integrals on the board for an hour doesn't result in the same level and depth of understanding as working through homeworks every week for a semester. If you ran off to your TA to solve every problem in your homework, you just won't learn calculus. I've vibe coded plenty. I mostly don't look at the crap coming out. Don't want to. When I do I absorb a tiny bit, but not enough to recreate the thing from scratch. I might have a modicum more surface-level knowledge, but I don't have deep understanding and I don't have skills. To the extent that I've fixed or tweaked AI-generated code, it's not been to restructure, rearchitecture, or refactor. If this is all I did day in and day out, my entire skillset would atrophy. | |||||||||||||||||||||||
| |||||||||||||||||||||||
| ▲ | Waterluvian 4 hours ago | parent | prev | next [-] | ||||||||||||||||||||||
I think there's a considerable difference in its ability to help with breadth vs. depth of expertise. | |||||||||||||||||||||||
| ▲ | tripledry 4 hours ago | parent | prev | next [-] | ||||||||||||||||||||||
For me both are true at the same time. I vividly remember understanding how calculus works after watching some 3blue1brown videos on youtube, but once I looked at some exercises I quickly realized I was not able to solve them. Similar thing happens with LLMs and programming. Sure I understand the code but I'm not intimately familiar with it like if I programmed it "old school". So yes, I do learn more but I can't shake the feeling that there is some dunning kruger effect going on. In essence I think that "banging my head against the wall" while learning is a key part of the learning process. Or maybe it's just me :D | |||||||||||||||||||||||
| |||||||||||||||||||||||
| ▲ | zozbot234 4 hours ago | parent | prev | next [-] | ||||||||||||||||||||||
What do you mean by "LLM coding"? That's not a very meaningful term, it covers everything from 100% vibe coded projects, to using the LLM to gradually flesh out a careful initial design and then verifying that the implementation is done correctly at every step with meticulous human review and checking. | |||||||||||||||||||||||
| |||||||||||||||||||||||
| ▲ | agentultra 3 hours ago | parent | prev | next [-] | ||||||||||||||||||||||
> Anyone not learning things via LLM coding right now either doesn't care at all about the underlying code/systems How many bytes is a pointer in C? How many bytes is a shared pointer in C++? What does sysctl do? What about fsync? What is a mutex lock? How is it different from a spin lock? You want to find the n nearest points to a given point on a 2-D Cartesian plane. Could you write the code to solve that on your own? Can you answer any of these questions without searching for the answer? I don't use LLMs and I learn things fine. Always have. For several decades. I care deeply about the underlying code and systems. It annoys me when people say they do and they cannot even understand how the computer works. I'm fine with people having domain-specific knowledge of programming: maybe you've only been interested in web development and scripting DOM elements. But don't pretend that your expertise in that area means you understand how to write an operating system. Or worse: that it prevents you from learning how to write an operating system. You can do that without an LLM. There's no royal road. You have to understand the theory, read the books, read the code, write the code, make mistakes, fix mistakes, read papers, talk to other people with more experience than you... and just write code. And rewrite it. And do it all again. I find the opposite is true: those who use LLM coding exclusively never enjoyed programming to begin with, only learned as much as they needed to, and want the end results. | |||||||||||||||||||||||
| |||||||||||||||||||||||
| ▲ | anovikov 4 hours ago | parent | prev [-] | ||||||||||||||||||||||
This. I never had patience to figure how to build a from-scratch iOS app because it required too much boilerplate work. Now i do, and i got to enjoy Swift as a language, and learned a lot of iOS (and Mac) APIs. | |||||||||||||||||||||||
| |||||||||||||||||||||||