Hi Anelda,

I find almost all learners are familiar with the idea of version control 
because of the “track changes” option in word, the history option in google 
docs, and something similar in dropbox. The idea of wanting to record what you 
did and possibly go back to a previous version can be applied to a variety of 
tasks that are often part of the scientific process e.g. paper writing, coding, 
exploring data.

I like to teach both git and github because I see them as a progression. Git is 
the basic barebones minimum: track changes on your computer. Setting it up 
takes very little time and you’re ready to go. I do find that the add+commit 
process can be scary for learners - I was personally afraid I would mess 
something up that I couldn’t undo - so my teaching philosophy is add and commit 
as many times as possible, together and on their own so that that process is 
not scary. I haven’t used any desktop clients, which may bias my experience of 
them. When my collaborators have I’ve found that they are fine until something 
breaks, and then don’t have a great mental model of what is happening when they 
push the buttons. My preference is to teach with the command line which I think 
allows users to switch to a desktop client fairly easily. However, I can 
imagine cases where the mental load of command lint + git is too much and you 
may want to use some kind of GUI interface. I then teach GitHub as a way to 
collaborate either with yourself across computers or with others and as a way 
to back up your work at a source outside your workstation. 

I use slides throughout the lesson, alternating between telling them what we’re 
going to do and doing it. I also believe in very frequent exercises, which we 
go over after they’ve attempted them. The GitHub lesson is almost entirely them 
working with a partner. Here are my slides if you’re interested: 
http://slides.com/abostroem/local_version_control and 
http://slides.com/abostroem/deck-5. I like the Dracula/Wolfman story line 
because its easy for students to make up facts and play along with the story 
without having to think too hard about what they should write in the code or 
the commit message. I think this allows them to focus on understanding 
Git/GitHub. I can see teaching git followed by Python and using git throughout 
the Python to track the files you’re creating. 

All of that being said - its possible that what we’re primarily doing with 
git/GitHub are different. I don’t teach forking and pull requests although if 
you were more focused on collaboration via GitHub, you might want to. 

Azalee




