Hacker News new | ask | show | jobs
by byzantinegene 48 days ago
you have 35 years of experience and have already built up the learning capability and general framework to acquire new knowledge. you know how to use agentic coding as a tool to supplement your work. the juniors who start today don't have that, they overrely on agentic coding and do not know what they don't know
8 comments

Exactly this. We need to be more precise than blanket statements like "agentic coding is a trap" and start figuring out what a "tasteful" application of agentic coding looks like. ChatGPT is destroying liberal arts curriculums because students can choose to not do anything of the thinking themselves and produce mediocre work that passes the bar. I think the same problem is showing itself with agentic coding, just with more directly measurable consequences (because the pile of software ends up failing in a more spectacular way than the pile of bad writing).
On liberal arts is simply a matter of what the students want to get out of the class, vs what the teacher wants the students to do: There's a huge disconnect in goals and expectations, so there's no way for the teacher to actually win. The fact that there's such disconnect should give the departments pause.

This doesn't happen at all for using agentic coding: What the programmer wants and what the boss wants are pretty well aligned. There are corner cases where someone isn't allowed to use LLMs, but does it anyway, but in most cases, the organization agrees.

> what the students want to get out of the class, vs what the teacher wants the students to do: There's a huge disconnect in goals and expectations, so there's no way for the teacher to actually win. The fact that there's such disconnect should give the departments pause.

Unless the teacher's role is to scaffold and support the students in acquiring what the students want, gain trust and lower the disconnect.

Honestly I'm not really thinking about the boss-programmer relationship, but rather the programmer-agent relationship. At best, you get what fnordpiglet is talking about, where it's a symbiotic relationship. On the other side of the coin, you get a parasitic relationship like the OP is talking about: the agent delivers results, you take credit, you fail to develop (or maintain) long-term skills, you become a non-value-adding middleman, you get replaced.
To be fair, many people should be replaced. What is happening right now with layoffs in tech is that the overstaffing these organizations have been accruing across the last decade is staggering
I think it's most easily summarized by: "It's still important to know things and what was important to know before hasn't really changed". If anything, agentic coding highlights and accensuates the need for good systems and software design knowhow.
IMO, by the time todays juniors would have 5-10 years of expected experience, the entire field will be something different altogether. Language choice distribution will collapse (if not change altogether), whole new modalities of monitoring and progressive delivery guardrails will come into play, essentially creating a 24/7 incremental rollout of pure agentic code, correctness will be determined by a mix of language features and self-monitoring by models in production and automated testing against production snapshots in pre-production, and deep debugging will the be province of a select group of engineers and there will be a pathway to those roles for juniors, but those roles will be coveted and difficult to break into (and probably will require education and maybe even informal accreditation).
Just as "use code for contracts" failed for crypto currencies, "use AI output as prod" will fail for AI. Both is based on "just don't make catastrophic mistakes anymore".

You also wrongly assume that requirements can always easily expressed as natural language.

Another point: Software Engineering always starts where tooling capabilities stop. You don't get a competitive advantage by building without engineers what anybody everybody else can build without engineers.

> Just as "use code for contracts" failed for crypto currencies, "use AI output as prod" will fail for AI. Both is based on "just don't make catastrophic mistakes anymore".

What I think will happen is AI will write code and it will do the best it can to mitigate mistakes prior to rollout, but once rollout time occurs, rollout will be incremental and it will self monitor by defining success conditions at rollout time. The nature of the code will mitigate "catastrophe" to a small group at worst, but most likely initial rollout will just run new versions of the code in a simulated context (language design could benefit from this) and analyze potential outcomes without affecting current functionality.

But when the code goes live... it will be slowly scope changes progressively (think feature/experiment flags) and if it fails in the initial cohort, it will redirect. If success is positive, it will increase the rollout cohort.

This is a normal software engineering practice today, but it's labor and process intensive when driven by humans. But in a world where humans are less involved, this process is scalable.

