upvote
The maddening thing is that there's a right way to do this if you have the patience and professionalism to do so. It requires building a bit of scaffolding (feature flags, cross-language calling support, harnesses for shadow testing, etc.), then you ship-of-theseus the codebase incrementally. This is not even incompatible with LLM-assistance, plus it breaks the thing up into smaller, reviewable changes that don't break your diff tool!

However, doing it the right way takes a bit more time, involves community feedback, and doesn't produce headlines about huge codebases being rewritten by LLMs in just a few days, so ...

reply
There is never a right way, only trade offs.

The thing about being a Monday morning quarterback is that you can always claim you would have used even more caution and process.

reply
> you can always claim you would have used even more caution and process.

Well, specifically, my claim is that any serious professional in this industry would have done so. But we're essentially in agreement, in the sense that yes, I am allowed to make this claim, and in fact already did, in the comment you are replying to.

EDIT: Actually I've been thinking about this a bit more. The thing about commenting on something that someone did is that you must always comment on it after they did it, otherwise it wasn't "something they did." However, being a "Monday morning quarterback", as I understand it in this context, means "criticism of someone's actions afterwards", so it would appear that I am doing that. I also understand this phrase to have a negative connotation, and I would hate to connote negatively in this otherwise very positive community. Quite a dilemma! Glad I have my life coach LLM to help me sort all this out.

reply
It's naive to think that only one set of trade-offs is the best one, because you can always argue for infinite process and caution.

If this Rust rewrite goes relatively smoothly, you are completely wrong about the balance of trade-offs, but you probably won't admit that because the person advocating for more process sees themself in a zero-risk win-win position:

A. The subject fails, thus you win because they should have used more process and caution.

B. The subject succeeds without more process and caution, but they should have were they a professional like you.

I see this kind of thing in the comments on social media if, idk, someone died on a hike. Psh, that's why I never walk anywhere without a week's worth of water, not even to TJ Maxx. Psh, they should have had a satellite phone; I always have one on me just in case. Psh, their satellite phone broke and they didn't have a backup one? Always carry two.

Funnily enough, your claim is worse than those examples because, unlike them, you don't even know if the rewrite failed yet. The Redditors at least waited for the person to die on the hike before they chimed in with riskless feedback from afar.

reply
Yes, dear god, I get it, please stop repeating yourself. Besides starting right out of the gate with personal attacks, you've found 20 ways different to say "it's not fair to criticize something another person did because you're not taking the same risks as them".

This is a poor syllogism - the second clause does not follow from the first - and worse, it's extremely uninteresting. If you had a good argument to make about the actual topic at hand, you would have made it, but I guess you don't, since you've resorted to criticizing the concept of criticism itself. I will admit that it was dumb of me to engage with this in the first place (although I guess you didn't clock that I was making fun of you? which, frankly, tracks).

reply
>serious professional in this industry

As a serious professional in the industry - we're dinosaurs. Nobody cares anymore.

The kids are running the show and are making billions with stuff that doesn't work. But it makes money so nobody cares.

This is not a new phenomenon, it started years ago and really took off when JS became the new hotness. You could see it happening live, right here on HN. But the blast radius is massively increased now with AI and people are getting hurt. It's not funny.

The ship has sailed on rigor.

The sad thing is that this is not going to get better. The best we can hope for is slight improvements to agentic "engineering" practice with lots and lots of blog posts on HN written about how they are rediscovering basic engineering practices.

We (the dinosaurs) will roll our eyes while making a fraction of the money the kids are making.

And even if the whole AI ecosystem implodes (it won't) that would be a massive recession and certainly wouldn't make the remaining software engineering work more rigorous either.

As the Simpsons put it: "An I out of touch? No, it's the children who are wrong."

reply
I'm not even necessarily describing myself as a serious professional - in many ways I'm adjacent to all this! But there's a contingent of people (and in real life, too, not just on HN) who get very angry at the very concept of professionalism itself.
reply
> There is never a right way, only trade offs.

There is a right way, especially when you have a community.

reply
Can you cite a single software project with so many users which did a language migration in a more cavalier way?
reply
I mean, some trade-offs are “something for nothing” which by definition makes them “the wrong way.”

Real life does exist.

reply
Ah yes, you are actually describing fish shell's Rust rewrite. They specifically called it The Fish Of Theseus which is of course a reference to the ship of Theseus.

https://fishshell.com/blog/rustport/

reply
I mean it's definitely at least partially a PR stunt
reply
Humans are no longer maintaining bun. There is no good faith argument that can claim a human understands this rewrite
reply
Not sure there is much of a point in reviewing a port of this size. It has >1000 instances of `unsafe` and uses the same patterns as the zig code according to Jarred. It feels like a vibe-ported version of what the TypeScript team are doing porting from TypeScript > Go with codemods.
reply
Bun is owned by Anthropic.

Hopefully that answers all your questions.

reply