5 ms·
I agree with OP, and also with the Elm post. But I'd like to point out that there's a hypocrisy at the heart of many popular open source projects. Yes, you're
by akkartik 7y ago
I agree with OP, and also with the Elm post.
But I'd like to point out that there's a hypocrisy at the heart of many popular open source projects. Yes, you're legally allowed to fork, and yes you'll be told to go "fork off" if you annoy the maintainers. But anyone who has the temerity to actually create a fork will be shunned or constantly bombarded with questions about why they're sowing division in the community. My computer can hold multiple incompatible forks without them mutually annihilating. Why can't people's belief systems?
Now, such sentiments often come from the peanut gallery rather than the maintainer. But maintainers could help more. When was the last time anyone saw a maintainer thank someone for creating a fork? Forks should be treated more like Andon Cords (https://itrevolution.com/kata https://itrevolution.com/kata). Creating them is an act of bravery, and even if you don't agree with the reasons they are a valuable source of feedback. These are events to be celebrated and encouraged. A fork that doesn't gain traction isn't a 'failure' to be derided, it is a valuable experiment at worst, a negative result that didn't take away energy from other efforts. At best it actually influenced upstream. Everyone should be enormously grateful.
- btilly 7y agoIt seems common to me for people to say, "Can you create a fork and make a pull request?" But it does vary by project. The Linux kernel has tons of forks maintained by random people for random reasons. But Python not so much.
- akkartik 7y agoUgh, I hate GitHub for polluting the terminology. There's two distinct senses of 'fork' here: a) A short-lived branch hosted elsewhere for managing the merge process. This is a technical fork. b) A long-lived branch that may never be merged back. This is a social fork. Like egcs vs gcc, or Vim vs Neovim. It's the latter that seems to have stigma attached to it.
- boothby 7y ago> When was the last time anyone saw a maintainer thank someone for creating a fork? It's probably happened. The closest I've seen was when Cython was forked from Pyrex* because Sage developers had needs that the Pyrex author wasn't interested in developing or maintaining. It was an amicable fork, and for quite some time Cython development cohabited with Pyrex and some patches were upstreamed as they fit Greg's purposes. http://lists.copyleft.no/pipermail/pyrex/2006-November/002077.html http://lists.copyleft.no/pipermail/pyrex/2006-November/00207... http://lists.copyleft.no/pipermail/pyrex/2007-July/002480.html http://lists.copyleft.no/pipermail/pyrex/2007-July/002480.ht... * there was a brief period when the fork was named SageX, which was, regrettably, my sarcastic spitball. Fortunately, several devs were huge Battlestar Gallactica fans and they eventually settled on the name Cython around the time it was spun off to its own project.
- sillyconvalley 7y agoIt's basically a disingenuous thought-terminating cliché, much like people who say "if you don't like your job then just quit" to people who are being exploited at work. Sure, you technically can "just fork" a project, but everybody knows that projects aren't just the code: they're the community, the mindshare, the maintainers, etc. It's also a very political act with social consequences. You could divide a project's community if you fork and do manage to become big enough. So yeah. People saying "just fork" are being disingenuous, and I think they know that.