BLUG SPAT
Pick a bug, get started at 6pm at the earliest - all PRs must be reported by midnight, and scores will be based on state of your submitted PR at that time.
None of the rules are going to be enforced hard and fast, so if you feel like someone’s cheating, don’t get too stressed. Just put a “feature not a bug” comment on the issue they’re in the middle of PRing against (no, don’t).
Points
Qualifying projects are those you do not know a maintainer well or are a maintainer for (but use common sense, if it’s just seeing them at a conference occasionally, fair enough, or popping up on mailing lists)
You can’t count two PRs to the same project (although you can report a second under the “helpful contributions” note below).
You can’t have already spent time on this bug - this isn’t completely a “oh, we’ll disqualify you now” thing, but if you’ve previously had a crack, then try a fresh one for the Blug Spat.
Controversial (and we’ll see how it works for next year), but your bugs must already have been filed by someone else that you don’t know well (so not your work colleague who was complaining about it all day).
You can leave and finish off at home. Just be done by midnight (we’ll use the Github timestamps to work it out). If it’s 2 mins over, it’s fine, but if it’s 12.30 then think of the poor disadvantaged people who have to be up early in the morning. Tip: if it gets close to midnight, rather than tidying indefinitely, get a reasonable, basic PR in (just so it counts for the scoring and is still worthwhile for the project), then work on it the next day to make it more useful to the project (and likely to be ultimately merged).
Only maximum four favourite PRs of the night count.
Add the link to your Github/Bitbucket/Gitlab/etc handle, and any issues you’re submitting
- 3 points for submitting a PR that you can demonstrate solves the problem
- [the bonus points below only apply to non-trivial fixes, either requiring significant technical insight, not specific to the project, or more than 20mins of work — they also only apply to likely-to-be-accepted PRs, no rushing folks]
- 1 additional point if you haven’t had a PR accepted to the project
- 1 additional point for making a clear effort to fulfill the contributor guidelines
- 2 additional points if this is the first project in this language in your submission list
- 1 additional point if this is the first submission in this paradigm in your submission list (functional, object-oriented, documentation, declarative)
- 1 additional point if it’s not something you regularly use in paid work
- 1 additional point if it’s not a part of the stack or technology you regularly use (e.g. front-end, back-end, infrastructure, app, systems)
- 1 additional point if it’s targeted at a sector you rarely look at code in (e.g. music, art, scuba diving, scientific computing)
- 2 additional points if you can honestly say you’ve hardly ever, or never, looked at this project before
- 1 additional point if your code doesn’t drop the reported test coverage (even a teensy bit)
- nope, you don’t get it if the project doesn’t report test coverage (or show it up in PRs to compare, and you can’t calculate it yourself)
- if the project does report coverage and you’re doing something that is not in the majority language of the project or could not reasonably be tested for fundamental reasons claim half-a-point. On your honour.
- 2 additional points if there are more than 4 people on this issue asking for this in the past 12 months (or more than 8 humans subscribed)
- 1 additional point for each order of magnitude of project reach
- Level 1 (any of)
- in a major distro’s default (or standardly used) repositories (it’s major if it’s in the top hundred distros on DistroWatch, and most people in the room have heard of it, and someone else has actually tried it). Yes, BSDs are fine
- 100 stars on Github or 10 contributors in the last year
- regular releases on default language platform over several years - PyPI, packagist, etc. - and half of the above Github requirement
- in a unicorn’s tech stack somewhere
- dependency for either of the above
- lots and lots of app downloads for apps (or is in iStore)
- used by lots of people (if you can’t convince us, it doesn’t count)
- Level 2 (any of)
- has been active for at least two years
- often installed on distros (if only a couple of us remember installing it, then probably not)
- 1000 stars on Github or 30 contributors in the last year
- lots and lots of app downloads for apps (or is in iStore)
- regular releases on default language platform over several years - PyPI, packagist, etc. - and half of the above Github requirement
- -5 points if you reimplement Common Lisp