One reason I think that complex software projects are never going to happen is that the code it generates has no *intent* behind it.

Senior software devs spend an extraordinarily large amount of time reading existing code and asking not just HOW they work, but WHY they were written that way. Reading long-maintained, complex source code is more than mere reading comprehension; it’s LITERARY CRITIQUE. You’re constantly trying to understand the thought process and motivation of whoever wrote that code, in the hopes of gaining insight into their frame of mind.

Well, AI code has no motivation, thought process, nor frame of mind. While the code it generates MIGHT work correctly (a big assumption) at the point it was extruded, there is no plausible way of maintaining that code, and at some point of complexity (sooner than you think!) maintainability becomes critical.

But WHY do we need to understand the motivation behind a pile of code? Because it reduces amount of COMPLEXITY we need to hold in our mind. Understanding an original author’s mindset helps to define a direction of development that will very likely yield successful results that are harmonious with existing code.

And as any senior software dev knows, complexity is the greatest enemy of engineering, and anything that helps constrain the beast increases the likelihood of producing error-free progress.

AI is great at producing code of little consequence, things so basic or throwaway that no deep understanding is needed to maintain it. To me, that constrains its practical use to generating basically SCAFFOLDING and BOILERPLATE upon which your real code is built, essentially making the (fancy and custom) GRID PAPER on which you will actually inscribe your design. Let it write your for-loops, but don’t let it write the functions it calls.

0

If you have a fediverse account, you can quote this note from your own instance. Search https://sfba.social/users/drahardja/statuses/114742915658585167 on your instance and quote it. (Note that quoting is not supported in Mastodon.)