maybe some people aren’t aware, but forking is actually useful even if you never want to change the project, but you simply don’t want it to one day disappear on you. this is important when, say, specifying them as submodules or dependencies in your own projects.
this has happened to me personally before, and hence i now fork any project i’m interested in, as opposed to starring, so i know that it will always be accessible (as long as i keep my account; but this is something i am more in control of).
Another valid use of forks: I run the Slate documentation template, which is a static site generator template for APIs. We encourage people to fork the project as a way to easily add their own docs and publish to Github Pages. This changed code is never merged back upstream, so our “stupid factor” of 50 is largely due to people making real changes to their personal fork.
Maybe a good system would be to only count forks as fake if they haven’t pushed any new commits?
So how would you go about teaching users when a fork should be used since more and more users are using Github daily. Something Github should take care of? Project heads? Just let it go?
should proably be considered by the community when making any software choice.