Thoughts Regarding Software Development with AI

My thoughts on using GenAI (LLMs) for software development are varied, but not simple. I see a watershed somewhere between extreme hype and usefulness.

AI-generated image representing AI.

There’s what I call “hype lies” from AI product vendors—OpenAI especially, but others as well. The bottom line is that LLMs will never lead to AGI, so all the ways the CEOs and other executives have indicated that general intelligence and superintelligence are just a few months away, are lying. Of course, these vendors have produced useful products and the stakes are high, but “win at all costs” is a different story.

Where I mostly find LLMs useful is in doing things that I don’t know a lot about, or have forgotten and lost track of a space, and I really don’t want to learn at all or learn again. That’s mostly related to all the crazy frontend technologies including HTML 5, CSS, and any given client-side UI framework (e.g. React, Vue.js, Svelte, etc.), and all the trimmings. Previously I had to pay people to do that development. Even if I could have done it myself, there wasn’t enough time to do completely on my own everything that I needed to do. Now I absolutely can “do it myself.”

I am not entirely bad at UX and UI. My childhood and teenage years were filled with art, both creatively myself and in observation. One of my favorite artists was and still is Albrecht Dürer. One of the primary reasons that his work got my attention was not only the beauty of his works, but appreciation for his precision. Some people can’t tolerate my inquisitive nature when viewing art and saying, “I wonder what [artist] meant by that.” Yet, I’d rarely have to wonder with Dürer’s work. Also Norman Rockwell was an amazing storyteller in his illustrations. Maxfield Parish did fascinating work. The Hudson River School artists, especially Albert Bierstadt, … But, I digress. Well, that’s me—Mr. Inquisitive. So, there. My point about Dürer’s work is that UX and UI require a lot of precision. I love precision.

When I question my own abilities or experience in UX and UI, the LLM has plenty of data and training to have a reasonable answereven strong opinionsand can make recommendations among several options. I generally find the recommendations among options to be accurate, whether I had a leaning before prompting, or not.

LLMs are not strong at generating domain models. That’s mostly because all the global training data is based on CRUD. So, you want database queries and need complex joins? No problem. Oh, you want a nice, fluent, and expressive domain model with rich behavior in a specific area of expertise? Problem. Sometimes it can’t even get constructors right—especially with optional parameters—let alone fluent, rich behavior. It only knows getters and setters and that’s what you get when you ask for a domain model type based on some properties. I have mostly taken over those efforts, at least until I have enough examples in my own code to instruct the LLM to base a newly requested type on the same general modeling concepts. Yet, even then it often generates code that is wrong.

The worst of hallucinations happen in the area that you’d hope the LLMs would be most useful: domain expertise. I have seen many very confident answers in areas where I need help, but that are 100% wrong. The worst part for me is that I actually don’t know what accurate is until I ask a human domain expert to validate the potential knowledge unearthed. Now, as you can imagine, finding a true human domain expert in well-known domains is still difficult, and expensive. In novel, groundbreaking areas, there’s no chance the data exists. Otherwise, it wouldn’t be groundbreaking. That should be obvious.

Fact is, the LLMs simply don’t have training data that is considered existing IP, unless the backing companies steal it. Even stealing it would be extremely difficult because most of the knowledge lurks in the brains of people and in source code, and to get access to source code would not only be deeply criminal, but far more difficult than stealing the content of my four books.

I haven’t even addressed architecture and several other factors. I will be keynoting in Berlin at the iSAQB Software Architecture Gathering in late November 2025 about that.

Note: I hope you noticed all my em dashes throughout this post. It’s sort of my statement about so many calling out the existence of em dashes in text as a sure sign of a document being delivered by GenAI. Yes, it’s totally a trolling trigger move. Take that, people who never even heard of em dash before LLMs—you know.

More to explore

Scroll to Top