This assumes failures can be detected and fixed more easily than generating the corresponding change. I am not convinced that's the case.

Counter points to my own arguments:

1. We don't know yet in detail what AI is good at.

2. AI doesn't need to be perfect, just "good enough", whatever that means for a specific project. More failures while saving hundreds of thousands dollars each year might be acceptable, for example.

> 2. AI doesn't need to be perfect, just "good enough", whatever that means for a specific project. More failures while saving hundreds of thousands dollars each year might be acceptable, for example.

This I think is the unexplored aspect of what's happening right now. Guardrails around "good enough" systems is where the future value lies. In the future code will never be as good as when the artisans were writing it, but if you have an automated process to validate/verify mediocre code (and kick it back to AI for refinement when it fails) before it's fully productionized, then you have a pathway to scaling agentic coding.

Validating / Verifying mediocre code is pretty hard as nobody was able to agree what that even means.
> rollout will be incremental and it will self monitor by defining success conditions at rollout time.

This sounds a lot like allowing an LLM to define tests as well as implementation, and allowing the LLM to update the tests to make the code pass. Recently people have come to understand (again?) that testing and evaluation works better outside of the sandbox.

Sorry I wasn't very clear about that part. I think success conditions are described by stakeholders, whoever that is, and then the implementation of monitoring them is probably created by the LLM. For engineering level stakeholders that's going to be metrics, performance, etc. Whereas for more business side stakeholders that'll be a mix of data metrics and product feature metrics, click-through rates, stuff like that
> Another point: Software Engineering always starts where tooling capabilities stop. You don't get a competitive advantage by building without engineers what anybody everybody else can build without engineers.

I'd note here that the long arc of software engineering has been commodifying the discipline into tooling. Ask any unix greybeard how shitty modern abstractions are and they'll give you all you can stomach and yet the wheel turns despite their treasured insights.

Well, ask any engineer about any code... ;-).
Everything looks a nail for our hammer-shaped chat bot.

I think you’re overly hyped if your actually believe this is going to be a reality in 5-10 years.

Up until about four months ago, the sentiment by so many programmers online (here, reddit, etc) was that LLMs were absolutely useless at coding. And yet, many of us were puzzled, because we were having success with them, at coding.

People were burying their heads.

Today, there are not many of those people left. Some, but not a lot. Because you can only deny reality for so long.

I don't know what the coding world is going to look like in 5-10 years, but everything has changed radically in the space of a year from maybe 10% of people using agents to code to probably 95% of people now. In about a YEAR.

I don't know, but my assumption is these things will get better to a point where they will be automating close to 100% of coding, and deploying, and verifying, etc. The old job we had will be completely changed well before 10 years. I still think us "engineers" will have a role to play, but I genuinely don't know what it will look like.

> I don't know what the coding world is going to look like in 5-10 years, but everything has changed radically in the space of a year from maybe 10% of people using agents to code to probably 95% of people now. In about a YEAR.

Last I saw about a week ago, the stats were about 35%. There may be some confusion around this:

1. The absolute number could have remained the same but the sheer volume of vibe-coders who never coded before raised the percentage. For example, if 100 out of a population of 1000 people uses AI then the percentage is 10%. If, over the next year 9k new vibers were created but none of the existing 1000 people changed their workflow, you will see 9100 people out of 10000 people using AI - that's now a 91% rate of people using AI to code even though none of the people since last year changed the way they work.

2. Last I checked, pre-AI, there were about 12m working developers in the world (SO survey extrapolated). As of February this year, CC, by itself, had 60k subscribers. Even if we err on the side of optimism and assume every single subscriber is running the agent, that's still not 95% of developers.

> I still think us "engineers" will have a role to play, but I genuinely don't know what it will look like.

??? We already know what it looks like - "Business Analyst" has bee a role since forever (at least since 1995, when I entered the workforce). If you wanted a role where you wrote no code but merely drew up specs for the programmers to code, you could have had it as a BA.

