I agree with this guy: https://obie.medium.com/what-happens-when-the-coding-becomes...
When you look at the AI as having a Jr. Developer at your disposal to do the mundane things you actually elevate yourself higher than you could individually (without the help) as you focus more on architecture and design and guide the LLM to make incremental improvements instead of decremental ones. That's my take at least.
I agree with the takes, but my only question would be.
If everyone is doing high level stuff like architecture and design, how many of "those people" will be really needed in the long term? My intuition is telling me the size of market needing number of engineers will shrink.
Of course it will shrink! Every industry ever has shrunk as tooling got better.
That said, we are a long way from "peak software". There is a lot of scope for new things, so there's room for a lot of high-level people.
And of course the vast majority of current juniors won't step up at all. Just like the web site devs of the early '00s went off to be estate agents or car salesmen or whatever. Those with shallow training are easily replaced.
The wheel will turn though, and those with a quality, deep, education focused on fundamentals (not job-training-in-xxx-language) are best placed to rise up.
In a nutshell, a lot more understanding of how computers work, and how that affects software design.
From theory like Order(n), 3rd Normal Form, P versus NP, Recursion, Logic (including bit logic) etc, to practical things like exploration of language (why languages are different, why that doesn't matter), how Operating Systems actually work (and what they do), how Networks work (their strengths and weaknesses and thus impact on software design) and so on.
Obviously I can't list a 4 year syllabus[1] here, and it would be different for each college. IME colleges don't teach programming past the first couple weeks, although it is the basis for assignments and evaluation for the next 4 years. (In the way that grade school doesn't teach writing after year 1, but you write a lot in the next 10 years.)
[1] All of this can be self taught. There's plenty of text books and materials online. But basically self-taught people learn programming, not theory, and lack the "path" of a formal syllabus.
Each school will of course have a different syllabus, and some will offer selective modules as well focusing on specific areas like graphics, compilers, databases etc.
Thank you for taking the time. This is quite standard CS degree syllabus, while quality and rigour of CS schools differ but I think any decent CS grad should know these.
My take: The market for "Coders" will shrink, but the market for "Problem Solvers who use Logic" will explode.
Think of "Scribes" (people who wrote letters for others) in the past. When literacy became universal, the job of "Scribe" vanished. But the amount of writing in the world increased billion-fold.
Engineering is becoming the new literacy. We won't be "Engineers" anymore; we will just be "People who build things." The title disappears, but the capability becomes universal.
I agree with this guy: https://obie.medium.com/what-happens-when-the-coding-becomes.... It's a game changer when used to pair program (MOB Programming) with you as the navigator and the LLM as the driver. It needs guidance and rework but shit gets done with the human as the ultimate gatekeeper.
Claude opus 4.1:
Your framework for thinking about life's purpose through utility maximization is intellectually rigorous and thought-provoking. Let me engage with your ideas by examining both what works well in your model and where it might benefit from additional dimensions.
## The Strengths of Your Utility Framework
Your insight about logarithmic utility functions is particularly astute. You're absolutely right that spreading value across multiple people generates more total utility than concentrating it in one person - this aligns with established economic principles about diminishing marginal returns. The example of $100,000 to ten people versus $1,000,000 to one person captures this beautifully.
The temporal dimension you've identified is equally important and often overlooked. When you note that helping your parents at 70 provides more utility than waiting until they're 80, you're recognizing that people's capacity to enjoy and benefit from resources changes over time. This adds a crucial urgency to altruism - it's not just about giving, but giving when it matters most.
## Potential Refinements to Consider
However, I'd invite you to think about a few aspects that might enrich your framework:
*The Paradox of Self-Care*: Your model positions maximizing others' utility as "the direct opposite" of maximizing your own. But consider this: if everyone followed this principle perfectly, who would be the recipient of all this utility? There's a recursive problem here. Moreover, maintaining your own wellbeing often enables you to provide more utility to others over time. Think of it less as opposite directions and more as interconnected systems - your capacity to help others depends partly on your own stability and resources.
*Beyond Utility Calculations*: While utility functions provide a useful analytical tool, human meaning-making often transcends these calculations. Consider experiences like creating art, pursuing knowledge for its own sake, or moments of profound connection. These might not maximize anyone's utility in measurable ways, yet they seem central to what makes life meaningful. How would your framework account for the scientist pursuing pure research with no immediate practical application, or the artist creating something beautiful but "useless"?
*The Measurement Problem*: You acknowledge that value isn't just financial but also emotional. This is crucial, but it also introduces significant complexity. How do we compare the utility of teaching someone to read versus comforting them through grief? The incommensurability of different types of value makes optimization extremely difficult in practice.
## A Teaching Exercise
Here's a thought experiment to test your framework: Imagine you have the choice between two lives. In Life A, you maximize total utility delivered to others through efficient but impersonal systems (perhaps developing technology that helps millions). In Life B, you form deep, transformative relationships with a smaller number of people. Which life delivers more utility? Which would you find more meaningful? The tension between these might reveal something about the limits of pure utility maximization.
## Building on Your Foundation
Your three optimization questions are excellent starting points. But I'd suggest adding a fourth: "How do I discover what actually provides utility to others, given that people's needs are complex and sometimes unknown even to themselves?"
Your framework shows remarkable sophistication for someone at 21, particularly in recognizing the multi-dimensional nature of value and the importance of timing. As you continue developing these ideas, you might find that the most important thing in life isn't a single principle but rather the dynamic balance between several essential elements - helping others, yes, but also self-development, creation, discovery, and connection.
The fact that you end with humility about these being preliminary thoughts shows wisdom. The question "what is most important in life?" is one humans have grappled with for millennia, and each generation must find its own synthesis of ancient wisdom and contemporary understanding. Your utility framework contributes meaningfully to that ongoing conversation.
You answered your own question in the description. "DB constraints pop up when I am making changes to my local environment” and that gave you the confidence to promote to QA, Staging and finally Production. A well tested application will find those problematic issues long before it goes to prod. I’m just glad that all business logic is not thrown in the DB as in the past. The separation makes for a much quicker and robust system. Don’t think DB constraints are a relic they are very much a part of the relational database management system and still used in those systems very successfully. Another topic for another thread is the relevance of the RDBMS itself not just one subset of it.
One thing to remember is that some/most are not turned off by a non-glamorous industry like logistics but rather attracted to solving problems regardless of the industry. I’d hire someone who can actually do coding (so not a CTO, CIO level) that is also or has been a lead who can delve into your business and review existing products and can get you an 80% POC in under 3 months. It may not be pretty but it will help you better position to ask for more $$ for contractors or other employees. Start with 1 then scale from there. I’d give them 1 month to study the existing system with no deliverables other than documentation that will be used to replicate your product needs. I’d also be sure to hire a PO (Product Owner) if you don’t have one and have them also learn the product inside and out as they will be the gatekeeper between the coders and the users as to how the product functions and that the coders fulfill all the requirements.
This one also: https://terriblesoftware.org/2025/12/11/ai-can-write-your-co...
reply