Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

ci: auto add issues to projects #482

Closed
wants to merge 1 commit into from

Conversation

da2ce7
Copy link
Contributor

@da2ce7 da2ce7 commented Oct 11, 2023

No description provided.

@da2ce7 da2ce7 requested a review from a team as a code owner October 11, 2023 16:50
@da2ce7 da2ce7 temporarily deployed to coverage October 11, 2023 16:50 — with GitHub Actions Inactive
@codecov
Copy link

codecov bot commented Oct 11, 2023

Codecov Report

Merging #482 (35b107b) into develop (69f3327) will decrease coverage by 0.01%.
The diff coverage is n/a.

@@             Coverage Diff             @@
##           develop     #482      +/-   ##
===========================================
- Coverage    84.55%   84.55%   -0.01%     
===========================================
  Files          100      100              
  Lines         7117     7116       -1     
===========================================
- Hits          6018     6017       -1     
  Misses        1099     1099              

see 1 file with indirect coverage changes

📣 We’re building smart automated test selection to slash your CI/CD build times. Learn more

@da2ce7 da2ce7 force-pushed the 20231011_projects_workflow branch from f6e3517 to 35b107b Compare October 12, 2023 05:11
@da2ce7 da2ce7 temporarily deployed to coverage October 12, 2023 05:11 — with GitHub Actions Inactive
@da2ce7 da2ce7 added the Needs Rebase Base Branch has Incompatibilities label Oct 13, 2023
Copy link
Member

@josecelano josecelano left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Hi @da2ce7 I like the idea of classifying the issues depending on who they impact, but maybe we do not need a project for that. Unless you want to create a project only for having a board where you can easily see how this type of issue evolves.

I see projects more like a set of deliverables you want to achieve in a limited time with a concrete amount of resources.

The way I like to think about product development is how it's described here.

I think we should

  1. Define some goals.
  2. Prioritize goals in milestones.
  3. In order to reach the goals, you impact some people (4 personas we have defined so far: admin, contributor, developer, user) with some deliverables that could be: epics (high level) or the minimum deliverable (deployable issue).

We could organize the work in projects so that for a certain subset of the deliverables associated with a goal, we define a limited time and resources. It could be a way of organizing teams if you assign one team per project.

If we only want to track (with a board) the issues that impact a given actor, it's fine.

I think all potential goals can be classified into these high level types:

  • Increase users (peers using a tracker that runs this software)
  • Increase installations (number of trackers running this software)
  • Increase contributors
  • Increase contributions

For example, we could map other concrete goals:

  • Make the service easy to install -> increase installations
  • Support cloud services for deployments -> increase installations
  • Improve documentation -> increase contributors
  • Define a good set "good first issues" -> increase contributors
  • High code quality -> increase contributions (retain contributors because they enjoy collaborating)
  • Add features to make it easier to manage the service -> Increase installations
  • Run a public tracker -> Increase users
  • Help admins to install the service -> increase installations
  • Improve performance (response time or less memory usage that leads to reduced hosting cost) -> Increase installations
  • Etcetera

If I had to define the strategy, I would start improving the admin experience because my assumptions are:

  • Admins are also developers and are also users at the same time.
  • The more it's used, the more contributions we will get from the same people who are using it.

So I would focus on documentation for admins, like tutorials for deploying the services or/and essential features for the admin panel that admins are missing in the current version.

@cgbosse
Copy link
Member

cgbosse commented Oct 19, 2023

@josecelano

I think that what you propose makes absolute sense.

You are recommending a structured approach where you start of High Level and work down one layer after another and also can have a public roadmap as to where we want to take the project which is an indicator for the long term projection of the project.

For example I think that the roadmap is key for attracting other contributors and building a community. As a matter of fact I would not spend my free time on a project where I see no projection. I would consider it a waste of my time. I think that the Roadmap should be a projection such as done by GitHub https://github.com/github/roadmap.

I would recommend that we follow your approach since I remember it worked well on other projects.

On the other hand regarding the proposed by @da2ce7 of having a project board the issues that impact a given actor you can generate it too at a lower level.

Also for your information you can have a board that reflects the issues from several repositories thus you can reflect the information any way you want. The project boards are very flexible.

@cgbosse cgbosse added this to the v3.0.0 milestone Jan 12, 2024
@josecelano
Copy link
Member

Does this still make sense? We are using this project view https://github.com/orgs/torrust/projects/10/views/1

@da2ce7
Copy link
Contributor Author

da2ce7 commented Mar 26, 2024

closing until I review the https://github.com/orgs/torrust/projects/10/views/1 project properly

@da2ce7 da2ce7 closed this Mar 26, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Needs Rebase Base Branch has Incompatibilities
Projects
Status: Done
Development

Successfully merging this pull request may close these issues.

3 participants