| ▲ | mark242 2 hours ago | ||||||||||||||||||||||||||||||||||
I would argue that it's going to be the opposite. At re:Invent, one of the popular sessions was in creating a trio of SRE agents, one of which did nothing but read logs and report errors, one of which did analysis of the errors and triaged and proposed fixes, and one to do the work and submit PRs to your repo. Then, as part of the session, you would artificially introduce a bug into the system, then run into the bug in your browser. You'd see the failure happen in browser, and looking at Cloudwatch logs you'd see the error get logged. Two minutes later, the SRE agents had the bug fixed and ready to be merged. "understand how these systems actually function" isn't incompatible with "I didn't write most of this code". Unless you are only ever a single engineer, your career is filled with "I need to debug code I didn't write". What we have seen over the past few months is a gigantic leap in output quality, such that re-prompting happens less and less. Additionally, "after you've written this, document the logic within this markdown file" is extremely useful for your own reference and for future LLM sessions. AWS is making a huge, huge bet on this being the future of software engineering, and even though they have their weird AWS-ish lock-in for some of the LLM-adjacent practices, it is an extremely compelling vision, and as these nondeterministic tools get more deterministic supporting functions to help their work, the quality is going to approach and probably exceed human coding quality. | |||||||||||||||||||||||||||||||||||
| ▲ | dasil003 an hour ago | parent | next [-] | ||||||||||||||||||||||||||||||||||
I agree with both you and the GP. Yes, coding is being totally revolutionized by AI, and we don't really know where the ceiling will be (though I'm skeptical we'll reach true AGI any time soon), but I believe there still an essential element of understanding how computer systems work that is required to leverage AI in a sustainable way. There is some combination of curiosity of inner workings and precision of thought that has always been essential in becoming a successful engineer. In my very first CS 101 class I remember the professor alluding to two hurdles (pointers and recursion) which a significant portion of the class would not be able to surpass and they would change majors. Throughout the subsequent decades I saw this pattern again and again with junior engineers, bootcamp grads, etc. There are some people no matter how hard they work, they can't grok abstraction and unlock a general understanding of computing possibility. With AI you don't need to know syntax anymore, but to write the write prompts to maintain a system and (crucially) the integrity of its data over time, you still need this understanding. I'm not sure how the AI-native generation of software engineers will develop this without writing code hands-on, but I am confident they will figure it out because I believe it to be an innate, often pedantic, thirst for understanding that some people have and some don't. This is the essential quality to succeed in software both in the past and in the future. Although vibe coding lowers the barrier to entry dramatically, there is a brick wall looming just beyond the toy app/prototype phase for anyone without a technical mindset. | |||||||||||||||||||||||||||||||||||
| |||||||||||||||||||||||||||||||||||
| ▲ | pragmatic 2 hours ago | parent | prev | next [-] | ||||||||||||||||||||||||||||||||||
Now run that loop 1000 times. What does the code /system look like. It is going to be more like evolution (fit to environment) than engineering (fit to purpose). It will be fascinating to watch nonetheless. | |||||||||||||||||||||||||||||||||||
| |||||||||||||||||||||||||||||||||||
| ▲ | seba_dos1 an hour ago | parent | prev | next [-] | ||||||||||||||||||||||||||||||||||
> Unless you are only ever a single engineer, your career is filled with "I need to debug code I didn't write". That's the vast majority of my job and I've yet to find a way to have LLMs not be almost but not entirely useless at helping me with it. (also, it's filled with that even when you are a single engineer) | |||||||||||||||||||||||||||||||||||
| ▲ | pphysch 2 hours ago | parent | prev [-] | ||||||||||||||||||||||||||||||||||
Automatically solving software application bugs is one thing, recovering stateful business process disasters and data corruption is entirely another thing. Customer A is in an totally unknown database state due to a vibe-coded bug. Great, the bug is fixed now, but you're still f-ed. | |||||||||||||||||||||||||||||||||||