Skip to content

Latest commit

 

History

History
63 lines (33 loc) · 4.05 KB

assignment-management.md

File metadata and controls

63 lines (33 loc) · 4.05 KB

Assignment Management

Throughout this course there will be 6 assignments, one assignment project per week. The assignment project is due no later then 9am, the Friday of that week.

Please read through these guidelines carefully as this could negatively impact your grade.

Submitting assignments

Submitting assignments for this course will require leveraging some of the more advanced features of Github. These features will not only improve your knowledge of Git and Github, but also provide practice exercises for working on a distributed project with a large team.

Working as a team

Every assignment requires that you work as a pair. No one is allowed to work in a silo and submit a project assignment without the contributions of other.

This doesn't mean that you individually work and submit code back to the same repo. It means that you pair together. Work on ideas using words. Someone taps the keys, why someone else looks up the answer. Talk about your solutions. Think reasonably about the process needed to arrive at a good solution. Make things work, get things done, iterate in ideas, refactor and commit often.

How to submit an assignment

Pair programming and peer reviews are requirements per assignment. Any assignment submitted where there is no evidence of these specifications will get an automatic 0 for a grade.

Team A forks the repo

Your assignment will be peer reviewed by another team, we will call them Team A. One person on that team will be the one responsible for forking the Instructor's repo of the assignment.

Team B forks A's repo

Once Team A forks the master repo, Team B, you, will;

  1. designate one person of your team who will fork the repo
  2. update the forked repo to allow for collaborators
  3. clone the forked repo to your computer(s)

Team B Submits Pull Requests

This part is essential. As you work on your project and complete a milestone in development, you need to submit a pull request to the Team A repo for review and final merge.

In the end, it will be Team A's repo that is turned in for the assignment.

With each feature, create a new branch from master, using the feature's name is a typical rule. As you work on that feature, commit code to the branch and push to Github. Once the feature branch is complete, initiate a pull request.

Ensure that Team A is aware of the pull request and that's it's their responsibility to review the code and provide feedback. Once Team A considers the code to be correct, they can merge the pull request into their master.

Turn in your assignment

To turn in an assignment, it's pretty simple. Get the URL of Team A's fork and submit that to Canvas.

You can submit that URL and the assignment anytime up to 9am, Friday of that week. Assignments submitted later then the designated time will lose 50% of their points.

Team A is to submit a final PR of the project to the Instructor's repo, again, no late then 9am, the Friday of that week.

Assignment grading

The final PR will be reviewed by an instructor the following week and given a score between 0 - 100. All grades are final and due to the fast pace of the course, there is no time to go back and re-do work that scored a low grade.

60pts or higher is a passing grade

In order to graduate with good standings from Code Fellows, you need a minimum of 60pts per assignment.

If for some reason you and your team score less then 60pts on an assignment, you will be given the opportunity to achieve additional points by doing extra work.

Additional work will be determined by the areas where points were subtracted as that will be the indicator of where more learning is needed. Additional assignments will most likely be in the form of additional reading, summary writing and development of a small exercise to illustrate understanding of material.

You are limited to one week, post failing project, to complete the additional work.