intro-to-python
intro-to-python copied to clipboard
Better Exercise(s) - Quality and Collaboration
The current exercises (Testing 123, CI 123, Codebase Cleanup, Developer Collaboration), are a bit disjointed.
It's possible that a single iterative exercise would be better.
We want to provide practice in the following areas:
- Branch Operations
- Refactoring / Simplification
- Pull Request Workflow, including Reviews and Checks
- Automated Testing
Notes / Thoughts:
-
A shared repo model is probably easier conceptually than an open source model (see Developer Collaboration).
-
It might be more helpful to start from scratch (e.g. Testing, 123) rather than an existing repo (e.g. Codebase Cleanup).
-
All solution code should be on hand in a single place, for everyone to reference (feels bad to have to reach back to the RPS lesson prep for the final code solution). The exercise description subdirectory is probably a great place for this (see Web App exercise).
-
Code Climate is buggy with regard to old repos that have been deleted and re-forked (namely any demo repo I'm using that has been forked rather than created from scratch), so this maybe another reason to go with a from-scratch approach.
Some students have asked for more resources to help them collaborate after a PR has been merged. The notes in the course repo answer these questions using the Git CLI, but since students are using GitHub Desktop, that guidance is not the most helpful.
We found that by following this guide, we were able to get things to work via GitHub Desktop: https://docs.github.com/en/desktop/contributing-and-collaborating-using-github-desktop/keeping-your-local-repository-in-sync-with-github/syncing-your-branch