4 ms·
You have to add a pain threshold that people will only cross if they think it's worth it for the reward. If the terms included "the PR must be in good faith or
by throwaway787544 4y ago
You have to add a pain threshold that people will only cross if they think it's worth it for the reward. If the terms included "the PR must be in good faith or constructive to the project and not merely fixing typos or other immaterial changes", people would assume they need to put in real changes, which would be more than it's worth to them for a t-shirt.
I think an even better goal for Hacktoberfest would've been documentation. Translate a page into a new language, or add documentation where it doesn't exist, and you get a t-shirt. Entirely automate the docs for code, get a plushie. Write HOWTOs, get $25 free DO credit.
- ryandrake 4y ago> You have to add a pain threshold that people will only cross if they think it's worth it for the reward. If the terms included "the PR must be in good faith or constructive to the project and not merely fixing typos or other immaterial changes", people would assume they need to put in real changes, which would be more than it's worth to them for a t-shirt. You'd think, but never underestimate the pain that people will go through to get some minor profit for free. It becomes a numbers game. If you think your "immaterial" PR has a 1/10,000 chance of slipping by, you just make 10,000 immaterial PRs. There are a nontrivial number of people who will absolutely sit there and manually copy/paste 10K pull requests if they think it will get them $1-$2 worth of stuff. The smarter ones would find a way to automate it.
- nyanpasu64 4y agoIn many cases, what I find lacking is not "unannotated class list" Doxygen documentation, or contextual examples, but proper documentation of pointer lifetimes, and invariants (for example the `snd_pcm_link` docs merely say the two streams will start and stop together, but doesn't say it fails unless you're linking two hardware devices with a shared underlying clock which will are supposed to remain in sync indefinitely), and for new project contributors, architectural/implementation and control flow documentation. Unfortunately invariants often live in the original programmer's head more than the code, pointer lifetimes are often nonlocal in the codebase, and architecture/implementation and control flow is inevitably nonlocal, requiring weeks or months of efforts for a motivated non-author to learn, far beyond the patience of someone fishing for Hacktoberfest T-shirts.