Module 2 Exercise 4: Workflow and assignments with Classroom


(Burton) #221


I did not have anyone that I knew with a GitHub account to share this with, so it is without students right now. Here are my answers to the questions:
1 - I would just keep assignments in repositories at first, but it sure would be nice to have everything in one place.
2 - I would expect students to commit at “milestones” in an assignments as indicated in their assignment instructions.
3 - Commit messages for many assignments would be markers I give them to help me in grading, but for larger projects would need to be relevant to whatever they are working on.
4 - Pushing code to GitHub would occur when grade checkpoints and final submissions are required as indicated in the assignment instructions.


(Waleed El-Badry) #222

Exercise: Workflow

  1. Will you keep all course materials in a repository? Or just assignments?

Answer : I always tend to have all course materials on repository for students to be updated regarding any changes during course activities and even being acquainted with course updates in the next semesters.

  1. When will you expect students to commit?

Answer : I encourage students to keep committing whenever they make progress to stay active and to know their progress.

  1. What sort of commit messages should they use?

Answer : They normally writes short description of the reason for the new commitment

  1. When do you want your students to push their code to GitHub?

Answer : On final delivery

Exercise: Distributing assignments


(P Buda) #223

Exercise: Workflow

I would use GitHub Classroom first to post mainly group assignments so that the students could experience the collaborative software development process with the version control. I imagine several different scenarios for the assignments, for example,

  • a beginner project where each student creates the code from scratch and commits to a single branch. (So, not a group project, actually).
  • a project for two students where they get a bare-bones app they can develop further, using GitHub.
  • a project for two or more students where they get to modify a working application by adding new features and fixing bugs with the use of multiple branches.

As for when they should commit to Git repo, they should do it after adding any significant change to the source code.

The messages they would use should be very specific and describe only one type of change they made (Although, I wonder if this is do-able in practice or would it create too much “noise” in the commits history?).

When to push to GitHub? At the end of each workday during the duration of the project. I will also tell them to pull from GitHub at the beginning of a workday, so they are up-to-date with the version on GitHub.

Exercise: Distributing assignments

week2_ex5_part2
The assignment is not developed yet. It is just a shell for now but I have a few more weeks to get the actual assignment ready. (The spring break will help).


(Ola Yusuf) #224

I will definitely keep all course materials in a repository along with corresponding assignments. this will simplify the navigation issues and also narrow students concentration for each course.

I will preach atomic commit as best practice. Although, the nature of problem to be solved might influence how often student commit

The commit message should be short, simple as possible. It must indicate a single action or functionality added.

Student will be expected to push their code to GitHub each time a gradable section or part of the solution is attain. perhaps , there is a deadline for submission.

MY CLASSROOM DASHBOARD


(Akash Ali) #225

Will you keep all course materials in a repository? Or just assignments?
I will must keep all the course related material with assignments. It will help the students to get all the things that are required.

When will you expect students to commit?
I have given the assignments to students. They will commit before the deadline.

What sort of commit messages should they use?
They will use simple messages.

When do you want your students to push their code to GitHub?
I want my students to push their code before the deadline.


(Guillaume SALVA) #226

Exercise: Workflow

  1. Will you keep all course materials in a repository? Or just assignments?

-> assignments only

  1. When will you expect students to commit?

-> as soon as they finish to test locally their code

  1. What sort of commit messages should they use?

-> readable and useful message. No “it’s a commit” or “blop”

  1. When do you want your students to push their code to GitHub?

-> as soon as they are done with all tasks - so we can proceed to the automatic review of their code

Exercise: Distributing assignments

  1. Create an organization with your course materials for one assignment in a repository.
  2. Create a Classroom, and an individual assignment.
  3. Send it to a colleague to accept.
  4. Take a snapshot of your teacher dashboard and post it below.

Done!


(Juha Hinkula) #227
  1. Will you keep all course materials in a repository? Or just assignments?
  • Just assignments
  1. When will you expect students to commit?
  • They should try to keep commits atomic
  1. What sort of commit messages should they use?
  • Informative starting with verb
  1. When do you want your students to push their code to GitHub?
  • In each commit


(Muhlbaier) #228


(Manbir Singh Marwah) #229

Will you keep all course materials in a repository? Or just assignments?

I will try to keep all the course material in the repository, so that it is all accessible at one place and can be shared through one link.
Starter code + readme + presentations + assignments, all in one repository, sorted in their respective directories.

When will you expect students to commit?

I would expect regular commits, and commits after every significant change as they progress through the task.

What sort of commit messages should they use?

They should use a short, descriptive enough, and clear message and it should be like a summary of the change. It can be as short as 5-10 words and as long as 40-50 words.

