Closed ababaian closed 1 week ago
I've gone through all the tasks, there's alot here. My vote is we do not add any new feature requests until we have the backlog
down to ~5-10 items. There's a good chunk of work to be done here.
@almosnow can you please draft the Issue Templates
for each of the classes
and get them online. Any new issues created from this point forward should use the template and have a clear problem statement, plan of action, timeline and end product to be implemented.
If there are any issues currently open which you think should be closed and are no longer relevant, or issues which can be merged, comment in them and we can discuss.
There's some good pointers here for adding issue meta-data fields: https://docs.github.com/en/issues/planning-and-tracking-with-projects/learning-about-projects/about-projects#adding-metadata-to-your-items
A bunch of the meta-data we want can be accomplished by auto-assigning issues in open-virome to the open virome
project ,and there are fields there which will help organize the project overall
Got it, I'm not familiar w/ Github Projects but I'll spend the day on this and learning more about how to use them to our best advantage.
@ababaian what would your opinion be (RFO from now on) of using a label like needs-triage
to tag issues at the very beginning of this pipeline?
Sometimes you just come up with something that's needed, but don't have half an hour to sit down and properly write it/document it. Neither does it deserve any DEFCON# since it's pretty much nothing at this point, but it's useful to pin it here anyway.
Some reference templates: https://github.com/kubernetes/kubernetes/tree/master/.github/ISSUE_TEMPLATE
I like triage
as a tag, essentially it will mean an issue is slated to be "removed from project" at end of sprint. Then each sprint cycle we can triage unneccesary tasks.
Any item which is something like "30-120 minutes" of extra work for a small feature which is needed should be documented as part of the issue you're working on if it's related to that task.
If it's completely unrelated, make an issue and you can document it proportional to the amount of time needed to complete it. 5 minutes of documentation for a 30 minute task is well worth it, because of the overall gains of efficiency of gathering data on all task workflows. I'm 99% sure we're leaking focus on mission critical tasks because we've been in "free form" mode of development, which is needed at times, and now we should focus on getting mission critical tasks completed in a focused way, we know the goal, we have to get there.
@almosnow The templates looks good; can you add one more for Analysis
and set it up following the scientific method. Essentially this will be used to register a hypothesis for a given analysis.
Issue template # 5 is up, please review and close if good enough now 👌 .
👍 Looks good for now, we can update as needed.
Motivation: We have a very large number of issues and they're not organized ideally. This is making the overview, management and prioritization of workflow sub-optimal.
Proposed Solution: First priority is to organize the issues and create Issue Templates
The class of issues we have are.
Bug: Something is not working as expected
Feature Idea: This is a new feature, or a new idea which will require development
Documentation:
Discussion/Analysis: More information is required for a decision to be made
[x] Task 1: Go through all current issues and
label
them.[ ] Task 2: Create a
Issue Templates
For each of the
Issue Classes
so that relevant information for each issue is gathered at the time of creating issues, and they are not one sentence descriptions which are hard to come back to. Each issue should describe theproblem
/idea
/hypothesis
and providereproducible example
/preliminary data
/justification
as appropriate. In addition each issue which is opened by a dev should include aWork Outline
which describes the expected implementation / outcomes. See: Strong Inference for rationale here, GH-issues as scientific method.We'll need to discuss issue templates a little bit so we're gathering the important data in them at time of creation. Let's hear the ideas.