Hacker News new | ask | show | jobs
by embedding-shape 63 days ago
Really? How long you've been a developer? I've been almost exclusively doing "agent coding" for the last year + some months, been a professional developer for a decade or something. Tried just now to write some random JavaScript, C#, Java, Rust and Clojure "manually" and seems my muscle memory works just as well as two years ago.

I'm wondering if this is something that hits new developers faster than more experienced ones?

8 comments

Probably depends on the individual. Senior developer here and I've always offloaded boilerplate and other "easy to google" things to search engines and now AI. Just how my brain and memory work. Anything I haven't used recently isn't worth keeping (in my subconscious mind's opinion anyway).
Yeah, having to look up the "basic boilerplate" stuff is not worse for me after starting to use AI than it was beforehand.
Experience isn't the problem. I have 20+ years of C++ development, built commercial software in Java, Rust, Python, played with assembly, Erlang, Prolog, Basic.

Played with these coding agents for the last couple weeks and instantly noticed the brainrot when I was staring at an empty vim screen trying to type a skeleton helloworld in C.

Luckily the right idioms came back after couple of hours, but the experience gave me a big scare.

> Played with these coding agents for the last couple weeks and instantly noticed the brainrot

Very interesting, wonder what makes our experiences so different? For you "playing for a couple of weeks" have a stronger effect than for me after using them almost exclusively for more than a year, and I don't think I'm an especially great programmer or anything, typical for my experience I think.

Same for me. Been fully agentic for half a year or so, still remember the myriad of programming languages and things just as well if there's no AI present at all. Hard to shake 15 years of experience that quick, unless maybe that experience never fully cemented?

Maybe the difference between actually knowing stuff vs surface level? I know a lot of devs just know how to glue stuff together, not really how to make anything, so I'd imagine those devs lose their skills much faster.

It a side effect of using AI.

People using AI for tasks (essay writing in the MIT study linked below) showed lower ownership, brain connectivity, and ability to quote their work accurately.

> https://arxiv.org/abs/2506.08872

There was a MSFT and Carnegie Mellon study that saw a link between AI use, confidence in ones skills, confidence in AI, and critical thinking. The takeaway for me is that people are getting into “AI take the wheel” scenarios when using GenAI and not thinking about the task. This affects people novices more than experts.

If you managed to do critical thinking, and had relegated sufficient code to muscle memory, perhaps you aren’t as impacted.

It's probably too much inside baseball to merit a study, but I'm curious if the results would change for part-time coders. When I'm not coding, I'm writing patents, doing technical competitive analysis, team building, etc.

My theory is that if you're not full-time coding, it's hard harder to remember the boiler plate and obligatory code entailed by different SDKs for different modules. That's where the documentation reading time goes, and what slows down debugging. That's where agent assisted coding helps me the most.

SDKs and Binary format descriptors are where I see agents failing the most, they are typically acceptable for the happy path but fail at the edge cases.

As an example I have been fighting with agents re-writing or removing guard clauses and structs when dealing with Mach-o fat archives this week, I finally had to break the parsing out into an external module and completely remove the ability for them to see anything inside that code.

I get the convenience for prototyping and throwaway code, but the problem is when you don’t have enough experience with the quirks to know something is wrong.

It will be code debt if one doesn’t understand the core domain. That is the problem with the confidence and surface level competence of these models that we need to develop methods for controlling.

Writing code is rarely the problem with programming in general, correctness and domain needs are the hard parts.

I hope we find a balance between gaining value from these tools while not just producing a pile of fragile abandonware

i think your environment is a big role. with Ai you can kind of code first, understand second. without AI if you dont fully understand something then you havent finished coding it, and the task is not complete. if the deadline is too aggressive you push back and ask for more time. with AI, that becomes harder to do. you move on to the next thing before you are able to take the time to understand what it has done.

i dont think it is entirely a case of voluntary outsourcing of critical thinking. I think it's a problem of 1) total time devoted to the task decreasing, and 2) it's like trying to teach yourself puzzle solving skills when the puzzles are all solved for you quickly. You can stare at the answer and try to think about how you would have arrived at it, and maybe you convince yourself of it, but it should be relatively common sense that the learning value of a puzzle becomes obsolete if you are given the answer.

> [...] and ability to quote their work accurately.

I guess that's an advantage? People shouldn't have to burden their memory with boilerplate and CRUD code.

The task was essay writing, and the three 3 groups were No tools, search, ChatGPT.

The people who used chatGPT had the most difficulty quoting their own work. So not boilerplate, CRUD - but yes the advantage is clear for those types of tasks.

