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!
Reflections on software engineering in the age of AI
31–40 of 110 posts
Re: Reflections on software engineering in the age of AI
#32Not 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> 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…
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
#34This 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 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"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…
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> 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
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"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…
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"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…
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
#39Earlier 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.
Re: Reflections on software engineering in the age of AI
#40This 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!
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?