A focus sheet allows all contributors and users to contribute to the growth of libraries by spending their energy in concerted efforts on a common goal. This is a continuation of the post "About: alpha focus" which was posted before. This is a more of a go to reference that will be maintained.
Each focus sheet consists of the following :
- a snowkit.org blog post tagged “focus”
- a github milestone (example) for the focus sheet
- a focus sheet issue for contributor roll call (example)
There are two kinds of assignments, the github assignee has the goal of making sure the issue is moving forward - they are the driver.
The issue description will list the actual current contributor doing the work - they are the contributor.
The driver ensures that the current contributor is getting along ok. If the contributor becomes unavailable for whatever reason, they tell the driver, and the driver will reassign the task to someone else that was also interested in that specific issue.
The driver is also there in case the task is not picked up or nobody is around, they are capable of closing the task themselves.
This makes communication quite important - the driver might reassign the task if you haven't communicated anything over some time. If you are stuck, ask for help in the comments. If something comes up - let us know, it's no big deal. If your task is reassigned it's not a bad thing - life goes on outside of open source and we respect that - we carry each other forward.
~7 day roll call
Everyone has time constraints - Imagine the focus sheet was posted in the middle of the week, and you only have the weekend to have a look - by that time all the tasks might be assigned.
For this reason, the assignments will have a small window (~7 days) of time to allow everyone to suggest tasks they can help with, from the listed tasks. Assignments will be made based on frequency of contributions and other key factors.
new tasks and features
It's important to have a window of opportunity to discuss a single focus, in one place and at one time. The focus sheet also gives us the opportunity to collate all our ideas and suggestions and issues into a single place. This place is shown below, the
focus discuss issue listed under the milestone.
Things that may have been overlooked, or features that might be nice, things that are just wrong, missing or incomplete - the above time window gives everybody a place and a time to discuss issues/features and find good solutions to the issues at hand.
This means new tasks might be added to the sheet under certain conditions, and the rest will fill out future focus sheets.
The same topics will come up more than once, you can be sure of that. If you miss a focus sheet it's not over and done. You can bring up issues and features and discussions at any time - and that will also fuel future focus sheets.
To contribute to a focus sheet
- find the
focus sheetissue in question
- pick tasks that you want to help with, and commit to helping
- comment on the
focus sheetissue on github in this format :
- #123, #234, #456 (an issue number - examples)
- //other comments/info (I need help, I have done this already etc)
- after roughly 7 days of allowing people to pick tasks, the focus sheet issue will be locked
- discuss features/suggestions/ideas/unlisted issues on
- This process will iterate and evolve and flow toward the best option for everyone
- Always be polite, helpful and positive - we are here for each others benefit
- If you feel like you want to help, but not sure if you are able to - pick tasks you feel you might be able to do and mention that you would like help. The community will help people to accomplish tasks for everyones benefit.
- Discuss an issue on the relevant issue itself, not the focus sheets
- Once the ~7 days is up, you can still help out if you find time on the issues themselves, this is simply to streamline who is doing what for everyone to follow along
- You can still bring up feature ideas, fixes or issues at any time
- Use the focus sheet issue to find users that wanted to help on an issue you were doing if you need to. You can @mention users by name on the issue comments for help/peer review, but don't spam.
- Don't worry if something prevents you from helping out, and rather not list yourself if you know you are busy