Ask HN: Git or Mercurial for beginning students?
I regularly teach Git to students at the senior level that are building RoR applications. Even though we only cover the basics, they seem to struggle quite a bit with both the concepts and the mechanics. They are on Windows for the most part, and are required to push their code to Bitbucket. The seniors have suggested that I introduce the topic much earlier in the curriculum in a sophomore level Java class. The students in that class have had one prior programming class, but generally are still struggling with the basics. I've been thinking about using Mercurial at the sophomore level instead of Git to see if that eases the introduction to the concepts. Any thoughts one way or the other?
14 comments
[ 2.9 ms ] story [ 41.4 ms ] threadOf course I agree that it's not an insignificant load. Learning how to write programs at all is difficult enough, and what I propose is just adding learning new environment on top of it. On the other hand, a shell server with compilers and editors already installed may be a good start. This way students get stable environment which already works, so they can focus on learning how to use it instead of struggling with administering it.
I'm not saying learning the commandline is not important, but that would split the learning load so they only have to learn one new concept at a time (only cmd or vcs instead of both together).
Though the command set is a little verbose I think powershell is pretty nice. If you get posh-git(https://github.com/dahlbyk/posh-git) and use powershell it makes the git experience on windows quite pleasurable.
Last time I checked, PowerShell made more or less sensible programming language, but was awful in term of command completion. If that hasn't changed, it is still a terrible shell.
Also, the basics of version control should be taught in the very first programming class. You can then expand on the basics in further courses.
http://tortoisehg.bitbucket.org/