3 ms·
I think for people with fairly high experience, the current AI boom is definitely a win; improved productivity for simple tasks and responsive rubber duck to ru
by _lvbh 2y ago
I think for people with fairly high experience, the current AI boom is definitely a win; improved productivity for simple tasks and responsive rubber duck to run your ideas by. However, for new grads, students, and even mid-level devs, whenever I see them with Copilot (and just today, Cursor) out, I cry a bit inside and lower my expectations.
I’m not sure why but in my experience, juniors/students that use AI will generally struggle more to debug problems & give up earlier
Edit: and if I sound arrogant, let it be known that I definitely dont have the experience/intelligence to use AI productively, and thus I’ve avoided it beyond experimenting with capabilities
- minkles 2y agoAs someone responsible for the fall out from these tools being used to cut corners, I doubt it. And I'm talking about senior developers here with 10y+ experience. People don't bother to understand problems now. Only the happy path is considered. It takes real intelligence to understand the side effects even a simple thing can have. What was a whiteboard session and a thinking process is now blindly trusted to some 3rd party agent. Consider reliably receiving a message from a queue and processing it at least once. So far I have encountered at least 0 times processing on two separate occasions. That is a big problem. Turns out the code was generated and no one even knows or cares enough including the people reviewing it because their magic friend wrote it and their other magic friend reviewed it and the management is happy that they were sold magic because some other magic thing wrote some marketing spiel that absolved them from any decision making responsibility. In some contexts a mistake like that has an actual tangible capital cost if it's a trade or a transaction in a regulated industry. It's not "just a mistake you can learn from" at that point. People tend to lazy, to steal a mathematical expression, and these tools bring the worst out in people.
- brailsafe 2y agoThat's partly why I've only been using these tools for inconsequential tasks who's primary time cost is typing. Like throwing together a primitive prototype or mock generator and using my brain to build on it or get the rough structure down. HTML/CSS templating for example is still easy to screw up if you actually care about quality, but if you don't then you may as well find the fastest path there. I agree that the more convenience people rely on though, they seem less willing to sit with a hard problem and learn it the hard way, which is required in so many areas of programming or w/e, or sit with it and just grind their brain for possible edge cases or robust ways to implement something.
- loandbehold 2y agoHow is it different from common situation today when a piece of code was written a long time ago by someone who no longer works at the company, so nobody understands how it works?
- Ekaros 2y agoThe old code is probably close enough to correct. It has been battle tested for a while if it has not been actively worked on. If it has operated for good while without immediately noticeable issues it is likely okay for current uses.
- threeseed 2y ago> In some contexts a mistake like that has an actual tangible capital cost Developers need to be just as mindful of the reputational cost. Being known as someone who doesn't know what they are doing and is harming the team can cost you.
- Kiro 2y agoI've found that AI takes much more edge cases into account than my lazy brain does. It has no problem writing tedious code covering things that are very unlikely to happen. When I see the solution it suggests it's often more robust than my initial plan.
- israrkhan 2y agoI agree with this sentiment. However maybe in few years AI will get better enough that you wont need to debug it?
- threeseed 2y agoFor me AI boom has not been a win at all. It is at best on par with Stack Overflow and only works when the LLM has a lot of prior examples it has trained on. Professional coding is not something that can tolerate introducing bugs that take for ever to debug simply because the LLM lacks enough training data. Also it lacks the concept of libraries having different API versions. And so you will see in the generated code it will happily mix methods from both versions. And because the model takes so long to train you can't use newer libraries.
- lolinder 2y agoThis has been my experience with the chat models (and yes, I'm talking about SOTA, both Claude and GPT), but I've found Copilot autocomplete to be an improvement that is worth the cost. That's not a huge endorsement given that it's not especially expensive, but it definitely decreases the burden of creating a large amount of new code quickly, which makes bootstrapping a new personal project much easier than before. The key is to give it discrete chunks to generate—small helpers, single lines, or test cases—and not expect it to come up with a reasonable architecture or to even generate a single class. But I wholeheartedly agree about the chat models. Every time I've tried them I've wished I hadn't. The experience of interacting with them is similar to interacting with a junior developer, and it's not worth pairing with a junior if it's not an investment in their training.
- jstummbillig 2y agoAs long as the task remains non-trivial and there is still something to be done – mostly forming a clear idea of what you want to do and what you need and laying it out, now in english – why would this be any less wrong than any of the other times when the incumbents got worried and uphill-both-ways-y? When has this purity/concept idea ever stood the test of time? Is it only music when it's on tape? Is hiphop even music? Can't you do art with photoshop? Things evolve and the things that once seemed important won't be. People will be lazy and clever and adapt.
- earthnail 2y agoThey will. And then they’ll learn the fundamentals. I thought I knew most things I needed when I was 20 because who needs fundamentals when you can just use frameworks? Ah well… I don’t think this is any different from “young devs don’t know shit, they only know Unity but have no clue of how things work in reality.” Developers need to start somewhere and will work their way down the stack. As the height of the stack increases, that journey takes longer. But the height increases because every additional layer increases productivity.