this post was submitted on 23 Nov 2023
123 points (96.9% liked)
Programming
17398 readers
136 users here now
Welcome to the main community in programming.dev! Feel free to post anything relating to programming here!
Cross posting is strongly encouraged in the instance. If you feel your post or another person's post makes sense in another community cross post into it.
Hope you enjoy the instance!
Rules
Rules
- Follow the programming.dev instance rules
- Keep content related to programming in some way
- If you're posting long videos try to add in some form of tldr for those who don't want to watch videos
Wormhole
Follow the wormhole through a path of communities [email protected]
founded 1 year ago
MODERATORS
you are viewing a single comment's thread
view the rest of the comments
view the rest of the comments
This is not an answer to your question but it's tangentially related.
Someone I greatly respected ran an open-source project with the policy of merge everything. Completely flip this idea of carefully review, debate and revise every PR. His theory was that it helps to build an open community, and if something breaks someone else will revert that commit. He says that the main branch was almost always stable, a massive improvement to how it was run previously. He passed several years ago and for some reason this reminded me of him.
I guess what I'm trying to say is if you get something out there that people find useful, the code will be looked at. It doesn't help you if you're looking for someone to collaborate sorry.
This is how you get supply chain attacks.
Yes it is. The code is in Bitcoin Core so there's a non-zero chance you win at life if you want to try.
There is a very effective approach (34:00), that big companies like cloudflare use, to ship a product in a fast and quality way. It bears parallels to what you are describing. In essence engineers should not get hung up in the details to trying to solve everything.
So that tedious process in trying to flush out all the details before seeing a product (or open source effort) working end to end, might be premature before having the full picture.
That's Wikipedia's approach, arguably one of the most successful "open source" projects in history - certainly not without its problems, but overall it's pretty great
I've actually found his blog where he talks about this "optimistic merge"
http://hintjens.com/blog:106
There's a number of them as the idea grows. See also the C4 process RFC
What an unfortunate name.
https://c4model.com/
mbin (fork of kbin) is currently trying to implement the process.
It's great to see the attempt and also an example of what the C4 guidelines are made to avoid.
Notice how many comments are little nitpicks about this and that. Completely stalling the commit and getting further away from the original point of C4 which is to reduce contributor friction and avoid these kind of endless discussions on PRs.
I don't want to be too critical because some of that is a clear lack of understanding of the motivations of C4 which is explained more thoroughly in Pieter's blog posts. You don't want to adopt a contributor guidelines that you don't understand of course.
IMO it's better just to implement it as-is and start using it in practice rather than bikeshedding.
Feel free to make that comment there.
I would have but I don't want to tie my Lemmy account to my actual identity :/
This is for 0mq right? I remember reading Pieter Hintjens about this realization he had over a long time of developing 0mq.
Yes that's right. I was only just transitioning into adulthood and Pieter mentored me and profoundly changed how I view many things. It wasn't just zeromq but that was the main thing. I still keep his books at hand on my bookshelf. His death impacted me greatly.