Avatar
eric
520830c334a3f79f88cac934580d26f91a7832c6b21fb9625690ea2ed81b5626
peace. freedom. open source. proof of work. damus contributor

nostr:npub1tsgw6pncspg4d5u778hk63s3pls70evs4czfsmx0fzap9xwt203qtkhtk4 remember when you weren’t dave? Nostr remembers. #nostrversary nostr:note1344l0vy7ucly7syr9pcl87jze7ghvah8607gq3ls7s7fd99sfqusrunmfp

Replying to Avatar jb55

Its one of the most important things in open source dev that very few devs focus on. I blame github. This is one of my favourite posts on the git mailing list:

Projects which switch to GitHub tend to have overall commit quality go down IMO, because the system

(a) makes it nearly impossible to review commit messages, so people eventually degrade to writing really bad ones

(b) makes it nearly impossible to review a rebased set of changes except redoing the entire review from square one, so people don't rebase

(c) punishes both users and reviewers who want to work with a rebased patch series by displaying the series out of order -- even for a completely linear history (it resorts based on author timestamp, not even committer timestamp), and

(d) punishes reviewers/users when they attempt to review individual commits by making it harder to see and follow these comments (though it has gotten much better on this front).

There are combination effects too. People to write really bad commit messages for all the additional "fixups" they have.

People notice that commits don't bisect nicely, and instead of understanding that the broken code review system they wrote was the problem, they instead offer a new "squash merge" option, thus destroying all the carefully separated commits that help people understand the individual steps toward the new feature and making it impossible for anyone in the future to review it incrementally.

You may say it's a workflow choice for some people to just squash all their stuff together at their option, which would be fine, but the problem is most developers don't take the time to think, and someone in charge of the project notices that they keep getting un-bisectable meaningless commits unless they force *everyone* in the project to use squash merging.

Now they are punishing me for creating clean separate commits and forcing them all to be squashed -- all as an ugly workaround to the basic tool being *broken*.

You can work around this by making a long sequence of PRs, one per what you intend to be a commit, and try to track the hierarchy -- something that GitHub certainly doesn't make easy.

And then each PR becomes a trivial small change, and you are back to merging individual commits, and writing your own tools to manage a hierarchy of PRs...and reviewers hate you if you do that because it's extremely onerous on them.

GitHub PRs aren't just hard to use, they literally degrade the quality of the code for people who have to use it. I've seen it happen with many projects.

https://public-inbox.org/git/CABPp-BG2SkH0GrRYpHLfp2Wey91ThwQoTgf9UmPa9f5Szn+v3Q@mail.gmail.com/

Tell me how you really feel

Exciting stuff for nostr:npub1q9pehypl9gg8u9ry305eg35amzm9t2r3r9f820p2sem3ffgn23hqj0vcqf hope they can realize this vision. This was brutal to read with ads so if anyone has a better link please share it. https://www.billboard.com/business/streaming/tidal-streaming-service-block-financial-services-1235544785/

🙌 nostr:note15kgjrrpe5twrqe7kqne88juawxg4cjy5h48t6yeuqzpxk05nawcqs7y7nq

We also need an AOTD like old times

A quote comes to mind -

“Holding a gun to everyone on Earth and calling it protection” nostr:note14v9r2y2d25sq2svvz5gs7nkq7w3r3763na2jk6xkv8wgh66l6w2s06mre0

the code must flow