It's just that few of us wanted to do that as it paid half what an engineer made. Now with the supply of BAs potentially doubling, it will pay a quarter of what an engineer used to make.

I don't know what industry you work in or what developers surround you, but the number of developers NOT using agentic coders in my workplace is 0.

And I know this is the same in peers workplaces.

> I don't know what industry you work in or what developers surround you,

Why would that matter? I'm not giving you my experience of developers next to me, I'm telling you what I gleaned from published reports.

In my workplace number of “agentic coders” users is 1. And among principle and seniors - 0.
someone probably made this same argument against certain frameworks over the years and juniors still figured it out. we need to stop trying to babysit learning for hypothetical situations.

the bar to "start" is lower and the bar to actually competency is higher now, juniors who want to actually learn instead of just pressing enter over and over again will do so regardless of whatever you do to "help" them.

It's not really a hypothetical. I work with one junior who's submitted an incorrect bugfix 3 times and counting; he seems genuinely incapable of processing the idea that there's a correctness issue he has to resolve, rather than a prompt engineering issue that will allow Claude to figure it out if only he asks in the right way.
To be fair this was a thing before AI as well…
that's not the tooling's fault i feel. i've used LLMs to help explore and debug issues, point me to the right documentation to investigate, etc. I WISH i had something like this 30 years ago.
Juniors will figure out how to make things work just as well as we did. They may end up with a different set of skills, but competitive advantage is still a thing, and so competition will mean they end up with the best skills suited for the environment.
> they overrely on agentic coding and do not know what they don't know

There's no better time to have a curious mind

If a junior builds something with agents that turns into a mess they can’t debug, that will teach them something. If they care about getting better, they will learn to understand why that happened and how to avoid it next time.

It’s not all that different than writing code directly and having it turn into a mess they can’t debug—something we all did when we were learning to program.

It is in many ways far easier to write robust, modular, and secure software with agents than by hand, because it’s now so easy to refactor and write extensive tests. There is nothing magical about coding by hand that makes it the only way to learn the principles of software design. You can learn through working with agents too.

> that will teach them something. If they care about getting better,

This pre-supposes the idea that the business is _willing_ to let that happen, which is increasingly unlikely. The current, widespread attitude amongst stakeholders is “who cares, get the model to fix it and move on”.

At least, when we wrote code by hand, needing to fix things by hand was a forcing function: one that now, from the business perspective, no longer exists.

This is what I have been thinking. Business will always try to do more with less because their only true goal is figuring out how to make more money. They will sacrifice giving those juniors time to learn from their mistakes for the sake of making more widgets (code). From the wider generational view, they will rob today's juniors from the chance to learn and thereby keep the talent pipeline full so they can profit today, the future (and the developers who will arrive there) be damned. The economic game is flawed because it only ever comes down to a single output that is optimized for: money. One solution? I think software people might consider forming unions. I know that's antithetical to the lone coder ethos, but if what this comment reflects is true, the industry needs a check and balance to prevent it from destroying its foundation from the inside.
Why would a business train anyone when they can lean on the govt to provide unbankruptable loans to the student to go to university to learn themselves
If it’s broken and the dev can’t debug it, the business won’t have much of a choice.
There is a lot of space between broken and high quality that won't necessitate any business letting people "learn" on the job.
That’s also true without AI. Engineers want more time to polish and businesses want to ship the 80/20 solution that’s good enough to sell. There's always going to be a tension there regardless of tools.
Don't you see the problem? Now engineers literally do not have any leverage. Did the model make it work? Yes? Then ship it, what are we waiting around for?
“Currently an engineer at OpenAI”

Don’t forget to mention that.

Coding by hand is not mere typing symbols into editor that LLMs are now replacing, it’s thinking, abstracting, deciding how to apply your knowledge and experience, searching for information.

