This is my thinking as well. Although the 'never do full rewrites' rule is canon for most of the software world, I have led rewrites of two large front-end applications to great success - replacing an app that 'worked' but took an order of magnitude more time to iterate on than the codebase that replaced it.
That said, it's probably more dependent on what a 'full' rewrite actually is - I would be much more reluctant for a full-stack rewrite, particularly of a mature codebase with a lot of accumulated business logic. At least on the front end you can always push to move business logic upstream where it belongs.
I do feel like rewriting a front end that depends on the same backend is much less perilous than the alternative - in the end its basically just a presentation layer change
It sounds like two factors are at work - reducing personal time-tracking AND doing more AI-assisted work, both of which can reduce our ability to focus. In the case of AI, it also arguably reduces the need to focus for some kinds of productivity, so the net effect of increased output is expected.
If it helps, you can get AI to do the admin task of time tracking automatically, at least for anything that it is involved with.
The benchmark tables in the Google announcement include Opus 4.7, and the numbers are very impressive. Caveat emptor, but it's not unreasonable to compare a new Flash to a current-gen Opus, even if some of the results confirm expectations
As a project that started with a lot of idealism about how software _should_ be built, I would totally expect Bun to have an llms.txt file even if Claude wasn't using it. It's a project that is motivated in part by leading by example.
To be fair, history also demonstrates the deadly consequences of groups claiming moral absolutes that drive moral imperatives to destroy others. You can adopt moral absolutes, but they will likely conflict with someone else's.
Do not help build, deploy, or give detailed instructions for weapons of mass destruction (nuclear, chemical, biological).
I don't think that this is a good example of a moral absolute. A nation bordered by an unfriendly nation may genuinely need a nuclear weapons deterrent to prevent invasion/war by a stronger conventional army.
It’s not a moral absolute. It’s based on one (do not murder). If a government wants to spin up its own private llm with whatever rules it wants, that’s fine. I don’t agree with it but that’s different than debating the philosophy underpinning the constitution of a public llm.
Do not murder is not a good moral absolute as it basically means do not kill people in a way that's against the law, and people disagree on that. If the Israelis for example shoot Palestinians one side will typically call it murder, the other defence.
This isn't arguing about whether or not murder is wrong, it's arguing about whether or not a particular act constitutes murder. Two people who vehemently agree murder is wrong, and who both view it as an inviolable moral absolute, could disagree on whether something is murder or not.
How many people without some form of psychopathy would genuinely disagree with the statement "murder is wrong?"
Not many but the trouble is murder kind of means killing people in a way which is wrong so saying "murder is wrong" doesn't have much information content. It's almost like saying "wrong things are wrong".
Not saying it's good, but if you put people through a rudimentary hypothetical or prior history example where killing someone (i.e. Hitler) would be justified as what essentially comes down to a no-brainer Kaldor–Hicks efficiency (net benefits / potential compensation), A LOT of people will agree with you. Is that objective or a moral absolute?
Does traveling through time to kill Hitler constitute murder though? If you kill him in 1943 I think most people would say it's not, the crimes that already been committed that make his death justifiable. What's the difference if you know what's going to happen and just do it when he's in high school? Or putting him in a unit in WW1 so he's killed in battle?
I think most people who have spent time with this particular thought experiment conclude that if you are killing Hitler with complete knowledge of what he will do in the future, it's not murder.
Clearly we can't all agree on those or there would be no need for the restriction in the first place.
I don't even think you'd get majority support for a lot of it, try polling a population with nuclear weapons about whether they should unilaterally disarm.
but as mlinsey suggests, what if it's influenced in small, indirect ways by 1000 different people, kind of like the way every 'original' idea from trained professionals is? There's a spectrum, and it's inaccurate to claim that Claude's responses are comparable to adapting one individual's work for another use case - that's not how LLMs operate on open-ended tasks, although they can be instructed to do that and produce reasonable-looking output.
Programmers are not expected to add an addendum to every file listing all the books, articles, and conversations they've had that have influenced the particular code solution. LLMs are trained on far more sources that influence their code suggestions, but it seems like we actually want a higher standard of attribution because they (arguably) are incapable of original thought.
It's not uncommon, in a well-written code base, to see documentation on different functions or algorithms with where they came from.
This isn't just giving credit; it's valuable documentation.
If you're later looking at this function and find a bug or want to modify it, the original source might not have the bug, might have already fixed it, or might have additional functionality that is useful when you copy it to a third location that wasn't necessary in the first copy.
If the problem you ask it to solve has only one or a few examples, or if there are many cases of people copy pasting the solution, LLMs can and will produce code that would be called plagiarism if a human did it.
Seconded. I don't need a recipe-blog-length analysis to gain value from what the author has to say and appreciated the additional comments this article has spurred on.
Here's a comment from the author, who is surprised that it's at the top of HN and calls it "a dashed-off blog post about a real blog post": https://news.ycombinator.com/item?id=45561201
This submission has now been flagged, so I'm clearly not alone here.
Attention! All discussion has been moved to a new thread. Why are you still commenting here? Don't you understand it doesn't make sense to continue talking here if there's already conversation elsewhere? Goodness, whatever you do please don't reply or you'll just continue the problem!
Author here. I was also surprised to see this getting a bunch of HN traffic suddenly. I guess the Liquid Glass hate is pretty strong when a dashed-off blog post about a real blog post can randomly do numbers! Heartened to see that others are annoyed by this design as well, though. Hopefully Apple will do something about it, but I'm not holding my breath.
I don’t know if you remember iOS 7, it was a catastrophe. Designs evolve on Apple platforms, usually in the correct direction.
Anecdotally, I have used Liquid Glass since the first beta and I honestly think there are a lot of good things there. Took me a few months but I actually like it now (and I have some colleagues in there same boat as me).
I start all my UI projects with this principle, but it's extremely difficult to maintain as screens evolve. I want typography-driven interfaces with structure communicated through headings and spatial grouping, but I usually end up with far more borders and nested padding than I think is "right" as I run into the limits of whitespace as an organizing structure, particularly when the audience has a limited attention span or time to engage.
From experience, borders/cards help communicate conceptual boundaries, while whitespace helps communicate information hierarchy - Gestalt principles don't really address that distinction. For product or data-driven UI where a lot of loosely-related information/topics are shown in discrete parts of the page, cards are effective at high-level grouping. For content-driven UI, whitespace can be sufficient, and I think the article makes this clear.
Other than 'The Ultimate Developer Toolkit' (where type size is more of an issue than the card layout), I actually think the card-based version of each example layout is more compelling - easier to scan, and easier to 'chunk' - despite wanting the typography-and-whitespace alternative to be sufficient.
Thanks for the information hierarchy / conceptual boundaries distinction, makes sense. I didn't know the latter term but tried to describe it in the last section of the post, nice to have a name now.
There are apps and sites that manage to keep the number of cards at min, one is selfridges (not an ad, was just open in another tab), another is firefox settings. MacOS Finder does a good job at grouping things with spacing, and macos generally. iOS seems to put everything on cards, at least nowadays.
That said, it's probably more dependent on what a 'full' rewrite actually is - I would be much more reluctant for a full-stack rewrite, particularly of a mature codebase with a lot of accumulated business logic. At least on the front end you can always push to move business logic upstream where it belongs.