Skip to content
TIYRaleigh edited this page Mar 26, 2016 · 6 revisions

How are assignments delivered?

Each assignment will be delivered as a directory in this repo (not the wiki) that contains a README.md file; for example, the pre-class assignment: 00 -- This is Heavy. This file will contain all the instructions for the assignment, a list of the minimal requirements, and a list of deliverables. If your work doesn't match the requirements or expected deliverables, it will be rejected. Over time, the assignments will provide fewer and fewer explicit instructions, as you will be expected to become familiar with the process. Similarly, the requirements and deliverables will be enforced more strictly.

When is my assignment due?

Assignments are typically due at 12:30am on the morning of the next class day. Note that class runs Monday-Thursday, so while an assignment given Tuesday is due 12:30am Wednesday, an assignment given Thursday is due at 12:30am the following Monday. The reason for a midnight due date is to prevent you from staying up to all hours of the morning trying to complete your work. Any one homework assignment is not as important as you being fresh and ready for the next lecture topics. Keep that in mind as you progress through the cohort.

Many of the assignments will seem larger than you can complete in the time allotted. Part of your job will be to analyze the assignment, prioritize sections, and apply time constraints to your work to ensure that you complete some of every part of each assignment. Always turn in what you have.

How do I turn in my assignment?

These are the default instructions you should follow for every assignment. Additional instructions or direction may be provided with a given assignment, but always ensure that you follow these steps.

  • Create a Work In Progress (WIP) Issue in this repository for every assignment
    • Name it according to the assignment name with your name appended, e.g. 00 -- This is Heavy -- Ben Gohlke
    • If tasks (i.e. check boxes) are provided for you in the assignment file, include them as the description of your WIP Issue
    • If tasks are not provided for you (as in later assignments), create your own; you will be expected to break down many assignments on your own
    • Estimate the complexity, difficulty, and risk of each major piece of the assignment with T-shirt sizes: Small (S), Medium (M), Large (L), Extra Large (XL)
  • Check off tasks as you finish to demonstrate progress; note the progress bar in the Issues list for each issue
  • Create a new topic branch in your TIY-Assignments repository for the assignment
    • Name the branch according to the assignment, e.g. 00--This-is-Heavy
    • Ensure that you commit all your work into that branch only
    • Push that branch to Github regularly to show progress
  • Open a Pull Request (PR) from your topic branch to master
    • Add a link to your WIP Issue in a comment on your Pull Request
    • Note that the PR will update automatically as you push more work to the branch
    • Do this step as soon as you have a commit; don't wait until the due date!

Note that some assignments won't involve writing code into your TIY-Assignments repo, but you should still always create a WIP Branch in whatever repo you're working in. Some assignments will be long-running and will span several branches or Pull Requests (PRs). You may also be assigned groups or pairs for certain assignments. The assignment will dictate whether you both need code and branches in your own repos or if you're expected to share repositories for a project. You should always create a WIP Issue in the class repo, though, and link to your work.

How will assignments be graded?

Your assignments will be graded on a simple scale, represented by Labels on your WIP Issue. If the work provided:

  • Does not contain links to your work in the various repos, does not match the requirements or contain the deliverables enumerated, your WIP Issue will be marked with the RED label.
  • Just meets the base requirements but demonstrates a lack of effort or understanding:
    • Your WIP Issue will be marked with the ORANGE label
    • Feedback for improvement or further study or practice will be provided
  • Meets or exceeds the requirements and demonstrates understanding of key concepts:
    • Your WIP Issue will be marked with the GREEN label
    • Feedback for continued improvement may be provided on the linked PR
  • Demonstrates an exemplary effort worthy of additional recognition, it will be assigned a YELLOW label (gold star).

In any case, your WIP Issue will be reassigned to you to review and close. If you don't review and close your Issue in a timely fashion, we'll start bugging you. If you have further questions about the feedback provided, please ask in a comment and bring it to our attention. If you write us directly via chat, email, Twitter or otherwise, we will redirect you to the appropriate issue. This is for our protection as well as yours, to keep our conversations on-the-record.