Thanks to everyone who responded. These were all good ideas and resources.
The students ended up doing a great job. It was a student lead workshop.
They did a very brief intro to the idea of git and GitHub. This included
just a few slides with basic terminology. Then they went into a live
demo mode. The three students running the workshop took turns and
demonstrated a mini-real-life interaction:
- one of them created a brand new repository and put code in it
- the other reported an issue regarding that code
- the third person forked the repository, fixed the bug and issued a
pull request
- the repository owner reviewed the pull request and merged the changes
They made mistakes along the way, but I think fixing them and having to
redo some steps was a good educational experience for everyone.
Finally, the students in the audience (40+) got a chance to do something
on their own. They were asked to add their names to the list of
participants/contributors to the club projects by forking the
repository, making a change and issuing a pull request. The more
experienced students got through it fast and started helping out the
ones who had never used github before. It was very collaborative
experience and it was great to watch this type of interaction among the
students.
For those student who want more of a formal lesson, the workshop's
repository contains a list to several tutorials and other git/github
resources and information how to get the student pack from github. I am
always surprised how few students know about the github student pack.
By the end of the session all of the participants issued a pull request.
This was all done using github web interface so we did not run into any
problems with local installations.
The one downside was that we did not anticipate all the merge conflicts
that this exercise created (I should have thought of that before, but
hindsight is always 20/20).
Joanna
----------------------------------------------------
Joanna Klukowska, PhD
Clinical Assistant Professor
Department of Computer Science
Courant Institute of Mathematical Sciences, NYU
Warren Weaver Hall, Room 423
joann...@cs.nyu.edu
http://cs.nyu.edu/~joannakl/
Office hours (Fall 2017):
Monday 11:30am-1:00pm, Thursday 1:30pm-3:00pm
----------------------------------------------------
On 10/14/2017 05:27 PM, Carol Willing wrote:
Hi Emma and others,
I worked on OpenHatch for a number of years so it's cool that folks
are still using the materials.
Sharing with Emma and others, a slide deck (consider it public domain)
that I have used with complete beginners that uses my opinionated git
workflow for open source. It's the workflow that I have found that
minimizes merge conflicts (I rarely have one merge conflict a month
and I'm a pretty active developer). The keys to avoid the merge
conflicts is to always do new development on a feature branch and to
be consistent with naming of remotes.
Emma, please ping me if you have any questions or want an extra review
when creating your course.
Warmly,
Carol
Carol Willing
Research Software Engineer
Project Jupyter at Cal Poly State University, San Luis Obispo
@willingc on GitHub and @willingcarol on Twitter
willi...@gmail.com <mailto:willi...@gmail.com> and
cawil...@calpoly.edu <mailto:cawil...@calpoly.edu>
/Signature Strengths
Empathy - Relator - Ideation - Strategic - Learner/
On Oct 14, 2017, at 1:20 PM, Emma Irwin <emma.ir...@gmail.com
<mailto:emma.ir...@gmail.com>> wrote:
+1 on using the Open Hatch process, where people make small commits
that have real-time effect via Github Pages.
The only flag on that, when I ran it was multiple PR's on the same
file ('adding your name') can result in conflicts, and unless you're
teaching how to merge conflicts makes it frustrating.
This is a lesson I wrote based on Open Hatch,
<https://courses.p2pu.org/en/courses/2654/content/5732/> if it helps
. I'm also in the process of writing doing something similar as part
of an open source course, and will share back here when I'm done.
On Sat, Oct 14, 2017 at 12:31 PM, Emily M. Lovell
<emily_lov...@berea.edu <mailto:emily_lov...@berea.edu>> wrote:
One intro activity that I like is involving participants in a
sample web project on GitHub. I got the idea from OpenHatch after
mentoring at one of their workshops - and I’ve since repeated a
variant in class with my own students.
Here’s an example repo from an OpenHatch workshop:
https://github.com/princeton-8/princeton-8.github.io
<https://github.com/princeton-8/princeton-8.github.io>
It uses GitHub Pages <https://pages.github.com/>, which updates
an associated site
<http://princeton-8.github.io/princeton-8.github.io/> as pull
requests are accepted.
I like that students first see the local changes on their
computers as they make them - then later the evolving live
version as their code is merged with their classmates. The
workflow is for students to claim an issue, work on it, submit a
pull request, and then the maintainer responds to those. The
maintainer could be you as an instructor, or some of your more
advanced participants. I like that such an activity can be
customized, both for the theme of an event and for various levels
of experience. (You could provide a more complicated base project
to begin with and/or supply a broader range of issues.)
Emily
On Oct 14, 2017, at 3:04 PM, Carol Willing
<willi...@willingconsulting.com
<mailto:willi...@willingconsulting.com>> wrote:
The Django Girls tutorial's section on bash and git/GitHub are
very accessible and self paced. Software Carpentry also has a
good git tutorial. Both are open source.
On Oct 14, 2017, at 11:17 AM, meg ford <megf...@gnome.org
<mailto:megf...@gnome.org>> wrote:
Hi,
This one might be good for beginners:
https://try.github.io/levels/1/challenges/1
<https://try.github.io/levels/1/challenges/1>
Meg
On Sat, Oct 14, 2017 at 1:09 PM, Sarah A Sharp
<saharabe...@gmail.com <mailto:saharabe...@gmail.com>> wrote:
I don't have a good tutorial resource, but a word of
advice: give students directions beforehand as to how to
install git on both Windows and Linux computers. A friend
watched an interactive git workshop where three students
with a Windows laptop spent the whole session trying to
install git rather than paying attention to the lesson.
Sarah Sharp
On Oct 14, 2017 10:59 AM, "Joanna Klukowska"
<joann...@cs.nyu.edu <mailto:joann...@cs.nyu.edu>> wrote:
Hi All:
We are preparing a github workshop for the next week
meeting of the open source club.
I know that there are tons of tutorials and videos
online, but I was hoping for something that could be
done in an interactive fashion.
The students attending will be at very different levels
of experience (from total newbies to regular commiters)
and having someone go through slide like talk or
telling the students to watch vidoes will most likely
not work.
Is anybody familiar with some interactive way of doing
the git and github intruction?
I am hoping for something that would allow the students
who are more experienced to take on the role of teachers.
Thanks,
Joanna
--
---------------------------------------------------
Joanna Klukowska, PhD
Clinical Assistant Professor
Department of Computer Science
Courant Institute of Mathematical Sciences, NYU
Warren Weaver Hall, Room 423
joann...@cs.nyu.edu <mailto:joann...@cs.nyu.edu>
http://cs.nyu.edu/~joannakl/
<http://cs.nyu.edu/%7Ejoannakl/>
Office hours (Fall 2017):
Monday 11:30am-1:00pm, Thursday 1:30am-3:00pm
---------------------------------------------------
_______________________________________________
tos mailing list
tos@teachingopensource.org
<mailto:tos@teachingopensource.org>
http://lists.teachingopensource.org/mailman/listinfo/tos
<http://lists.teachingopensource.org/mailman/listinfo/tos>
_______________________________________________
tos mailing list
tos@teachingopensource.org <mailto:tos@teachingopensource.org>
http://lists.teachingopensource.org/mailman/listinfo/tos
<http://lists.teachingopensource.org/mailman/listinfo/tos>
_______________________________________________
tos mailing list
tos@teachingopensource.org <mailto:tos@teachingopensource.org>
http://lists.teachingopensource.org/mailman/listinfo/tos
<http://lists.teachingopensource.org/mailman/listinfo/tos>
_______________________________________________
tos mailing list
tos@teachingopensource.org <mailto:tos@teachingopensource.org>
http://lists.teachingopensource.org/mailman/listinfo/tos
<http://lists.teachingopensource.org/mailman/listinfo/tos>
_______________________________________________
tos mailing list
tos@teachingopensource.org <mailto:tos@teachingopensource.org>
http://lists.teachingopensource.org/mailman/listinfo/tos
<http://lists.teachingopensource.org/mailman/listinfo/tos>
--
-- Emma Irwin
_______________________________________________
tos mailing list
tos@teachingopensource.org <mailto:tos@teachingopensource.org>
http://lists.teachingopensource.org/mailman/listinfo/tos
_______________________________________________
tos mailing list
tos@teachingopensource.org
http://lists.teachingopensource.org/mailman/listinfo/tos
_______________________________________________
tos mailing list
tos@teachingopensource.org
http://lists.teachingopensource.org/mailman/listinfo/tos
TOS website: http://teachingopensource.org/