Git Product home page Git Product logo

Comments (4)

chendaniely avatar chendaniely commented on August 22, 2024

Probably needs a discussion and enhancement tag

from git-novice.

iglpdc avatar iglpdc commented on August 22, 2024

Yes! This is something I've been musing about for long now. These are my thoughts.

The current collaboration part of the lesson is built around making the other person a collaborator on GitHub. I think this is a good default:

  • It's shorter and simpler than the PR route.
  • It's better suited for a small team of researchers working in the same group or department.
  • It's the only way to do it if you're taking the lesson by yourself, as you cannot fork your own repos. [1]

However, many of us teach the PR version that @chendaniely mentions. (I do it if I have time). The PR version allows the role-playing that many have reported successful and fun for the students [2].

My idea was to add a script (not the computer type, but the movie type) with the instructions each partners has to enter. I was thinking in using roles for this, so people choose one role (Dracula and Wolfman or whatever) and follow the script from there.

The script wouldn't be in the lesson as a topic, but as a separate material linked to the instructor guide. If the workshops teaches PRs, instructors just pull the script, distribute it to the learners, and choose roles for everyone (including themselves).

The advantages of this is that you are not tied to teaching PRs and can decide on the flight. The second advantage is that people (including the instructors) won't get lost. Without clear instructions, the room turns into a mess pretty quickly.

Regarding your particular set of instructions, I would mix the two roles more if possible, so nobody is waiting idle for long.

[1] You could send you a PR to yourself, but this requires different instructions.
[2] http://swcarpentry.github.io/git-novice/instructors.html

from git-novice.

chendaniely avatar chendaniely commented on August 22, 2024

I just saw the other issue that's related: #23

I'm not sure how people go about sending PR's to themselves. The last time I did that was with @iglpdc at the Harvard workshop, and it required a lot of "please don't type what i'm typing" because I was creating branches.

Adding people as collaborators may be better than PR's since that's probably the model many labs will be using, but the PR way is the 'open science' way. We can mention adding collaborators, and that will be the same as working on your own repository. By showing them PRs we expose them to something else.

This is one of those cases where just showing it to them once, will make things easier in the future. People will no doubt see the words origin and upstream when they start googling for help.

from git-novice.

daisieh avatar daisieh commented on August 22, 2024

For the UBC and SFU workshops, @ttimbers and I taught some extra lessons that could act as a capstone:

https://github.com/swcarpentry/git-novice/blob/55e99b82483b7dc0ecc08bb71635220ace47d73a/08-role-play.md
https://github.com/swcarpentry/git-novice/blob/55e99b82483b7dc0ecc08bb71635220ace47d73a/09-forking.md

The advantage of doing it this way is that you really see the problems with merging and collaborating in the same repo, and then you teach forking and have everyone submit PRs that show up like magic in the master repo! Ideally, we'd like that capstone repo to be something that the instructor makes to hold, say, the results of the earlier python/R/shell lessons.

from git-novice.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.