And of course in the current workplace where there’s often a push from managers to use LLMs as much as possible and to put as much work as possible on yourself, in this churn junior will not get to learn anything besides prompting and simple tooling.

> thinking, abstracting, deciding how to apply your knowledge and experience, searching for information

None of this requires coding by hand. I can do those things better and faster with agents helping me. That incudes unfamiliar areas where I am effectively a junior.

Do you describe what to write to llm, line by line, in excruciating details? Sounds like a painful way to develop.
Line by line is no longer what I need to think about. I think about types/schemas, architectural division, contracts between services and components, how to test thoroughly, scaling properties, security properties, and these kinds of things.
> the juniors who start today don't have that, they overrely on agentic coding and do not know what they don't know

Y'all need to stop worrying about the kids.

They're smarter than us and will run circles around us.

They're going to look at us like dinosaurs and they're going to solve problems of scale and scope 10x or more than what we ever did.

Hate to "old man yells at cloud" this, but so many people are falling into the trap because of personal biases.

While the fear that "smartphones might make kids less computer literate" is true, that's because PCs are not as necessary as they once were. The kids that turn into engineers are fine and are every bit as capable.

Was not a IQ decline observed for the first time recently? Also, no one gets smarter by outsourcing thinking.
> Also, no one gets smarter by outsourcing thinking.

Thinking is happening at a higher level. Humans are adepts at abstraction, and they are always capable of looking under the hood when needed.

We've never had so much societal capability as now. And that's only going to accelerate. Smart people will use these tools effectively. Don't be so bearish on human ingenuity.

Think of these tools as bullshit / busy work removers. You can focus on what matters and get more done than ever before. Deeper work, more connective work. It also opens fields of research up in an interdisciplinary fashion. People might explore outside of their limited domain now that they have help.

abstraction needs to be built on something. If there is little in your brain, there is little you can do with it.
I think everyone's just citing platitudes at this point.

The earth will move on. Smart people will continue to exist. I'll bet on the smart people.

They're not platitudes. To paraphrase my software mentor, now elderly, on LLMs:

It's an impressive force multiplier, but there has to be some force to multiply.

Not really.

For example preliterate people have absolutely insane memory. In comparison my memory sucks. Having to use notes, look things up etc sucks. Literacy is a tradeoff but at least it can be argued to be worth it.

Then there is smartphones. This is not the same. The tradeoffs compared to pre smartphones cannot be argued to be worth it imo and I was 20 years old when they were introduced. They make society and lives worse. It's not just about not being able to use PC but your attention and social skills sucking.

Then there is AI which is even worse than smartphones. The tradeoffs are so unthinkably bad I can't really even describe it.

This is a curious choice of fields for you, if the last technology you think was a net positive was literacy!
Well, it was. But we still have to pay the bills.
You've got to be kidding me. I'd have never managed to become an engineering professional if smartphones were around when I was a horny teenager. There's simply no way.

The proof is in the fact that the savvy Atherton dwellers work hard to keep their kids away from the crack they themselves have foisted upon the world, or at least to delay or forestall the encounter.

Self-taught, "junior" here.

Due to English-language limitation my most adult life, I struggled to code. Used visual coding etc. But of course, I can't make a living on drag-and-drop harness.

Comes in GPT-3.5, accelerated my learning. Now I'm running my incorporated company, just launched one software-hardware hybrid product. Second one is a micro-SaaS in closed beta.

The point is: when people use "juniors" as a fixed shaped blobs of matter, they focus on the juniors that were in any case going to make mistakes: AI or not. Misses the key point of agentic usage.

> I struggled to code

> ...

> Comes in GPT-3.5, accelerated my learning.

So now you can code? If I sat you in front of a computer with no internet and no GPU but your choice of IDE, you would actually be able to produce a product?

Okay, after re-reading the thread, looks like, this question was not in bad faith. While commenting, I was reading from bottom-to-top and so made an opinion about you based on your bottom thread comments (which still stands correct), but for other readers, they deserve an answer, not the questioner.

