5 ms·
> We shouldn't expect juniors to use a different / artificially handicapped workflow than the rest of us. When I was at film school, our first year project was
by sircastor 2y ago
> We shouldn't expect juniors to use a different / artificially handicapped workflow than the rest of us.
When I was at film school, our first year project was required to be done on film. This was 2001 - Digital cameras were newish, but the school had several that students could use.
The reason they required film had to do with the students. Film is expensive, and unforgiving. You need lots of light, you have to cut and tape it together by hand. It makes you slow down and think about what you’re doing and why.
AI is a tool, but developers need to understand their work without it. I think it dangerously enables development without thinking.
- jjice 2y agoI've seen this kind of take get a lot of hate online, but I do agree (ignoring any of the parent post's specifics). I think using AI is fine, but if you get output and you don't have the ability to validate it or look at it critically, you're just going to produce code with subtle bugs. I worked with a junior at my last job - great guy - who really got into ChatGPT when it came out. There we're _multiple_ times I hopped in a call to debug with him or reviewed a PR of his and had questions about certain very clear bugs. They were always AI generated, but unvalidated. One specific one that pops out was an htaccess file (which suck, to be fair). He was asked my why his changes didn't work as he wanted them to, and when I looked at it, it wasn't even close to doing what was intended. I asked him where he got the basis for these changes, and he pulled up a ChatGPT prompt. I understand that an LLM likely has very little htaccess knowledge compared to JavaScript, but the mindset of taking what it said and pasting it in without assessment isn't a very productive one. Same goes with StackOverflow as well, except you can at least get some feedback from other people via votes and comments. He also had a lot of imposter syndrome, and I can't imagine that relying on LLMs helped much with that either.
- smeej 2y agoThis reminds me of the arguments against teaching kids to use calculators in school, at least at the elementary ages. Yes, it's now probably safe to assume they will have one in their pockets their whole lives, but understanding the principles of what's actually happening is still important for the student's personal growth in understanding of the subject.
- sky2224 2y agoI know you're on the side of discouraging AI tools (at least that's how I'm interpreting your response), I just want to highlight that I think the calculator argument is different than the AI one. Yes, they're both new tools here, but the calculator argument didn't have the caveat of sometimes 2+2 won't output 4. LLM tools do have that issue and it's important that junior devs don't overlook this and are able to function on their own.
- smeej 2y agoI think I'm on the side of "use tools to speed up your work, once you actually know how the work ought to be done." Calculators spit out wrong answers all the time, it's just due to user error, like fat-fingering an operation button or adding a zero somewhere. It's easy to tell when that happens if you understand how it should work, because you're not just using the output blindly. Same idea with AI tools. It's important that you already know what the output should be, at least well enough to notice when it's wrong. But you probably don't need to type out every line of code and deal with your typos and whatever.
- csbbbb 2y agoA more constrained test might be justifiable on an interview, but it's got to be clear that it still doesn't directly translate to on-the-job skills. This might be more of a question about what you expect from a "junior developer" role; are they building skills at a cost to the business, like a student or intern, or doing the best they can do to justify a paycheck?