Live data from Hacker News

The number of CS grads who don't even know basic Git commands is astounding

twitter.com

101–110 of 126 posts

Re: The number of CS grads who don't even know basic Git commands is astounding

#101

"its so easy to use!" tho, right? Why should one need formal education to pick it up? Git is like Autoconf for a lot of problems: utterly unnecessary but often included by default because people have been told "best practice" and never thought to ask themselves if that was true in their case.

> utterly unnecessary

Is your alternative another versioning software or just a massive pile of folders?

Re: The number of CS grads who don't even know basic Git commands is astounding

#102

CS degrees aren’t meant to teach any particular skill. They should be teaching general knowledge that helps you adapt to whatever the FOTM is in industry. Realistically you can learn to use git in less than one day. It just shouldn’t be a significant barrier to hiring someone. None of the specific languages or software I learned during my degree do I even use now in my current role.

That's a very weird take. Suerely you would expect some skills from a CS graduate?

Re: The number of CS grads who don't even know basic Git commands is astounding

#103

I've worked with hundreds of CS grads, the worst programmer I ever came across (as far as readibility of his code) had a master's degree in CS from stanford.

Similar experience here, too. Virtually every time I have worked with, trained, or reported to someone with a CS degree from Stanford or Harvard, they have approached their work with a narrow mind and little empathy for others. This has been true in the military, public sector, and the private sector. I don’t know what it is about these places. I read something a while back that did color my understanding of folks so…

Some people have been told "you are better than anyone else" for their whole life. So that's their base line. Guess what

Re: The number of CS grads who don't even know basic Git commands is astounding

#104
i feel like this is being blown way out of proportion. learning git is never the bottleneck to becoming a software engineer, and it doesn't take longer than an hour to grasp the basics.

CS majors should learn it just by messing around with projects, but I don't see why an otherwise great candidate couldn't learn it very quickly

Re: The number of CS grads who don't even know basic Git commands is astounding

#105

i feel like this is being blown way out of proportion. learning git is never the bottleneck to becoming a software engineer, and it doesn't take longer than an hour to grasp the basics. CS majors should learn it just by messing around with projects, but I don't see why an otherwise great candidate couldn't learn it very quickly

This is the nuance that people aren't able to understand anymore - something happened when the Internet came out, and we've never been the same.

The OP was just surprised that people don't know git, and indicated that he wouldn't hire a junior engineer who didn't know git, but, there's very likely nuance to this, and I don't think that one person's personal preference necessarily needs to be discussed and debated extensively on Twitter, HackerNews, etc.

In my opinion, git is a very popular tool, and lots, and lots of people use it - and it only takes 15-30 minutes to learn the basics - for this reason, I think that it is fair to be surprised that someone doesn't know it.

Re: The number of CS grads who don't even know basic Git commands is astounding

#106
post #100

Earlier quoted context omitted.

You can't be serious. This is a bad joke. Are you trying to defend a software engineer who is bad at writing readable code by... bringing Knuth to the table? The same Knuth who published "Literate Programming"? "Instead of imagining that our main task is to instruct a computer what to do, let us concentrate rather on explaining to human beings what we want a computer to do"?

I have worked with people that have a command of a given programming language, and algorithms such that it appears to be magic to me. (C++ is common for this problem). The readability problems may be the reader.

So we share personal experiences now; okay, let me share mine.

Once, one of my teammates committed an extremely complex piece of code that I wasn't able to understand. As I expected, we soon started to start bug reports. Finally, the original author couldn't fix it properly, so I threw away the code and rewrote it from scratch. I made it simple, readable, and, what's more important - debuggable. And it was correct.

So what? Your personal experience says that you are not the smartest person in the world, and my personal experience says that magic is magic — it doesn't work properly in the real world.

It's easy to build "magic" code that's hard to understand. You can just run any readable piece of code through an obfuscator. Still, no one believes that an obfuscator is genius. If you see "magic" code that, for some reason, truly works, it means that the author did a ton of research and forgot to put that into comments — i.e., obfuscated a code. If, even with comments, it still looks like magic, then the author avoided doing a self-review & simplification of the code. And well, sometimes, even after that, code can still be magic... if we have chosen the wrong tool for doing the job (does it sound like a depiction of genius?).

Re: The number of CS grads who don't even know basic Git commands is astounding

#107

"its so easy to use!" tho, right? Why should one need formal education to pick it up? Git is like Autoconf for a lot of problems: utterly unnecessary but often included by default because people have been told "best practice" and never thought to ask themselves if that was true in their case.

> utterly unnecessary Is your alternative another versioning software or just a massive pile of folders?

archived releases, so "folders" i guess

i dont really ever have a need to go back over the previous versions tho. don't revisit old mistakes, make fresh new ones!

Re: The number of CS grads who don't even know basic Git commands is astounding

#108

i feel like this is being blown way out of proportion. learning git is never the bottleneck to becoming a software engineer, and it doesn't take longer than an hour to grasp the basics. CS majors should learn it just by messing around with projects, but I don't see why an otherwise great candidate couldn't learn it very quickly

Can a candidate be great if they haven't messed around with projects in a group setting?

Re: The number of CS grads who don't even know basic Git commands is astounding

#109
On the other side of the spectrum, the standard entry point to a CS degree here in Finland is taking https://programming-23.mooc.fi/ , which IIRC is entirely based around automated tests which run on your Git repo. A commit is an assignment turn-in, and you get a generous number of tries each time to get it right. But you're not getting around at least learning add, commit, and push. And yes, you do get course credit for this, although it is not 100% remote (you need to take your exams on-campus, though it can actually be any university here).

I love it here.

Re: The number of CS grads who don't even know basic Git commands is astounding

#110

Earlier quoted context omitted.

In my uni, "Software Engineering" was the one class of the CS program that had nothing to do with programming. It was about UML, SOLID, DRY, KISS, agile, scrum and more. Useless class that was mostly a waste of time. On the other hand, we had classes like Operating Systems, Computer Networks and more where we had to write things in C and assembly.

It teaches you how to build practically functional and maintainable software instead of the prototypes that are enough to pass other classes. It's one step beyond just programming.

There is some truth in that but mostly I would disagree. A lot of what I mentioned are ideas/concepts that usually came from one or more "guru-types". They may have been programmers, managers, or other.

They're not necessarily wrong but the issue I have is that, in science what should be taught is to question everything and see if it's actually correct and verifiably so. With a lot of these concepts this is seemingly never done. It also comes from a specific period where everything happens to be quite tightly bound to Java (UML, Clean Code etc. especially). That doesn't mean that I can't learn something from it. But it is almost a little hypocritical when you are taught the importance of abstracting and generalizing but then the tools given themselves are not even general enough to apply to anything besides enterprise Java.

Post reply on HN