Anyone wondering about my proficiency, I can code without internet or AI help. But it takes enormous amount of time and mistakes.

Attention Please Everyone

You're looking at a specimen of one of the most rattled species nowadays. It is so fun finding them under these articles.

Their last attempts at finding inner-validation.

What a waste.

You claimed that you learned to program.

Was that claim not true?

Now you want to have a "discourse"? No thanks.

Honestly, I want you to live with your assumptions and beliefs. No more goodwill from my side to your username.

> Now you want to have a "discourse"? No thanks.

No discourse - you made a claim, but it appears now that your claim is untrue.

It's faster for you to answer the question than to dodge it: Have you actually learned what you claimed you did?

Hey man we all have our own skill levels and challenges and do all sorts of different work.

I don't want to shit on what you've done but you're coming in WAY too hot for how trivial your work is and how inflated your description of it is.

You're demanding humbleness while being extremely proud. Check yourself.

Thanks for the heads-up. Appreciate that.
accelerated what learning? learning to code? learning to engineer? learning to manage? learning to market?
Learning the fundamentals of programming and their translation to code. I'm decent at engineering, managing and marketing solutions.
>> Comes in GPT-3.5, accelerated my learning. Now I'm running my incorporated company, just launched one software-hardware hybrid product. Second one is a micro-SaaS in closed beta.

> accelerated what learning? learning to code? learning to engineer? learning to manage? learning to market?

I'm pretty certain that you think you're talking to an owner of a business but you're actually talking to an AI-techbro whose "software-hardware hybrid product" and "incorporated company" has exactly zero revenue after it was prompted into existence in the hope that it will make some money before other people realise they could prompt the same thing for less.

Haha..so many assumptions. And all of them being objectively wrong.

Cope harder. Try harder to demoralize. It is not going to work.

I had heard HackerNews had some of this loser bunch of personalities. I didn't expect them to show themselves so soon.

But hey, I realized "AI bashing" articles are the best places to find these gate-keepers. Makes sense now.

No, look. You claimed things that I am skeptical about.

Vibing a product into existence without needing any development knowledge or experience just means you now have a "product" that can't really be sold for money.

Repeating what I said on the previous comment:

---

Now you want to have a "discourse"? No thanks.

Honestly, I want you to live with your assumptions and beliefs. No more goodwill from my side to your username.

This is backwards. You were too lazy to learn English even though every hour spent programming also comes with an included English lesson?

Now AI lets you write code using libraries whose documentation you can't even read? How is this a win?

Pls get rid of your assumptions, then we can talk.
I didn’t speak English my early teenage years, and that haven’t stopped me from reading books about programming in my native language. I remember spending hours in bookshops, excited to pick up next book to devour and try out.
I don't believe in victimhood and so didn't want to go here, but since we are comparing notes:

English alphabets came into my education at the age of 10. I got my first computer at the age of 21. I began speaking broken English around the age of 23. Proper internet at the age of 25 or so.

Not to mention, my native language doesn't have programming books, even today.

Of course, an avid reader and Science nerd here. Curiosity and tinkering never stopped.

Out of curiosity. What is your first/native language?

In my country, english is hardly anyones first language, but its' mandatory in schools so I've never had the experience with having to find knowledge but its gate-kept behind a translation wall.

My native language is Gujarati. Done my schooling and college in Gujarati too.

Absolutely, I understand what you're saying.

One of the things people miss out, in most of the discussions is that they think "if you were really serious, you would have figured it out". I agree with that in most instances but language and skill acquisition is a complex process as everyone knows.

English being the de-facto reservoir of programming knowledge and applications, it takes substantial amount of time and effort to cross the threshold of understanding and transference.

In any case, I'm an eternal optimist and I believe in action. It was a great experience listening to people's opinion here and I was kind of shocked to find that some of them are so siloed in their chambers, that's interesting nonetheless.