What I Want to Build
Jeff Uren ★ 2026-09-22
LLMs and coding agents pose a really amorphous problem for me at the moment.
At face value, I don't feel very good using them, never have. But I do use them, for specific reasons. A proportion of my code is generated by LLMs because I have a small team, and not enough time, or money to be able to do the things that my employer demands of us. So I lean on LLMs to fill the void that collectively we can't.
In tight spaces, I can use it to spike something out in an area that I don't have a lot of experience in, and then I can take that result and re-carve it into something that is more in line with the style and quality of the surrounding code-base and my own preferences.
But I don't feel good about it, and I also don't feel like I have a choice. I could just say "no" and not use them, but then I'd be letting my team down, and my employer down. So I use them, and I try to use them in a way that doesn't compromise the integrity of the codebase, or the quality of the codebase. I try to use them in a way that doesn't compromise my own integrity as an engineer, developer, and as a person.
It doesn't produce great code, but it produces code that is good enough to get the job done so long as I keep an eye on it and know when to call a spade a spade and just write something myself. At times I've let it go to town on a problem whole-hog just to see where it goes with it, and then re-written the whole thing from scratch. It's as good at showing me how I don't want to do something as it is at showing me how I might want to.
My writing review processFor instance for this site uses LLMs to help me catch inconsistencies, places where I've contradicted myself, or muddied the message too much. I don't let it write for me, though I've tried letting it help me outline, it does a fair job of that. I don't have writer friends, and I don't have a background in writing, or literature, editing, or anything else tangential or corollary to writing. So I lean on it to let me know when I've done something that I'd probably catch on the 5th or 6th re-read. In some instances, never catch at all.
Here's the rub. The things I really want to build, the things that I don't see other people building, are things that I don't want to build with LLMs, but I know that LLMs would help me deliver something in those spaces faster, and with less effort.
Most if not all of it is in the humanitarian space, or knowledge management space, or both. Ultimately I want to build tools and applications and technologies that help people. I'm not interested in building things that make me cartloads of cash. I don't want to be on a yacht in the Arctic scoffing at the idea of helping another vessel in distress because I don't want to be bothered, or because I have things happening on that boat I don't want them to see.
That's not me. I just want to live comfortably, pay my bills, set aside some money for my retirement and have something to give my kids at certain points so they can go to College, University, live a life. So I have a moral dilemna.
With a deep understanding of some complicated domains, the things I could build with the right tools and the right people could be life-saving, or at least life-improving. But I don't have the money to build those things, or the money and time to hire people to build those things. They're unsustainable domains from an economic incentives perspective. No one else is going to fill these gaps because there's really just no money in it, and it may even result in a loss.
My options consist of:
- Starting and open-sourcing, hoping that someone else joins to help
- Going it alone, and most likely burning myself out in the process
- Relying heavily on LLMs
Each of those options comes with varying degrees of compromise and/or cost, and I don't know which one is the right one. I don't know if building with an LLM, will result in a level of backlash which means the project won't get off the ground anyway. I could do it, because these things will still take mounds of effort and thought to get right even with an LLM in play. But morally, it feels wrong.
I love to write code, and build. Learning how things work, and how to make them work better is something I pour myself into wholeheartedly. But I don't want to be a part of the LLM revolution, and I don't want to be a part of the LLM backlash. I just want to build meaningful things that help people, for people to make rational decisons, and I want to do it in a way that's sustainable for me, and my family.
Also, I don't want to be the purveyor of a system, or a tool, that I really don't understand how it was built or how it works. Providing good software is about understanding the system, and being able to explain it to others. Being in the position of saying "I don't know, the LLM just built it that way" isn't something I want to defend.
Right now, I don't know what the right answer is. I've tried just leaning on the LLMs to get things done, and it works, but it feels hollow with varying bits of the systems being outside of my understanding of it. I can't get over the feeling that I didn't build any of it (because I didn't really). But also, I don't feel, for instance, like writing tons of boilerplate CSS, or boatloads of Traits and Structs, or repetitive code is a good use of my time, and I've done that so much in the past that it's hard to get motivated to do it again.
Lots of places in the development process don't really provide me with any real learning opportunity anymore, which correlates to feeling a lot less joy and fulfillment in the process of building something. That learning fulfillment has, and always will be a major driver for me in building anything. Not just code, but lots of other things as well outside of this shiny rock full of lightning we call a computer.
The places where I do find fulfillment and some sense of completion are in the design and architecture of systems and solutions, as well as digging ever deeper into the internals of how things work, and the long line of decisions that have been made throughout history leading up to somethings existing.
The pressure is on to use LLMs to deliver more and more things, to integrate it into more and more aspects of our lives. Partly as a justification for it's outrageous financial and environmental costs, as well as in part because the more pervasive it is, the harder it will be for the large tech oligopolies to lose their shirts in the process. It's ultimately useful, maybe not the right tool for every job, but it is a tool that can be used to get a job done at a certain level of quality, and speed.
It doesn't feel morally ambiguous enough, and that's part of the problem. My work peers are leaning into it, my wider technology peers are railing against it. Which means I feel stuck somewhere in the middle, trying to justify it's use to myself, and to others, while also trying to justify not using it to myself, and to others.
For myself and my reports, I want them to learn strong fundamentals so that they can reason strongly about systems, problems and things they're trying to tackle. LLMs feel like a short-cut around that, and very clearly can become a crutch that prevents people from building strong foundational and specialist knowledge.
It feels like an untenable position, and I don't know what direction to go in. Every atom of my being wants to just get up from my desk, walk out into the woods, build a cabin, and live off the land forgetting that computers were ever a thing. Come back when the impending doom-filled apocalypse has passed, and the world is in a better place. But I can't do that, I can't feed my kids on birch bark and wild mushrooms, and I can't pay a mortgage with deer hides and pine cones. So I have to make a decision, and I don't know what the right one is.
_J