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

Brainstorm and make a draft of a hypothetical practice (group) project #3

Open
lwjohnst86 opened this issue Sep 6, 2024 · 5 comments
Assignees
Labels
discussion Tasks related to discussions or brainstorms

Comments

@lwjohnst86
Copy link
Member

Brainstorm and on project/hypothetical example they could complete that demonstrates that they achieved the learning outcome (e.g. like the team project in the intro R course).

@signekb signekb changed the title Brainstorm a hypothetical practice (group) project Brainstorm and make a draft of a hypothetical practice (group) project Sep 13, 2024
@signekb signekb added the discussion Tasks related to discussions or brainstorms label Sep 13, 2024
@lwjohnst86 lwjohnst86 self-assigned this Sep 13, 2024
@lwjohnst86
Copy link
Member Author

Linking a bit with #4 and #2, the core skills/knowledge we want them to use:

  • Make a new repo and add others as collaborators (alternatively, it might be easier if we create it for them, so we can more easily help them, like we do with the intro R course)
  • Make settings to that repo to make collaboration a bit easier/secure (branch protection, other settings)
  • Clone the repo
  • Create issues
  • Assign issues
  • Create a branch
  • Make an atomic change with a conventional commit style message
  • Push the changes to GitHub and make an atomic (or small) PR
  • Review a PR and make some suggestions
  • Respond to a review and apply suggestions, pulling and pushing changes back
  • Approve a PR and select a merge type to merge in the changes

@signekb
Copy link
Member

signekb commented Sep 26, 2024

@lwjohnst86 I agree with the core skills and knowledge outlined above (ofc 😁).

We could put them in groups of e.g., two or three who can then create a repo together and add each other as collaborators? I think it would be nice if we could make them do it themselves, bc if they don't feel comfortable with - or have at least tried these setup steps - they might not feel like they're capable of starting a new project themselves.

About the actual project: Could it be something a bit silly like creating a recipe book/a collection of recipes?
Then tasks could be (after initial setup steps and talks about Git/GitHub and collaboration ofc.):

  1. Create issues of which recipes to include (one per person in the group) + an introduction to the cookbook (i.e., the README)
  2. Apply the contributor workflow by selecting a recipe (e.g., a dessert), create a branch for it, write it out in Markdown, and make a PR
  3. Apply the reviewer workflow by reviewing one of the other's recipes on GitHub with suggestions and feedback? (i.e., request changes) - like add spices; a header for ingredients, etc.?
  4. Go back to contributor workflow by going through the suggestions and include or reject them. Ask for a new review from the reviewer (and continue this back and forth until the reviewer approves)
  5. Then apply the "admin" workflow and merge.

Alternatively, it could be a guide on how to collaborate on projects? But I fear that it could feel a bit redundant or copy-paste like for the learners since this is basically what we will cover in the course?

Do we want to cover merge conflicts? If yes, we should think of a way to make learners create one.

@lwjohnst86
Copy link
Member Author

Ooo nice ideas!! I like that the project is something that everyone can relate to (eating food and having favorite foods)!

@lwjohnst86
Copy link
Member Author

And yes, merge conflicts would be very useful to have! It could be something simple like, make a change to the same line. Create PRs for each person, then merge one in and fix the other.

@signekb
Copy link
Member

signekb commented Sep 26, 2024

Yes, true! I think it’ll be very useful for them to try to handle it, even though it will be a simple toy example 💪

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
discussion Tasks related to discussions or brainstorms
Projects
Status: In Progress
Development

No branches or pull requests

2 participants