5 ms·
> In other words, they're applying years of hard-won engineering wisdom to shape and constrain the AI's output. This. Junior devs are f*cked. I don't know how
by ilrwbwrkhv 2y ago
> In other words, they're applying years of hard-won engineering wisdom to shape and constrain the AI's output.
This. Junior devs are f*cked. I don't know how else to say it.
- zamfi 2y agoI've been wondering about this. They'll still get that hard-won engineering wisdom that comes from watching AI agents code badly, deploy it, and have it fail---as much as we'd like it to be otherwise, engineering wisdom often comes from experience, not just from hearing stories from senior devs. I guess the question is whether this role is still employable.
- HellDunkel 2y agoBut isnt this a very ineffective way of learning from second-hand mistakes?
- tstrimple 2y agoIt's not really second hand. The LLM didn't merge and deploy the code. The developer did. The LLM won't fix the bad push, the developer will have to. This is no different than a more junior dev copying and pasting a snippet from Stack Overflow that they partially understand without accounting for the edge cases or sometimes even their specific use case. Experience comes from failure and LLMs will help you fail and potentially help you recover from it just like any other resource developers have been using for years.
- HellDunkel 2y agoThe novelty is that AI made the „pasting code“ work somehow whereas copy and paste from stack overflow did not. Before merge and deploy you need to run the code. If it fails what do you do? search a new snippet on stack overflow? or paste the error into the ai? This seems like a completely inefficient way of learning to me.
- czhu12 2y agoI’ve found it effective in the past as a manager to assign the implementation of a feature, end to end to a junior developer, and basically rubber stamp their PRs. Our company has a culture of expecting the person who wrote the code to support it, and so if it’s poorly written, they inevitably have to learn to fix it, and build it back in a way that can prevent issues in the future. Obviously care has to be taken to assign the right projects with the right level of guidance and guard rails but when done well, people learn quickly. I think the same spirit can be applied to AI generated code
- Yoric 2y agoInteresting point. Of course, the question remains of whether companies that buy into AI will hire a sufficient stream of junior developers so that some of them will graduate into seniors.
- asdasdsddd 2y agoBetween the pandemic (no real mentorship, terrible discipline, rampant cheating) and the productivity gains for seniors, the next generation of juniors will need a lot of help.
- koliber 2y agoI used to think that as well. However, I’ve been thinking recently about how I might be biased. What I realized that the above quote and what follows in the article was true before AI as well. Juniors always missed things that made code production ready. I don’t think ai in the hands of juniors will create worse code. I think it will spawn a lot more code that was as bad as it was before. This is still fresh thinking so I don”t have a satisfying conclusion. :)
- ilrwbwrkhv 2y agoI hope so. The problem is I learnt good design despite the popular "Clean Code" prevalance in the world, by actual experience. But if AI is doing most of the coding and if that code mostly works, would there be an incentive for the junior devs to try out different ideas?
- shermantanktop 2y agoBut what about the learning rate that converts juniors into seniors over time? This will slow that process for most people, and introduce artificial cliffs and holes based on what the AI can’t fix and the junior doesn’t have enough learned skills to figure out.
- fifilura 2y agoOTOH, you can learn so much from the AI, so I think if you just stop and read and ask questions, I think it is a lot easier for a junior to learn than before.
- evnu 2y ago> I think it will spawn a lot more code that was as bad as it was before. And that makes it even harder for seniors to teach: it was always hard to figure out where someone has misconceptions, but now you need to work through more code. You don't even know if the misconceptions are just the AI misbehaving, the junior doing junior things, or if the junior should read up on certain design principles that may not be known to the junior yet. So, you end up with another blackbox component that you need to debug :)
- hipadev23 2y agoYeah. I don't know junior devs, outside of those motivated by an insatiable quest for knowledge and never-ending curiosity, are ever going to close the skill gap when they use AI tools to shit out circa ~2021 best practices from stackoverflow.
- mxmbrb 2y agoThey won't. Just as most modern devs can't edit assembly and would take days to write a bare bone network communcation, they won't need to learn certain things we did. And they will excell in other skills, making some old aged senior devs obsolete. A senior that uses modern dev tool chains will allways have a huge edge. That has allways been true. But that senior relying only on their hard earned knowledge will become the kind of dinosaurs we knew when we started.
- Slyfox33 2y agoYea they can't edit assembly because they have reliable tools that work 100% of the time, always. They don't have to manually inspect the output of the assembler every time they write any code. This is not even close to the same thing as LLMs.
- october8140 2y agoI often use the AI as a starting point and don’t use it unless I understand it. As a jr dev I think you just have to be smart and do the same. I’ve learned new ways to do things from the AI output, I imagine jr devs would be able to too.
- richardw 2y agoI dunno. They’re starting with this as their default universe, right at the age where you pick up skills fastest. I’m worried about my kid but also the dinosaurs I know, who don’t even know there’s an asteroid. I had a realisation today: AI gives you more shots at goal. When I was learning (the game) go, being able to play a lot of games against the computer in quick succession built intuition faster. When coding I can try more ideas, faster. Kids these days can make apps faster than you can have lunch. They’ll do it differently but they’ll learn faster than we will.
- sksrbWgbfK 2y agoI have worked with juniors. Those who use AI copy bad code without learning anything. Those who learn and will become seniors are not using AI. We will have a massive reduction in the amount of seniors (good for me, not good for programming in general).
- jansan 2y agoThey are not f*cked. They have a free tutor that they can ask any time, who will always do his best to help. My son is currently studying engineering, and whenever he is stuck at anything (construction, math, programming, mechanics) he fires up ChatGPT and asks for help. In maybe 90% AI gives him a hint so he can continue, which an extremely short feedback cycle. In the remaining 10% he will have to ask his human tutor at university, who is usually available a few days later. And it is not blindly following the AI's advice, but rather picking ideas from it. It is actually pretty awesome to see what opportunities there are, if AI is not simply used for cheating. One impressive example he showed me was feeding a screenshot of a finished (simple) construction drawing to the AI and asking for potential errors. The AI replied with a few useless, but also with one extremely helpful suggestion, which helped him eradicate the last mistake in his drawing. I am still not sure if those were generic suggestions or if the AI was able to interpret the drawing to a certain degree.
- ilrwbwrkhv 2y agoIf they use it as a tutor or as a glorified Google search then that's okay. The problem is if they start using code generation tools which AI provides and directly use that into the code base.