5 ms·
In my experience it is much more stressful and hard to learn these things for a course, because you're not interested in them but HAVE to use them in order to d
by kutkloon7 9y ago
In my experience it is much more stressful and hard to learn these things for a course, because you're not interested in them but HAVE to use them in order to do something (e.g. hand in your assignment with git).
Now I'm looking at git again in my free time it's a pretty nice tool, and I can't imagine that I loathed it so much when I had to use it for a course.
- ooqr 9y agoIt's great that this was part of an assignment. Git is a fantastic, incredible tool. Along with testing, it's one of the skills I figure is just as important as the things you learn in university, but which typically isn't taught there.
- kutkloon7 9y agoNo, everybody hated it. I didn't learn git. There was a weekly assignment, and I ended up mailing the TA every other week at the day of the deadline because I broke the repository again (thankfully, he was very understanding and helpful). Maybe this is a consequence of how the assignments were structured. I don't remember exactly, but there was no introduction and the workflow was not the typical add, commit, push one.
- erikbye 9y agoIt's incredulous how people can find git daunting; especially the simple usage most make of it. Yet, I constantly see people refer to such simple and easy to use CLI tools as an obstactle in CS courses, not a helpful tool. Welcome to the fulfilled prophecy of the movie Idiocracy. This is why MIT had to stop teaching SICP and why many courses uses Java instead of C... Good luck learning pointers and assembly then. Good luck ever knowing how to create and manipulate data structures, how to create a filesystem, database, OS, scheduler, etc; or how to develop/improve and implement algorithms used in ML and AI (to be fair, this is math... and which is why programmers need to stop avoiding math, it's another issue, but related. stop avoiding complexity, because it's a fucking big and scary monster lurking beneath everything you're working with, just waiting in the dark...) What we need is people who understand the complexity we constantly throw more shit on top of; it's only going to get worse the more data points and networking we have to deal with. Pretty soon we're going to have a massive network of autonomous vehicles on physical, country-spanning networks of roads. For this we need systems people. Not front-end developers. The sad thing is that most programmers are absolutely useless when shit hits the fan.
- kutkloon7 9y agoI'm not saying git is a useless tool. I simply think that if a course expects more than common knowledge of the tool, it should teach it too. You can't expect someone without git experience to fix broken repository. Furthermore, I think that there are too many tools programmers are expected to know, and git is one of those. Git is a nice tool, but I don't think that 'real programmers know git' is true per definition. Above all, git is a TOOL; and one could use SVN or mercurial to achieve the same in most circumstances (of course sometimes SVN is an inferior choice, because it's not distributed). I agree with the rest of the post though. There are reasons to prefer C above other programming languages. However, I think the best approach would be to learn the C-style and learn multiple similar languages, to be aware of the differences.