Hi Matthew, > I searched the list history and didn't see a similar topic already posted, so > apologies if this is a rehash of a previous conversation. > > I'm going to be teaching a version of the git novice lessons next week to an > audience that does not feel comfortable on the command line. My goal will be > to > use Github Desktop [1] which provides a (reasonably nice) GUI on top of common > interactions with local and remote repositories. I expect to walk through the > GUI interactions in approximately the same order as the lessons while having > some conceptual slides as I go along. > > I have a few questions for the list: > > 1 Has someone else taught a similar course? Perhaps we can connect off list > for > quick ideas/lessons learned (I will be new to teaching with a GUI..).
Twice I had a request to teach Git using a GUI interface. None of the request was for a Software Carpentry workshop. In one of the class I use gitk [1] and git gui [2] that are the official GUI for Git and is installed with Git for Windows which we recommend (if you use Linux you need to run "apt-get install git-gui" to have it). The feedback from the lesson was very positive except for the GUI is ugly and minor GUI behaviours (you need to click on the icon and not on the name of the file). The other class I use GitHub Desktop because the learners already had download it and was strugling to use it. The learners were happy after the lesson to have more knowledge of how Git works but I many times I had to answer questions with "because this is the way GitHub want you to work" or "you can't contribute with this project because it is on GitLab, Bitbucket, ... and GitHub for Desktop only works with GitHub". If I had to teach again with a GUI I would go with gitk and git gui because learners could use it with any host and they are available on Windows, OS X and Linux. > 2 Is there interest in developing some sidecar lessons to git-novice that use > the github GUI? I believe that many instructors would like to have it but most of us would agree that provide that lesson is contradict ourselves. We normaly something like "spreadsheets are evil, you can make a lot of mistakes with spreedsheets, you need to repeat yourself when using spreedsheets, Bash/Python/R are aweseome, you can avoid mistakes when processing your data by using Bash/Python/R, you can do things faster with Bash/Python/R by not repeating yourself". > 3 Philosophically, is teaching git without the CLI antithetical to SWC's core > mission (i.e., is it doing more harm by obfuscating the mechanics of the > underlying tool)? We obfuscate the mechanics of the underlying tool when using Jyputer Notebook and RStudio as IDE and also when we use libraries that do too much for beginers that they don't need to learn the basic stuffs (e.g. how to open a file because they only need to provide the name of the file to the library). So I don't think that using CLI is antithetical for that reason but as I explained early for a full/branded Software Carpentry workshop I would only teach Git with the command line. Another reason that we teach Git with the command line is to allow learners to practice more the shell in a friendly environment (the workshop). Cheers, Raniere [1]: https://git-scm.com/docs/gitk [2]: https://git-scm.com/docs/git-gui _______________________________________________ Discuss mailing list [email protected] http://lists.software-carpentry.org/listinfo/discuss
