Live data from Hacker News

Ask HN: How should junior programmers use and/or not use AI for programming?

news.ycombinator.com

1–10 of 45 posts

Ask HN: How should junior programmers use and/or not use AI for programming?

#1
I am observing at my company that junior programmers, who have been allowed to use AI for helping with their coding seem to be losing their coding skills and critical skills. However, the seniors have become slightly more productive.

What has been your experience and do you have any suggestion on how to use AI and can we evolve some guidelines for juniors.

Also, the mentoring and community ecosystem online as well as in juniors and seniors seems to be also taking a hit. Any suggestions how to sustain this? Wouldn't want to lose the social connection juniors used to have with seniors because of this.

Re: Ask HN: How should junior programmers use and/or not use AI for programming?

#2
Almost certainly. I have seen cases where dev used AI to write a code which testers tested "using AI" and analysts used AI to parse the teat cases.

AI is very good to write the code which you already know how to write and you just handover your typing to the said AI.

I have begun using AI as an assistant basically to get the first draft and then optimization etc I do after the first block of code is written.

When people who don't know a language sufficiently enough use AI then it's a recipe for disaster. Teams will show metrics that wow 90% adoption of AI but juniors don't learn enough.

At least that's my experience. Very much interested in knowing if I can use AI more efficiently!

Re: Ask HN: How should junior programmers use and/or not use AI for programming?

#3
What do the experts in learning say? Preferably some that don't work for the LLM peddlers.

In my non expert opinion, you learn a lot from at least two things that using a LLM short circuits:

1. Repetition. When you've initialized a bunch of UI controls 100 times, it's safe to let the machine write that for you, take a look and correct what it hallucinated. When you've only done it twice, you'll miss the hallucinations.

2. Correcting your own mistakes. Quality time with the debugger imprints a lot of knowledge about how things really work. You can do said quality time correcting LLM generated code as well, but (see below) it will take longer because as a junior you don't know what you wanted the code to do, while if it's your own you have at least that to start on.

Management types are extatic about LLMs because they think they'll save development time. And they do save some, but after you spend the time to learn yourself what you're asking them to do.

Re: Ask HN: How should junior programmers use and/or not use AI for programming?

#6

Good use: Asking it to help with language specifics, all the nit-picky stuff. Include other basics like well known math and/or small methods. Poor use: Anything related to using intuition and/or the though process behind decision making.

I would argue the exact opposite.

Language specifics you can look up and confirm easily. But recent gpt-4o tried to convince me that Python added a pipe operator in 3.13. Even had sources. To my disappointment, that's just a lie. (https://chatgpt.com/share/67de9c77-d5f4-8012-9f1c-ac15b70aee...)

On the other hand, intuition and thought process is something I have good experience with ChatGPT, ie deciding on architecture (tRPC vs gRPC vs REST for my use case).

I would say good use: generating small code snippets, architecture decisions

Bad use: Anything documentation related, any specific feature, any nitpicks. (Just ask the security guys how good chatgpt is at paying attention to the little things) Anything you can look up in docs / ref. Anything where there is a clear yes / no answer

Note: A good use of LLMs imho is trying to get a start point for lookup docs, like

"What's that thing in Python like [x for x in...] called and where can I find more info". If you however ask it for exact rules for list comprehension it's gonna tell you lies sometimes

Edit2: Unless you mean like really general language specifics. Like how do I make classes in Ruby. In that case yeah that works

Re: Ask HN: How should junior programmers use and/or not use AI for programming?

#7
post #6

Good use: Asking it to help with language specifics, all the nit-picky stuff. Include other basics like well known math and/or small methods. Poor use: Anything related to using intuition and/or the though process behind decision making.

I would argue the exact opposite. Language specifics you can look up and confirm easily. But recent gpt-4o tried to convince me that Python added a pipe operator in 3.13. Even had sources. To my disappointment, that's just a lie. ( https://chatgpt.com/share/67de9c77-d5f4-8012-9f1c-ac15b70aee... ) On the other hand, intuition and thought process is something I have good experience with ChatGPT, ie deciding on architec…

> A good use of LLMs imho is trying to get a start point for lookup docs, like

I like this and resonate with it a lot. Sometimes you don’t know what you don’t know or you you just a little about what you might not know. This helps at least give you a name for the thing which you can then verify from source.

Re: Ask HN: How should junior programmers use and/or not use AI for programming?

#8
AI is fantastic for doing stuff you are already qualified to do, but faster. It's great for prompting you with what to do next, and offering different ways to think about the problem in front of you. But you have to be able to describe the problem.

It's very good for learning more about stuff you're unfamiliar with. But you have to want to use it as a tool to learn.

It's terrible for inexperienced people who are uninterested in learning and who want a shortcut to a bigger paycheck. Vibe coding will not save the apprentice developer.

What worries me is how stubbornly younger devs (and really all students/younger professionals) seem to be resisting this rather obvious conclusion. It's Dunning-Kruger on steroids.

A rising tide lifts only seaworthy boats.

Re: Ask HN: How should junior programmers use and/or not use AI for programming?

#9
I wouldn't let junior devs anywhere near "agentic" tools like Aider / the newer Copilot stuff.

These things just let you turn off your brain and spend hundreds of thousands of tokens just rewriting entire features until there aren't any errors left.

Post reply on HN