> On Jul 8, 2017, at 2:46 PM, Inigo Aldazabal Mensa <[email protected]> 
> wrote:
> 
> On Sat, 8 Jul 2017 09:43:58 +0200
> Anelda van der Walt <[email protected] 
> <mailto:[email protected]>> wrote:
> 
>> Hi Simon, all,
>> 
>> Apologies if I've created confusion by making it sound as if git and
>> GitHub is interchangeable. I realise they are different, but I
>> generally don't see that we get adoption of git or even a twinkle in
>> people's eye after the git lesson when they have no prior exposure to
>> version control and associated concepts.
> 
> ? By what I see, and the feedback learners provide, I usually get people
> really excited about version control / git, even though they don't have
> any previous experience, i.e. they just know that "it exists". May it
> depend a lot on the community? Mainly physicists and biologists here.
> 
>> I've been wondering if there is something that can come before the
>> git-novice lesson to help the target audience of our workshops
>> understand the value of version control and tools like GitHub. Any
>> pointers to something that is even more foundational to help build
>> mental models and create a interest to learn version control would be
>> very welcome.
> 
> I use some motivational slides (~8 slides, 15 min.) prior to starting
> typing. But I usually do this for all the lessons I instruct. I don't
> have them online, but I wouldn't have any problem putting them up if
> you're interested. They won't blow up your mind with git light beams,
> but they work for me :-)
> 
> Inigo
> 
> 
>> 
>> Kind regards,
>> 
>> Anelda
>> 
>> On Sat, Jul 8, 2017 at 8:41 AM, Waldman, Simon <[email protected]> wrote:
>> 
>>> Surely these are two different things, doing two different jobs? Git
>>> (either command line or through a GUI) on the local machine, and
>>> Github for the remote repo?
>>> 
>>> 
>>> 
>>> Or is there a local GUI that also goes by the name of Github? If
>>> so, I recommend **great** care in describing this; if I’m confused
>>> by reading it on the discuss list, I can only imagine that learners
>>> will be too!
>>> 
>>> 
>>> 
>>> *From:* Discuss
>>> [mailto:[email protected]] *On Behalf Of
>>> *Anelda van der Walt *Sent:* 08 July 2017 06:33
>>> *To:* Bond, Steve (NIH/NHGRI) [F]
>>> *Cc:* Software Carpentry Discussion; John Poole; Bryan Johnston
>>> *Subject:* Re: [Discuss] Git lesson alternative
>>> 
>>> 
>>> 
>>> Hi Steve,
>>> 
>>> 
>>> 
>>> Thanks very much for sharing!
>>> 
>>> 
>>> 
>>> I've been wondering how we can simultaneously give a broader
>>> exposure to GitHub GUI as I (since I'm not a software developer but
>>> often collaborate with others on GitHub) mostly use GitHub and
>>> haven't had to use git command line probably for a year now because
>>> I could do everything I needed in the GUI. Not that I am promoting
>>> not teaching the command line way of using git, but for people
>>> who've never ever encountered version control it might be more
>>> accessible to first build a mental model by learning GitHub and
>>> then going to the next step of learning the command line tool.
>>> 
>>> 
>>> 
>>> Kind regards,
>>> 
>>> 
>>> 
>>> Anelda
>>> 
>>> 
>>> 
>>> On Fri, Jul 7, 2017 at 6:49 PM, Bond, Steve (NIH/NHGRI) [F] <  
>>> [email protected]> wrote:  
>>> 
>>> Hi Anelda,
>>> 
>>> We have stripped out the entire Dracula example from our workshop
>>> at the NIH, switching to a conversions script example (dollars to
>>> cents, feet to meters, etc). We have also chosen to focus heavily
>>> on the GitHub UI, instead of some of the terminal commands that
>>> GitHub otherwise hides.
>>> 
>>> https://github.com/biologyguy/git-novice
>>> 
>>> So it doesn’t tie in with gap minder, but we do have our attendees
>>> writing little programs.
>>> 
>>> There are still some significant kinks though, particularly when we
>>> get to the collaboration and conflict resolution sections. The last
>>> time we ran the workshop a significant gap developed between the
>>> faster and slower paced learners that was difficult to accommodate
>>> as instructors.
>>> 
>>> -Steve
>>> 
>>> 
>>> 
>>> 
>>> 
>>> *From: *Anelda van der Walt <[email protected]>
>>> *Date: *Friday, July 7, 2017 at 12:07 PM
>>> *To: *Software Carpentry Discussion
>>> <[email protected]> *Cc: *John Poole
>>> <[email protected]>, Bryan Johnston <[email protected]  
>>>> 
>>> *Subject: *[Discuss] Git lesson alternative
>>> 
>>> 
>>> 
>>> Hi all,
>>> 
>>> 
>>> 
>>> We'll be running a Software Carpentry workshop later this month and
>>> was discussing the git-novice lesson again today... We would really
>>> like to show people how real code can be put under version control
>>> in git/GitHub as opposed to showing the Dracula story. I know this
>>> conversation has come up several times, and some instructors have
>>> started to teach git on the morning of day 2 so that in the
>>> afternoon, when they continue with the Python lesson, they can show
>>> how it can be used with git. Does anyone have an edited version of
>>> the git lesson that allows for integration with the Python
>>> gapminder lesson perhaps?
>>> 
>>> 
>>> 
>>> Thanks!
>>> 
>>> 
>>> 
>>> Anelda
>>> 
>>> 
>>> ------------------------------
>>> 
>>> Founded in 1821, Heriot-Watt is a leader in ideas and solutions.
>>> With campuses and students across the entire globe we span the
>>> world, delivering innovation and educational excellence in
>>> business, engineering, design and the physical, social and life
>>> sciences.
>>> 
>>> This email is generated from the Heriot-Watt University Group, which
>>> includes:
>>> 
>>>   1. Heriot-Watt University, a Scottish charity registered under
>>> number SC000278
>>>   2. Edinburgh Business School a Charity Registered in Scotland,
>>>   SC026900. Edinburgh Business School is a company limited by
>>> guarantee, registered in Scotland with registered number SC173556
>>> and registered office at Heriot-Watt University Finance Office,
>>> Riccarton, Currie, Midlothian, EH14 4AS
>>>   3. Heriot- Watt Services Limited (Oriam), Scotland's national
>>>   performance centre for sport. Heriot-Watt Services Limited is a
>>> private limited company registered is Scotland with registered
>>> number SC271030 and registered office at Research & Enterprise
>>> Services Heriot-Watt University, Riccarton, Edinburgh, EH14 4AS.
>>> 
>>> The contents (including any attachments) are confidential. If you
>>> are not the intended recipient of this e-mail, any disclosure,
>>> copying, distribution or use of its contents is strictly
>>> prohibited, and you should please notify the sender immediately and
>>> then delete it (including any attachments) from your system.
>>> 
>>> _______________________________________________
>>> Discuss mailing list
>>> [email protected]
>>> http://lists.software-carpentry.org/listinfo/discuss
>>> 
> _______________________________________________
> Discuss mailing list
> [email protected]
> http://lists.software-carpentry.org/listinfo/discuss

_______________________________________________
Discuss mailing list
[email protected]
http://lists.software-carpentry.org/listinfo/discuss

Reply via email to