RIIR
RIIR
Posted Feb 16, 2025 23:23 UTC (Sun) by marcH (subscriber, #57642)In reply to: RIIR by pizza
Parent article: Rewriting essential Linux packages in Rust
> That would be true if everyone, and every device, ran identical software in lock-step.
This is more and more irrelevant... I just gave a reminder that software marginal costs are negligible, which limits software analogies. How many devices are actually running what software does not matter: marginal software costs are still negligible and the economic aspect of software analogies still fails.
> "innovation" implies something new,...
Obviously.
> ... not a 100% re-implementation (and necessarily quirk-for-quirk compatible) of existing (and well-maintained!) code
That's part of your definition. My definition is "not in mass production yet" and it does not require cars to fly.
> Would you still be calling uutils "innovative" if it was written in oh, Ada, Java, Python, or PHP?
No because:
1) There would most likely be significant performance regressions (which obviously matter in "core" utils) instead of the progressions observed with Rust.
2) None of these languages are recent in 2025, they have all been in production for decades none of them needs any sort uutils-like project to help them get battle-hardened and "upgraded" to mass production.
So I suspect uutils in Java would be non-event.
Here's another analogy: designing and selling an electric car with a brand new, solid state battery design today would be "innovative" because it would help the solid state battery company scale up. That would be innovative even if the car company did nothing innovative besides trusting, partnering with and ultimately helping the innovative battery company doing all the innovative research and even when customers see "only" more range and less fire risk (= the battery equivalent of memory corruption?)
Once a few other Rust rewrites like uutils will be in "mass production" stage (e.g.: enabled by default in some distributions), then I agree the next ones won't be as "innovative" - and will get less press coverage. But there are several domains: first graphical application, first kernel driver, etc. Each domain has different engineering challenges requiring different "innovative" solutions.
