Lol if Trump is convicted of treason because some researchers didn't get a grant
HN user
eithed
Are you suggesting that Europeans should continuously use third party models be it American, Chinese or whatever?
The only place it make sense to me is the validation = at the route level you want to ensure that the given model exists / request attributes defining relationship (pivot), are there. This is how Laravel does this. Having said that this should be responsibity of domain rather than application
Mostly agree with the author. Would add, most importantly, dont trust anything LLM does or says. Today I asked Claude to uniform behaviour of 3 components. I asked to do it 5 times, because at the end of each go there was something still unaligned that Claude found a way to rationalize. Sure - when asked the way it would say "This is on me", or "I thought it was a concious choice". Not once did it surface a question on what to do, nor did it mention any of the issues. So yeah, short leash, look at its thinking, correct his shit. This is today, Sonnet 5. Probably tomorrow it will be better or worse - thats another thing. The way you talk to Claude today will give you different results tomorrow
Same; the most infuriating parts - Claude caused the issue and Claude misdiagnosed the issue, making me spend more time than if I was debugging it myself.
Yes and no.
If I were to ask you - what convention you want to follow for your database columns - camelcase or snakecase? There's no correct global answer. There's no overarching truth that should apply to all databases in existence (even if you'll focus on a certain type of database). Hence the no.
But yes, because in the context of existing system there is a convention. If it's snakecase, you create new tables with snakecase column names.
LLMs will generally follow conventions, but sometimes they will not, because indeed - global truths (or at least, the "last article it read" truths) sometimes win over (I assume)
I agree and indeed externalize everything you know *that matters*.
Want to follow certain pattern, or convention - define it, ie active record vs repository pattern, stick is as an ADR! You don't know what you want? Look at what Claude produces and then acquire taste, mark this as convetion that future sessions will follow, but stick to *one* convention!
Treat your LLMs as junior developers willing to apply various patterns willy nilly, caring only about fulfilling the ACs of given task and not about the longevity or well being of the system in general. They will not look at bigger picture to check if given pattern applies globally, or even if there are any other patterns.
They conflate domain expertise with coding expertise, and then assess that people with domain expertise demonstrate great success at coding tasks
I didn't read it as such - I read that people with expertise have more success in reaching the goal of the session. Still your point stands = how is this news?
What baffles me, is that expertise of writing code is not important and is hand waved away = non-technical person can reach their goal and the session will be deemed successful. They don't conflate that domain expert = developer, and they dismiss that expertise (ie. updating legal rules matters, not how they are implemented) so i'm confused. Shouldn't both matter?
I'm tired of people not taking responsibility for things they do and not being held accountable for their actions - politicians mostly; for example - currently in Poland there's a controversy around Zondacrypto (read here: https://www.politico.eu/article/a-missing-investor-millions-...); I'm so disillusioned that I believe nothing will come out of it - it will again be a case of "nobody did it, it just a thing that happened". Or our politicians escaping to Hungary (and USA) to avoid prosecution (and still being paid out money even though they're not in Poland and cannot possibly attend parlamentary sessions) where they'll live to spew hatred and how they were wronged. Sure, you did nothing wrong and these are just repressions, nevermind the millions that you stole during political campaign.
And generally people thinking about themselves and not considering that we're living in society: "let me blast music so that walls shake and fuck neighbours", "let me just leave my mattress here on the curb blocking the path, somebody will pick it up", "let me not clean after my dog shitting on the sidewalk", "I'm seeing people queuing to get on a train, let me just not notice the queue", "let me just walk down the street with my eyes on the phone, surely other people will accomodate me and get out of my way". This is the variation of the above, but to the civic level; just don't make lives of others harder.
Is it enshittification, or is USA simply turning into fascist state?
Leaving this here, as I couldn't leave it on authors blogpost:
I grew accustomed to these choices, so would navigate through them on autopilot. Once I was quick enough to get "We noticed suspicious activity indicating that you're a bot"; had to retry everything from beginning and hesitate when clicking :)
Ah, I see what you mean now. Yes, my mind went straight to static analysis and testing (unit, feature, uat, mutation). Thanks for expanding on your point!
Don't forget that LLMs are trained on human code. If they cannot understand what your code does then they cannot make changes to it, or at least - having them understand your codebase becomes expensive (more trips to Anthropic servers)
I disagree. What I should have added is that with agents (as well as humans) you do need to have tests that verify what was done.
I mirror your thoughts. I think we'll end up with "perfect map" paradox = you cannot be vague or indecisive on what you want (and if you are then these decisions don't matter) and you're creating a 1:1 representation of what the code needs to be.
I'd substitute "owner" for the team and in that sense the owner will not need to be human.
We're at this state where Claude is great at doing the "middle" part of work, but it's crap at gathering requirements and verification of what it has done. I also don't see people caring about these aspects of software development as shown in the article
Exactly - the normalization of craft (?) is interesting
Don't forget that you can adjust your requirements (either via plan or skill) to ensure the mistakes do not happen. The problem is that neither LLMs, nor humans (that don't work with the domain) will know they made these mistakes. Even coders don't think about everything all the time
The road will be built to some specs, including features nobody asked for. If the corpus was trained for roads built in Arctic, you will get penguin crossings.
I agree. But if I'm paying for the road (even as a taxpayer) I get angry that after a year it's full of potholes and that there are unnecessary signs warning about penguin crossing, making it cost 2 times more than it should have (and dont get me started why this road is really a highway leading to my house). I'd want certain qualities. And this article is basically = you will get a road, built quickly
But yes, you are right - I don't build roads and don't know what is a price to build a road and how to determine the quality of correctly built one, nor I will ever care or learn.
True, but you should say that about every thing. Does it matter to you how the car drives, as long as it takes you to your destination? Well, yes, it matters: how will it deal with a crash, and if it's possible to replace a part and if anybody can just open it if you leave it outside. I will be amazed if somebody shows me their home-printed car, but if they'll try to sell it to me like a new one...
Fair enough, but enterpreunership should, I guess, ask questions if given Next Big Thing has substance behind it or is it just snake oil.
What I find fascinating that there is so little substance in this article about the quality of produced code and the medium. Is the code documented and tested? Is it understandable and extendable? Is it secure? What language, framework, database was used? Author mentions judgement and taste - well, is the code tasteful? Will the model rearchitecture the entire thing if I ask it to add new functionality, spending another 9.5h in tokens? I assume that the research part is domain knowledge = how different types of travel translate to time making it presentable; how did the author verify this?
These questions are even not about AI: if I were to give money to a human agency and were given something they tell me works, I would ask the same questions. If I did not know how to evaluate, I would hire people that do. With LLMs the verification part is what bothers me the most.
I assumed that as it was hitting too close home (both PMs and EMs were expected to use AI, with PM trying to code in solutions that they didn't have expertise nor domain knowledge to deal with; EM was prototyping solutions that had access to prod DB that were shut down as soon as we found out). I can only symphatize nonetheless and thank you for giving your PoV.
Even if it's a mandate top-down, you can:
- show increase in errors and outages caused by this approach
- integrate manager changes into your CI pipeline (coding / reviewing / testing / documentation)
- discuss how your manager can do the changes they need to do without sidetracking all other work
Make it indeed about the money: coding by PM + fixing what was coded + dealing with fallout is greater expense than coding by PM + automated guidelines + reviewing what was coded.
That is - if the environment you're working in is reasonable and it's not a power play by your PM
Please write a manual on how to cleanup after AI rockstar managers who think they can code.
Why are you allowing AI rockstar managers to (I assume) push without code review? Why are you cleaning up the fallout? It's not AI issue, it's people issue
Sure, producing code has become cheap. Yet again the taste matters and LLMs do not have taste - they will apply patterns that are unnecessary or not extendible, producing unmaintainable systems that nobody understands. Capturing domain knowledge was the crux of development process, but so was verifying, documenting, ensuring that multiple systems work together, maintaining uniformity. I don't know where the assumptions, done by developers, that they only need to produce code that just works or goes brrr fast comes from.
Domain expert can develop working code, but they will not be able to ensure above.
Depends - using Sonnet here and generally it should be as you say: plan would produce the result.
Still Claude will sneak things in - in my recent plan, for example I had defined, per acceptance criteria what colours the statuses should be: green for live, blue for sold, grey for anything else; it changed this to: green for live, orange for in progress, blue for sold, red in demolition, etc. When pressed why did it to this, it was unable to explain why. This is with a plan where AC were explicitly provided from the task in Given/When/Then format and were to be adhered to strictly. I've caught this within planning, but I shouldn't need to be doing this.
Even in standard prompts where I tell it "Change this label from X to Y", it ended reordering the tabs unrelated to ask. Again I was not able for it to explain why - it was so abrupt. And it was in fresh context, without any pollution on what I expect it to do.
I also noticed a different behaviour regarding skill; today and yesterday it would not be following skill guidance at all ie: skill writing skill - I'd have to explicitly tell it to test skills after writing them, when this is a behaviour expected by default. Similarly with other skills - knowing that it should have done something per skill guidelines and it not doing it at all. This is new behaviour that I've not seen a week ago.
Can you explain the benefits of running this over rector / eslint? (and to certain degree phpstan / deptrac)
Write a skill outlining your expectations of the code, put that skill into the pipeline, so that it can be included within your workflow.
Webdev here, but currently I have: - a skill where I outlined how the architecture of the system should look like, with guards (static analysis, architecture tests, linting) confirming that the code it generates adheres to standards
- a skill that tells it how tests should look like (use generators, write both feature / unit tests)
- a skill that tells it to generate docs from the code in a form of acceptance criteria (Given / When / Then)
- a skill that tells it to generate frontend uat tests + accompanying backend seeders given the AC
- a skill that tells it to verify that ticket objectives match what was delivered
At this point I still need to guide it to move task from one stage to the other (coding, testing, verification that indeed what was coded adheres to what was required), but I believe that these dynamic workflows can automate this work as well.