I’m probably the best coder in my org, which doesn’t really say much, but at least allows me to judge about the room temperature. It is solved. I don’t say that’s you, but the only people who say it isn’t “that good” are the same people who used to yak shave, rename and move things 10 times until it “feels right”.
[–] XenophileJKO 4 days ago
[–] akoboldfrying 4 days ago
[–] prmph 4 days ago
[–] akoboldfrying 4 days ago
As with eliminating other forms of abstraction, there's not much gain from doing so. Writing source code and then compiling it offers many useful checks, and greatly simplifies making changes. It's just something that may no longer be necessary at some point.
[–] LeafItAlone 4 days ago
Nearly everyone I’ve worked with that would say this ended up being the in the bottom quartile of those shipping features and their code was often the most complex. At least in small, “fast”-moving companies.
A few people I have worked with have nailed it, but they were the ones to balance present and future weighted towards present.
[–] mzhaase 4 days ago
Spec was good, all tests green, app worked. If I didn't actually go in and try to understand the code I would have shipped it like this.
So here is my question to people saying it's solved : do you actually know that it is or does it simply appear so because all the tests are green?
[–] user43928 4 days ago
First of all, it sounds unlikely to me that such an implementation was made with Opus 5.5 while it never mentioned the workaround.
Secondly, if the performance was indeed inadequate, that's something I would have caught during QA testing and simply have had the agent fix it.
[–] n4r9 4 days ago
[–] user43928 4 days ago
When I looked at a benchmark, it suggested Sonnet 5.5 wasn't much cheaper than Opus 5.5 at Low to Medium effort for similar performance. That might not be representative of real world use though.
[–] n4r9 4 days ago
[–] user43928 4 days ago
Optimizing performance is one of the tasks best suited to AI, since the outcome is measurable.
I can't comment on complex algorithms specifically, but it's not at all the case that this works only for basic apps or cannot handle complex, performance critical work.
[–] prmph 4 days ago
First, you question the model. I have reams and reams of conversations with Opus 5.5 that shows it makes architectural messes all the time
And then you are saying you needed to have performance tests (which many devs don't even bother with) to catch bad architecture?? lol
So what if the architectural problem is not one that would be caught with a performance test? It seems you lack imagination to think of all the ton of issues that that would be very complicated to catch with tests.
[–] user43928 4 days ago
I don't think I commented on performance tests at all.
Maybe I lack imagination here, yes, but generally I go by experience rather than talking about imagined issues. That is precisely what many here seem to do when it comes to explaining why AI couldn't work for them, and why reviewing the code remains necessary.
[–] prmph 4 days ago
Me: Why this:
> I'm adding a lookup to persistEphemeralVFolder so that a repeated search reuses the user's root vFolder with the same query instead of hitting the unique index.
Claude Opus 5.5: A search stores its query as an ephemeral root vFolder. The new unique index on (user, parent query, query) now rejects a second root vFolder with the same query. As written, persistEphemeralVFolder always inserts, so repeating a search would fail its insert, the retry with a fresh short code would fail too, and the search would return an error. The Ephemeral VFolder paragraph we rewrote in the SPECS also says a search reuses the existing vFolder with its query, so the user gets the same short code back.
The lookup I proposed would also copy the query-then-create logic already in the PUT /vfolders handler. A cleaner option is one shared engine function that finds or creates a vFolder by query, called by both the handler and persistEphemeralVFolder. Shall I do that, or keep the local lookup?
Churned for 6s · done 1:10 PM
Me: I mean, is it not cleaner to fix this: "persistEphemeralVFolder always insert"
And generally, we want the db and its indexes to do their work, not duplicating that in application code with pre-lookups and stuff
Claude Opus 5.5: You're right. Both persistEphemeralVFolder and the lookup I put in the PUT /vfolders handler should be replaced by a save with conflict keys (user, parent query, query), so the unique index decides whether a row is created or updated.
[–] user43928 3 days ago
[–] Arkhaine_kupo 4 days ago
if the cost of writing code collapses, what are the barriers to including these kind of tests?
It seems like the flow and work when using LLMs has to change, spend longer on the plan, spend more time on defensive testing, have more comprehensive tests (input validation, cybersecurity, performance, data hygine) and less time on functionality
if you want to write code the old way where the architecture is human readable and the tests are an after thought, then thats on you if you then ignore the part where the human has to read it.
TLDR: either go full agent, or actually learn the code being produced, but not both.
[–] wiseowise 4 days ago
[–] zahlman 4 days ago
[–] oortoo 4 days ago
[–] wiseowise 4 days ago
[–] spacechild1 4 days ago
[–] fapjacks 4 days ago
[–] zahlman 4 days ago
… Yes? Of course recognizing the flaws in the code correlates with having high standards. That doesn't mean the flaws aren't there.
[–] wiseowise 4 days ago
[–] vkgcr 3 days ago
Product quality is an emergent property of high standards (aka code quality).
[–] zahlman 3 days ago
[–] Seattle3503 4 days ago
[–] wiseowise 4 days ago
[–] Seattle3503 4 days ago
[–] user43928 4 days ago
Between Opus 5.5 + GPT-6.1 Sol reviewer, most issues and unhandled edge cases are caught during implementation.
Then you QA test and provide the feedback.
I guarantee that this is enough to produce not only a working product, but is well capable of building apps much better than what is out there, without ever looking at the code.
Depending on your product and risk tolerance you may disagree. I believe that for the vast majority of use cases the approach I described, combined with extensive manual testing, is entirely adequate.
[–] senordevnyc 4 days ago
It's worth noting that I also have a lot of guardrails and custom tooling around my own process to check code quality, QA functionality, limit blast radius of bugs, add observability, make deployments and rollbacks quick and low risk, etc.
[–] Seattle3503 4 days ago
I'm not sure if this means we will see smaller and smaller firms as a sort of market darwinism rewards good AI use by solopreneurs, and as large organizations tear themselves apart, or if we see the way big firms hold people accountable for their work change dramatically.
I also wonder what happens to these solo-businesses as they need to hire their second employee. What goes from a personal workflow will need to become a business process. I bet a lot of solo operators will resist employee #2 at nearly every cost!
[–] senordevnyc 4 days ago
[–] prmph 4 days ago
If you want to provide a good, secure, user-empowering, performant product, you cannot delegate everything agents, I assure you. And, building your foundation on un-reviewed mess of code will come back to bite you (partly depending on how big you grow), the same way it does with humans, which management always think is not an issue until it becomes one.
Now, you don't have to take my word for. Think of this: why is every change to Claude Code making it worse now? It is not almost unusable for me after many regressions over past hew years in its UX. Is it because of a lack of AI being used in its development?
[–] user43928 4 days ago
Because by my estimation we did build our products in such a way and have that experience, while you presumably did not.
As for Claude Code, they recently delivered a significant upgrade to the desktop app where some commented that it felt like they upgraded Opus 5.5 to 5.6.
It's in fact working great, and the days where it was buggy are in my view in the past.
[–] senordevnyc 4 days ago
As for the rest, I assure you that the product is much more performant, secure, and delivers far, far more value to my users than I ever could have done prior to AI-assisted coding. And I'm a staff level engineer with 25 years of coding experience across all kinds of organizations. I'm not the best coder, but I'm at least decent. AI has been a massive force multiplier for me, even as I agree that it's not perfect.
Unpacking a little more, I think the area you might be running into issues with is the idea that because I rarely open my IDE, I'm "delegating everything to agents". I'm really not. I review PRs (just not in my IDE), I steer higher-level abstractions in the broader system. To me, automated coding with a frontier model is definitely good enough that it's utterly pointless of me to read the internals of 99% of functions, even classes. Assuming the inputs are correct, the agents will get those details correct. And for the tiny fraction of the time when that's not the case, that's why we have adversarial review, guardrails, tests, o11y, quick rollbacks, etc, etc. Working at the level of how the broader building blocks of the system fit together, bisecting the software into low / medium / high risk areas so I can direct more of my scarcest resource (my attention) towards the highest ROI portions, and building the infrastructure (the "software factory") that the agents work within building and improving the product is where I can add the most value in November 2026.
Have you ever worked in a bigger tech company with tens of millions of lines of code and senior staff / principal engineers? In my experience, sure they're reading and writing code here and there, but that's not the value they provide. The value they provide is the broader architectural view of the systems and how they fit together. It's no different with AI.
I think what people are missing is that people often become craftsman because we want to be able to keep the code adaptive and performant so we can provide business value quickly and efficiently.
The change is with models, the benefit dynamics of immaculately structured code changes dramitically. Now the real area you need to focus on is correctness and performance. Structure doesn't really matter unless it serves those two purposes, at least from the business value side.