There were definite time and cognitive effort savings. I think they measured time saved, and it was ~60% time saved, and a ~32% reduction in cognitive effort.

So its pretty clear, people are going to use this all over the place.

I recently had to write a coding interview question for candidates at my current job. I wrote the outline and had Claude generate synthetic data for it. I then wrote the solution without assistance to make sure it was viable (and because I wouldn't ask somebody to do something I wouldn't myself). I had no trouble getting it done in 20 minutes in a language that I haven't used actively in around a year and a half.

I do still write stuff manually frequently - I often spend 5 minutes writing structs or function signatures to make sure that the LLM won't misunderstand or make something up. Maybe that's why I haven't lost it.

That’s exactly why you haven’t lost it.
> I'm wondering if this is something that hits new developers faster than more experienced ones?

Almost certainly, at least according to Ebbinghaus' forgetting curve.

I can tell you that I can still code Python and Haskell just fine (I did those in vim without bothering to set up any language assistance), but Rust I only ever did with AI and IDE and compiler assistance.
> random JavaScript, C#, Java, Rust and Clojure "manually"

Right, sounds very credible to me. What did you write, an addition function in each of those?

Lol, thanks (I guess?), but really isn't that hard. I don't think I know a single experienced developer who doesn't know at least 3-4 languages. I probably could add another couple of languages in there, but those are the ones I currently know best. Besides, once you've picked up a few language, most of them look and work more similarly to each other than different. From my lisp-flavored lenses, C# and Java are basically the same language for most intents and purposes.

I wrote a little toy-calculator in each, ended up being ~250 LOC in each of them, not exactly the biggest test but large enough to see if my muscle memory still works which I was happy to discover it still did.

Well - that's the thing - toy calculators are easy on the "muscle memory". The operations and data types will be mostly similar in syntax across all these languages. If however you wanted to do something more akin to a real world example, using these and those frameworks... it would probably look different. I wasn't disputing the knowledge of multiple languages btw - some of us had experiences in languages from the times way earlier than C# and Java. The point is for real world work you wont quite do toy calculators and the people pushing for "AI writing all the code" are not worried about you retaining the "muscle memory" to write addition and substraction functions....
That's not how I understood other's experience to be, they're describing something that won't let them even write toy calculators. Selected quotes:

> But now, I'm useless. My mind has turned to pudding. I cannot remember basic boilerplate stuff

> Played with these coding agents for the last couple weeks and instantly noticed the brainrot when I was staring at an empty vim screen trying to type a skeleton helloworld in C.

This is very different from what I'm (not) experiencing. My test was for if I can remember the basic syntax of the language itself, I was never a big framework user, so of course using a framework is about the least interesting test I could do of myself.

Instead, I did the bare minimum to see if my "mind has turned to pudding" or "instantly noticed the brainrot", which would have been visible even for a toy calculator, obviously.

> the people pushing for "AI writing all the code" are not worried about you retaining the "muscle memory" to write addition and substraction functions

What are they worried about then? From your perspective, sounds like they're worried about "using these and those frameworks" but that's far from "real world work" in my experience, and really the least interesting thing you could remember as a developer.

> I was never a big framework user,

So you only ever wrote code in academic setting? Not being sarcastic, but no realistic software development in commercial setting will happen without frameworks.

> That's not how I understood other's experience to be, they're describing something that won't let them even write toy calculators. Selected quotes:

Well that is literally not what they are describing. The man said "boilerplate code". Again, unless most of the code you wrote was code used in purely academic setting, whether research or teaching, we all understand boilerplate code to mean something like "code to open a file descriptor / iterate through database rows / poll web server for results" etc. So the typical stuff you would implement while relying on abstractions and concepts someone else already defined for you.

> What are they worried about then?

If I had to guess - they are worried about the growing LLM-backlash working against their hoped-for-industry-wide-adoption and their infinite money at some point running out, because at the end of the day, NVIDIA lending OpenAI 100B to invest in MS Azure and Azure using those 100B to purchase NVIDIA chips...is starting to look a lot like circular financing.

> sounds like they're worried about "using these and those frameworks" but that's far from "real world work" in my experience

Again, if your area of work is academic or teaching, then this probably matches your own real world experience. The problem for the LLM-crowd is that there is a lot more people here whose "real world experience" are not toy calculators and isolated algorithm implementation, but actually yes, using "this and that framework", as otherwise the implementation would take un-realistically long. I may know how TLS works, but would I implement it's handshake routine on my own? Only if I did it as a personal excercise, not in a commercial scenario. Same for UI, same for DB ORMs, etc. You name it.