Hacker News new | ask | show | jobs
by dozzie 3996 days ago
I guess that they are simply not accustomed to work in command line, given that Windows gives terrible terminal and shell. I would rather expose them to Linux (or maybe BSD), possibly through providing them shell accounts on some server and requiring code to be built primarly there. Then it should not be too difficult to jump from working with files in command line to working with version control in the same command line.
3 comments

>given that Windows gives terrible terminal and shell

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.

> Though the command set is a little verbose I think powershell is pretty nice.

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.

The commands themselves are verbose but I've never had a problem with completion. Can you highlight some problems you had?
You are definitely right that they are not comfortable in the command line. They do get exposed to it quite a bit in the curriculum, but not prior to the Java class. I have been using Vagrant in the senior class, and quite a few of the students end up installing Linux for RoR dev. It might be too much for the sophomores however.
Or it may not be too much. My whole university year was required to use some unix variant starting with the first semester, where we learned C (so add memory management and pointers arithmetic to things to learn, and I didn't even start with mathematics we were taught at the same time; computer usage was not the only totally new subject for us).

Of 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.

If using the commandline is the main problem, why not use a git GUI interface? (Would Github's be of any use?)

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).

Some did use SourceTree, although I emphasized the command line more. Perhaps I should move toward having them use the GUI versions.