When do you want your students to push their code to GitHub?

The number of push should be less than commits. I would suggest a push in every 2-3 days.

@mozzadrella, here’s the screenshot of my classroom’s dashboard :smiley:


(Crcdcomp) #230
  1. Course materials will be hosted on the google drive platform. The tasks will be hoped for in GitHub.

  2. Students will perform the tasks of a single job for each semester. Commitments will be mailed every two weeks to the teacher. At the end of the semester the teacher will download the repository to evaluate the final product of the work.

  3. Students should justify changes to the code with their bibliographic references.

  4. Students will send the final code at the end of each semester and the teacher will execute the code and make the final evaluation.


(Younes Charfaoui) #231
  • Will you keep all course materials in a repository? Or just assignments?

Yeah, I will keep both course materials and assignments in a repository, so if a student gets stuck, the materials will be provided in the same repo.

  • When will you expect students to commit?

After completing each assignment.

  • What sort of commit messages should they use?

messages should be informative and which assignment.

  • When do you want your students to push their code to GitHub?

At least when they finish each assignment


(Ravi Tomar) #232

Exercise: Workflow

  1. Using Private repository we can distribute course material as a single different repository so we can update and change is immediately reflected to all.
  2. Whenever they are sure that they have contributed something significant and contributive, they should even commit failures.
  3. As much as descriptive they could.
  4. Everytime whenever they are working on a long project which needs multiple revisions and if its a team project then it becomes a necessity.

Exercise: Distributing assignments

Done Please find screenshot


(Petri Salo) #233

The basics of programming course of this semester is too close to the end to start using Git and GitHub now, but i plan to include Git and GitHub next fall.

I think i will keep the repos clean with only materials and code related to the assignment.

I expect students to commit everytime they add something to the code. Change should be something you can describe in one sentence on the commit message. If you feel like you need to save your work, you should also commit the changes.

Clean and simple: by reading the commit messages, you should understand what was done without actually checking the difference between said commits.

At least everytime they leave the classroom, would want the students to view pushing as same as taking a backup.



(Kangwon Lee (Education)) #234
  • Exercise: Workflow
  1. Will you keep all course materials in a repository? Or just assignments?
    Both for one course, just assignments for another.
  2. When will you expect students to commit?
    At latest after finishing an assignment. I also encourage incremental commits.
  3. What sort of commit messages should they use?
    I expect them to develop their own style; GitHub is one of excellent places to learn.
  4. When do you want your students to push their code to GitHub?
    When they are done with their assignments or at the end of a session. However, they may push before starting intermissions.

(Kundan) #235
  1. I usually create one repository for each assigment with one classroom per class.
  2. I prefer atomic commits or once a part/feature is completed.
  3. The commit message should be short and descriptive.
  4. They should push their code after every session of after every commit.

(Asaolu Elijah) #236
  • Will you keep all course material in a repository? or just an assignment?

    • I’m hoping to keep all course materials in a private repository, after which students be invited to join, they can easily get access to course material with this.
  • When will you expect student to commit?

    • Commit should be made often, and mostly if there is a significant change in their code
  • What sort of commit message should they use?

    • A meaningful message, describing the exact change made to the file
  • When do you expect your students to push their code to GitHub?

    • Pushing often will be recommended, to serve as a backup, this will also curb tragedies like “i lost my hard disk”, “my flash was stolen” :slight_smile:


(BJ Selby) #237

Workflow:

  1. I have not yet decided, but I could easily see how this could be used as a full-fledged LMS
  2. My idea is to have students commit their assignments whenever they complete a problem.
  3. The messages will depend on what that activity is that they are completing. It may be a short not about what they did or updated.
  4. Students will push their code to GitHub when the assignment is due.

Distributing assignments : See attachment


(Mayur Patil (मयूर पाटील)) #238

Exercise: Workflow

Will you keep all course materials in a repository? Or just assignments?

I will only keep assignment here. Other docs will in Google Classroom with google drive.

When will you expect students to commit?

After One month, as the exams are going on.

What sort of commit messages should they use?

Solution-of-A1-by-github-username

When do you want your students to push their code to GitHub?

Only after my review and approval for PR.

Exercise: Distributing assignments


(Sgsultana) #239

Hopefully this is where I was supposed to include snapshot from Module 2 Exercise 4. When I look at the readme.md file there is the information on the second planet. I am assuming this is what I am supposed to see. I wonder if it would be less confusing if we were instructed to add information on the second planet versus rewrite? I am still a bit confused on what a branch is supposed to represent (an update or another completely different file).


(Ryan B. Harvey) #240

@mozzadrella The course I teach has no individual assignments, only a large group assignment. Should I just make something up for this assignment?