Live data from Hacker News

Reflections on software engineering in the age of AI

adiamond.me

31–40 of 110 posts

Re: Reflections on software engineering in the age of AI

#31

This is not an Age of AI. Why do so many not-real-programmers think this is an age of AI? It's just a hype. I am developing my own app 2+ years manually, and not use "AI" at all. Using AI usually can cause many problems, which the author pointed at. Programming should be enjoyable, not an annoyed or unhappy thing.

> I am developing my own app 2+ years manually, and not use "AI" at all. How does this mean this isn't an age of AI? Because you're The Representative of Programmers? > so many not-real-programmers Oh sorry I missed this part. It seems that you really are!

Please don't cross into personal attack, no matter how right you are or feel you are. All it does is damage the container and make things worse.

https://news.ycombinator.com/newsguidelines.html

Re: Reflections on software engineering in the age of AI

#32
One thing I just discovered is that I’m no longer interested in choosing a novel tech stack. What used to engage me now just feels shallow to me so I stick with what I already know.

Not sure if that’s fine though since I get to the point of a project being interesting a lot faster instead of wiring tools together.

Re: Reflections on software engineering in the age of AI

#33
post #7

> Someone asks you to add a feature to an existing program While I empathize with the tone, even before AI the creativity was largely at the feature definition step, not in the implementation. Outside of the very few computer scientists working on novel algorithms, the vast majority of software development is a mapping problem between the feature request and the mundane technical details, something repeatedly (and co…

This is not true. First of all, not all software is written in the context of a FAANG company with “feature requests”. Secondly, writing software is similar to the process of design , this comment reads like “the vast majority of handbag design is mapping problem between features and leather”, ignoring that both the design and implementation can be rewarding to work on. Eg. I’m working on a program for myself and the…

> I’m working on a program for myself and the overall architecture of the program as well as some parts of its implementation are clever and compose well to make the codebase a joy to work in. I am not simply “mapping features to mundane technical details”.

You said it: you are working on a "program for yourself". Hobbyist craft programming will always be here. The question is what kind of software engineering will be paid for, and a career can be built on.

I don't see much of a market for pure software engineers anymore. You also need to be a product manager, scientist, or have some other domain knowledge adjacent to software that relates to the real world.

I say this with empathy for those who just enjoyed the craft of designing and building software, and thought that alone would provide them a livelihood and career in perpetuity, but have found a big chunk of what they loved doing (and getting paid for) overtaken by AI coding agents.

Re: Reflections on software engineering in the age of AI

#34

This is not an Age of AI. Why do so many not-real-programmers think this is an age of AI? It's just a hype. I am developing my own app 2+ years manually, and not use "AI" at all. Using AI usually can cause many problems, which the author pointed at. Programming should be enjoyable, not an annoyed or unhappy thing.

There are still bespoke craftsman in this era of machinery and assembly lines. You choosing to do something in one specific manner is more the exception that proves the rule then any rebuttal.

Current AI cannot be comparable with "machinery and assembly lines".

Current AI companies stole much data from Internet without permissions, and used the knowledge of many people directly shamelessly.

It cannot resolve many practical problems well, even in programming area.

Do you want the software-assistant to do the important or enjoyable things instead of you? Do you want your assistant in real life to eat the delicious food instead of you?

Re: Reflections on software engineering in the age of AI

#35
post #20

"you haven’t done any of the hard thinking you would normally do in writing the code yourself" It's true, I spend less time solving problems that arise naturally from the process of implementation. But implementation errors have a poor signal-to-noise ratio. For every error that exposes a real design problem there are 10 others that involve routine fixes: type errors, scope issues, import resolution, dependencies. Th…

| type errors, scope issues, import resolution, dependencies.

I write code myself and use the LLM to find mistakes then fix them manually. I recommend inverting the conventional wisdom on LLMs:

  1. Don't use it to write code. It's a terrible
     programmer. But it's an intelligent rubber duck
     and a solid analysis tool.

  2. Write the code yourself. It'll go faster than
     figuring it out as you go along. It's just typing
     if you have a plan.

  3. Use an LLM to sanity check what you wrote.
     It can find potential design issues or future
     problems or breaks from convention. Decide based on
     your experience how much you want to address these
     issues before moving on.
Is this as fast as AI writing the code? Not at first but possibly over time. Maybe faster. Certainly better quality.

Plus you don't lose any of your skills in the process.

You're still doing the gruntwork necessary to keep your skillset.

And the token cost is a small fraction of what it takes to get LLMs to write good code.

Re: Reflections on software engineering in the age of AI

#36
post #7

> Someone asks you to add a feature to an existing program While I empathize with the tone, even before AI the creativity was largely at the feature definition step, not in the implementation. Outside of the very few computer scientists working on novel algorithms, the vast majority of software development is a mapping problem between the feature request and the mundane technical details, something repeatedly (and co…

I always think that stuff is funny because it clearly comes from a place of having only worked at faang-level-esque companies. I’ve only ever worked at messy mid-size software companies and have never once had a legit product manager guiding feature work, it’s generally been up to the developers to figure out what needs doing

> I’ve only ever worked at messy mid-size software companies and have never once had a legit product manager guiding feature work, it’s generally been up to the developers to figure out what needs doing

That's because the systems and problem spaces at FAANG companies are so large that you need(ed) a lot more division of labor to make anything work. The division of the technical side of the house between those focused on product management and those focused on building software allowed both to be done more effectively, but both roles have had a lot of their work overtaken by LLMs.

Also, From what I've heard, FAANG companies are going through big (and painful) transitions to align their staffing with the reality of what current AI tools are capable of.

Re: Reflections on software engineering in the age of AI

#37
post #20

"you haven’t done any of the hard thinking you would normally do in writing the code yourself" It's true, I spend less time solving problems that arise naturally from the process of implementation. But implementation errors have a poor signal-to-noise ratio. For every error that exposes a real design problem there are 10 others that involve routine fixes: type errors, scope issues, import resolution, dependencies. Th…

| type errors, scope issues, import resolution, dependencies. I write code myself and use the LLM to find mistakes then fix them manually. I recommend inverting the conventional wisdom on LLMs: 1. Don't use it to write code. It's a terrible programmer. But it's an intelligent rubber duck and a solid analysis tool. 2. Write the code yourself. It'll go faster than figuring it out as you go along. It's just typing if yo…

> Don't use it to write code. It's a terrible programmer.

I see this sentiment often, and I’m honestly not sure where this comes from, as it’s really not been my experience. I feel like this must come from people feeling threatened and just moving the goals posts, or not knowing how to use the tools effectively.

Re: Reflections on software engineering in the age of AI

#38
post #20

"you haven’t done any of the hard thinking you would normally do in writing the code yourself" It's true, I spend less time solving problems that arise naturally from the process of implementation. But implementation errors have a poor signal-to-noise ratio. For every error that exposes a real design problem there are 10 others that involve routine fixes: type errors, scope issues, import resolution, dependencies. Th…

This is half question, half thought experiment: What exactly is it that makes us think „great, I can delegate coding to the agent, and focus on architecture myself“, instead of „great, I can delegate coding to the agent, and I can delegate architecture to the agent, and I can focus on myself“?

And how many levels up can you construct this sentence before things go south?

What I‘m implying with this question is, of course: What makes us so confident that these things are not also better architects than us?

After all there is a huge corpus on how to architect applications correctly, and that’s in the training data just as much as Python best practices and C++ style recommendations.

Re: Reflections on software engineering in the age of AI

#39
post #37

Earlier quoted context omitted.

| type errors, scope issues, import resolution, dependencies. I write code myself and use the LLM to find mistakes then fix them manually. I recommend inverting the conventional wisdom on LLMs: 1. Don't use it to write code. It's a terrible programmer. But it's an intelligent rubber duck and a solid analysis tool. 2. Write the code yourself. It'll go faster than figuring it out as you go along. It's just typing if yo…

> Don't use it to write code. It's a terrible programmer. I see this sentiment often, and I’m honestly not sure where this comes from, as it’s really not been my experience. I feel like this must come from people feeling threatened and just moving the goals posts, or not knowing how to use the tools effectively.

[deleted]

Re: Reflections on software engineering in the age of AI

#40

This is not an Age of AI. Why do so many not-real-programmers think this is an age of AI? It's just a hype. I am developing my own app 2+ years manually, and not use "AI" at all. Using AI usually can cause many problems, which the author pointed at. Programming should be enjoyable, not an annoyed or unhappy thing.

> I am developing my own app 2+ years manually, and not use "AI" at all. How does this mean this isn't an age of AI? Because you're The Representative of Programmers? > so many not-real-programmers Oh sorry I missed this part. It seems that you really are!

Please prove this is an age of AI, could you confirm it?

If a real programmer does use "AI" usually, or use AI to solve all problems about programming, and AI does the all programming tasks, after 1 or 2 years, do you think his/her skills of programming are improving or declining? He/She will lose big part of programming skills very probability. Do you think he/she is a real-programmer then?

Post reply on HN