Create CONTRIBUTING.md

This commit is contained in:
Sam Joseph 2019-01-17 16:43:58 +00:00 committed by GitHub
parent f31776e801
commit 31fd9dc23d
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

67
CONTRIBUTING.md Normal file
View File

@ -0,0 +1,67 @@
Thanks so much for thinking of contributing to the Human Connection project, we really appreciate it! :-)
We recommend that new folks should ideally work together with an existing developer. Please join our discord instance to chat with developers or just ask them in tickets in [Zenhub](https://app.zenhub.com/workspaces/human-connection-nitro-5c0154ecc699f60fc92cf11f/boards?repos=152252353):
![](https://dl.dropbox.com/s/vbmcihkduy9dhko/Screenshot%202019-01-03%2015.50.11.png?dl=0)
Here are some general notes on our development flow:
### Development
* Currently operating in two week sprints
* We are using ZenHub to coordinate
- gives time estimates that we don't currently get from Github alone
- https://app.zenhub.com/workspaces/human-connection-nitro-5c0154ecc699f60fc92cf11f/boards?repos=152252353
- "upforgrabs" links to github project https://github.com/orgs/Human-Connection/projects/10?card_filter_query=label%3A%22good+first+issue%22
- ordering on ZenHub not necessarily reflected on github projects
* AgileVentures run open pairing sessions at 10:30am UTC each week on Tuesdays and Thursdays
* Core team
- all the people who are hired by HC non-profit corporation
- 9 people
- 2 core developers (Robert and Frank)
- 3 marketeers Jasi, Hardy and Sensi
- Martin head of IT and former data privacy
- Victor doing accounting
- Nicolas is the community manager (reviews content in the network) reflects community opinion back to the core team
* when can folks pair with Robert
- 10am UTC until 5pm UTC every working day
### Philosophy
We practise collective code ownership rather than total code ownership, which means that:
* anyone can start working on anyone elses code
* we avoid blocking because someone else isn't working on something
* however it's sometimes good to leave something in order to create successful education experience
* everyone should always push their code to branches so others can see it
Everyone feel free to request merges or answers to issues from project manager Robert
But what do we do when waiting for merge into master (wanting to keep PRs small)
--> Robert recommends creating a pull request for each step
- programming is also about thinking about other people - empathy for your co-workers
- but what about when you are waiting for merge?
- solutions
- 1) put 2nd PR into branch that the first PR is hitting - but requires update after merging
- 2) prefer to leave exiting PR until it can be reviewed, and instead go and work on some other part of the codebase that is not impacted by the first PR
### Notes
question: when you want to pick a task - (find out priority) - is it in discord? is it in AV slack? --> Robert says you can always ask in discord - group channels are the best
Robert shares: https://app.zenhub.com/workspaces/nitro-embed-5c0154ecc699f60fc92cf11f/reports?report=home
Robert says the order of tickets are preserved in ZenHub and so check out the current milestones
Matt - question about who can work on ticket 100 --> Robert - might be exclusive to someone with admin permissions
Robert: notes greg just pushed this today: https://github.com/Human-Connection/Nitro-Deployment
Matt makes point that new stories will have to be taken off the "New Issues" and Robert says that's fine, if you don't like the first one, then you can take the next one.
Robert notes that everyone is invited to join the kickoff meetings
Robert - difference between "important" and "beginner friendly"