-----
I actually worked at the same place as Andrew Tridgell, over a quarter-century ago. I got to know a few of the OzLabs folks during their immediate post-IBM years, and always had the highest respect for them in that way where you feel acute impostor syndrome when they're in the room.
Tridge almost walked backwards into implementing the Windows SMB protocol (he was just debugging some funny NetBIOS extensions IIRC). But his paper on the #rsync algorithm was groundbreaking, and actually writing the tool to implement it was brilliant. It's become one of those tools like #curl that just forms one of the major structural supports of the modern Internet. I still remember the day that the SSH transport became the default, and I remember being able to thank him in person when he came to the San Francisco office (although IIRC by that point he'd handed control of rsync over to mbp).
I remember at my next job he came to a summit of folks working on print driver/spooler software. When he pointed out that some problems were effectively a cache-consistency algorithm, we all kind of put our fingers to our temples and said "Oh wow, you're SO right!" He was always insightful and sharp, while being gentle and approachable.
I write in the past tense because I haven't crossed paths with him in two decades, and only know what I see him put out. A friend of mine in Australia noted that he hasn't posted to the Canberra LUG list since 2020, thanking someone for congratulating him on receiving the Medal of the Order of Australia. He's very much alive, but from what little I see I grow concerned for him.
In 2024 he took over maintenance of rsync once more. The 3.3.0 release was the last one from the previous maintainer, and Tridge is currently working on 3.4.x releases.
Well... Tridge and #Claude, it seems: https://mastodon.gamedev.place/@JeremiahFieldhaven/116654345...
The issue tracker for rsync has recently lit up with regressions, showing features that worked reliably for almost 30 years are suddenly coming crashing down in 3.4.2 and 3.4.3. People are scrambling to find ways to pin rsync to known-good versions. The considerate, incisive mind I briefly knew is letting the stochastic parrots do his work for him, and it just seems so astonishingly unlike the person I met back in the day.
I am still willing to give him the benefit of the doubt. I hope all is well for him, but I will not cast aspersions on his goals or his abilities. No, instead I draw this conclusion:
If TRIDGE of all people can't handle #LLMs without a slopocalypse, no one can.
That means you. That means someone you admire who is intelligent and careful and considerate. Not even someone whose opinions on technology you respect a great deal.
-----
Seeing this happening in trusted CLI tools makes me wonder what will happen to Linux
I'm not defending bad slop commits, especially for such a long running project but the tribal Fediverse outrage whenever LLMs are involved is often just lazy and uninformed.
To quote this PR: https://github.com/RsyncProject/rsync/issues/928
> NOTE: This also affects backported rsync versions when they're used on the Receiver: > Debian: 3.4.1+ds1-5+deb13u3 / 3.2.7-1+deb12u5 / 3.2.3-4+deb11u3 > Ubuntu: 3.2.7-1ubuntu1.4
I was hoping that at least some solid bedrock of stadalone command-line tools would withstand the deluge of AI slop.
Will we need to start to label programs with a "written by humans" sticker? :-(
Everyone is still learning how and how much AI should be used and we shouldn't be too harsh on opensource developers.
I suspect this commit: https://github.com/RsyncProject/rsync/commit/4fa7156ccdb2ad3..., appears to be changing behavior and changes like these shouldn't be in a patch version (unless it's an active security exploit).
It is worth figuring out the new science of software engineering to get it right.
I suspect we are going to find plenty of new techniques that make this sort of development work better. After all, it took fifty years to arrive at our best known (unit test + reviewable tiny change, get an LGTM) model of software development.
The main problem with using AI in open source software is that millions of people rely on your code, but you risk exposing them all to something unverified.
What would you do if suddenly there were a dozen exploitable CVEs in your highly used open source project staring you down? Maybe you'd use the tool that found them to patch them as quickly as possible.
- https://github.com/RsyncProject/rsync/commit/4fa7156ccdb2ad3...: https://github.com/RsyncProject/rsync/issues/905 https://github.com/RsyncProject/rsync/issues/900
- https://github.com/RsyncProject/rsync/commit/1d5b5ab83af84db...: https://github.com/RsyncProject/rsync/issues/924
- https://github.com/RsyncProject/rsync/commit/859d44fa4f14207...: https://github.com/RsyncProject/rsync/issues/897
- https://github.com/RsyncProject/rsync/commit/30656c5e358b1c6...: https://github.com/RsyncProject/rsync/issues/896 https://github.com/RsyncProject/rsync/issues/915
- https://github.com/RsyncProject/rsync/commit/8112445318a35e4...: https://github.com/RsyncProject/rsync/issues/910 https://github.com/RsyncProject/rsync/issues/927
Imagine you have a low quality coder in your coders, they produce a lot of code, but while some of it is fine, some of it is... dubious. That is no different from an AI and the way you deal with it is the same. You check the PR before committing it.
To allow PRs from them (or anyone really) to get merged without proper checking for bugs etc is just sloppy repo management. The problem is not "AI bad, human good", it is that a human is allowing PRs through to release without properly checking them.
Maybe there is one, but it doesn’t support the underlying “and that must mean AI bad” hypothesis as much as the author may think.
Somebody on the Rsync team has a new tool. They may have neglected their traditional responsibilities using it, but that’s not really a fault of the tool.
Anyway, seems blown out of proportion. There are a few issues in the tracker, some repeated or obscure. Linux 5.10, really? You want to run frankenkernel from 5 years ago with 30 000+ patches never meant or developed against it applied on top?
And I guess if I clone the repo and do a diff against pre-claude and claude assisted state, most of the changes will not be in the actual C code.
Tiberium•30m ago
zero_k•27m ago
CursedSilicon•27m ago
blurbleblurble•20m ago
Tiberium•18m ago