Hacker News new | past | comments | ask | show | jobs | submit login

"You want to use Git, you should know how to use Git"

If that's insulting, then I'm going to have to learn to live with being a cruel, mean person.

Also, it's GitHub's fault that they use an existing secure method of transferring source code instead of writing a new protocol that's easier for you to use. Because 4 step-by-step instructions are too hard to follow. OK.

I'm not even asking that you understand it, but simply be able to follow very, very simple instructions.

(It's perfectly reasonable to not like Git's toolset. There are dozens of other source control utilities out there. The only ones I know of that are more 'usable' are SVN and TFS, and the tradeoffs there are pretty stark in my humble opinion)




The insulting and derogatory remarks is stuff like:

"Also, it's GitHub's fault that they use an existing secure method of transferring source code instead of writing a new protocol that's easier for you to use. Because 4 step-by-step instructions are too hard to follow. OK."

"I'm not even asking that you understand it, but simply be able to follow very, very simple instructions."

"If you're a dev, source control is one of your tools. Learn it or find a tool that holds your hand more. I don't know how it gets more hand-holdy than step by step instructions that take 4 minutes to carry out."


It's not insulting to point out that the instructions are very simple, easy to follow, and easy to understand. Everyone here is smart enough to understand these things, and it's utterly bewildering that they angrily refuse to spend 5 minutes learning about something new in order to use something new.


Ah, but to the people who may have trouble with the instructions (for whatever reason) or using the product beyond the instructions it is quite insulting. It is a direct insult to their intelligence and/or their ability for no good reason. That attitude does nothing to help our community, especially the people who are new to all this.

Let's imagine a company creates some form of hardware widget that requires some form of setup before it can be used. Initially the setup involves four steps that the company feels is "simple". Now, let's say a number of their customers have trouble with those simple instructions for different reasons. What's the proper response from that company?

A: Maybe we should think over the instructions to identify some problem spots as to why people are having trouble? Maybe we should ask some of these people what part are they having trouble with? Maybe we should consider a more in-depth explanation to people who have never used a similar device before?

B: If people aren't smart enough to figure out our simple instructions then they're too stupid to use our product. We could just ignore them but instead we'll insult them because they just don't get it. After all, if they're in our industry then they should already know how to do this.

I'm not saying that everyone should use response A, since most likely the problem has been answered somewhere. But too many people go with response B with absolutely no benefit to anyone in any way.


People telling you to follow the instructions are not questioning your intelligence. They're telling you to you know, follow the instructions. Because they work.

If you don't want to do that, you now have the option not to.


http://help.github.com/win-set-up-git/

Please, bring me someone who actually had trouble with those instructions, and not because they freaked out at the first sign of a command line. They must have actually read them, including the expandable bits, made a serious effort to follow them, and failed.


I had a couple of breakages, because step 2 tells you to remove SSH keys if they are already present (without saying "Wait! Why do you have SSH keys? Maybe you should ask why they are there"), which broke various tools that expected the old keys to be there.

So in all the rules, the one place that isn't just "press OK, press OK, press OK", tells you to do something probably dangerous, depending on your setup.


It tells you to back them up, that makes it an inconvenience in the worst case, not dangerous.

More fundamentally, you had SSH keys and no understanding of what they were for? Sorry, but this is exactly what I'm talking about. You are choosing to use systems you have no understanding of, and taking no time at all to learn about them. You are dangerous.


I guess the problem some people don't want to realize is that you actually create that situation with this "Why can't you just follow this simple list" attitude.

I agree that everyone should be able to follow that list. And now you have someone with ssh keys and no idea what they are. I think it's dangerous to mock people that are scared of these things (defined as opaque instructions that install various products and ask you to copy paste commands in a terminal) and afterwards mocking people that potentially DID follow that list, succeeded and now use a system they have no understanding of.

I love git. Git on Windows feels out of place for every Windows only guy I showed it to. Why is that something to argue about - and why does it lead to borderline insulting comments? It's interface is.. different and UIs are bolted on only and it packs a lot of mental dependencies (learn about ssh, different newlines) that aren't really related to your ability to write (Windows) code.

That Github link is perfectly correct and still full of WTF material for people that never left Visual Studio. I work with those, and I have a couple dozen anecdotal evidences available..


First of all, I should have clarifed that "I had a couple of issues" means I had to fix some broken computers where that had happened.

Secondly, you just said you wanted "A single person actually who had trouble with these rules". I presented you with such a person (indirectly).

While it isn't dangerous, it was annoying, because it took some time to figure out why various tools where no longer working correctly.

To be honest, you seem to be getting surprisingly angry that there at people who might want to use this shiny thing called github, on which many projects they use might reside, without fulling understanding every detail of git, ssh, etc.

I know some mathematicans who can write amazing algorithms, who I would want involved in projects I work on. However, they use windows and don't really care about the finer workings of unix. Personally, I think it's good if such people has the easiest access possible to making a quick push request, on their own machine in their comfort zone.


I'm angry at willful ignorance and attempts to justify it.

I truly, TRULY have no problem with making key generation push-button. I really don't. I have a very BIG problem with people who don't understand it pushing that button.

But you're right, I give up. All I can do is ensure that these people who demand of themselves nothing but the most disgusting of human characteristics -- willful ignorance -- do not come anywhere near my systems or projects.


First of all, thanks for answering my question so clearly. However, I feel the need to make a reply, despite the fact I think we have reached an impasse (not saying that is your fault, just a difference of opinion). I just feel you are really expressing yourself in an insulting way (you consider it a most disgusting of human characteristics that someone might just not care to learn about how ssh keys are generated)?

It's isn't "wilful ignorance" to not try and learn everything, ever, about everything. Particularly things which you don't want to learn, and probably aren't going to help you. We all specialise to one degree or another. I work with mathematicians who have spent years learning and refining their craft, who certainly know more maths than I could ever learn. I accept that there are things they know, and things I know. I want them to continue doing amazing maths, so I don't want to pile on them a bunch of things they don't want to learn. Despite the fact I did a maths degree, I know there are things they commonly discuss I don't really understand, which would be their equivalent of ssh keys. Things everyone knows. I've learnt some of them for work. I've learnt some of them for fun. But I don't have the time to learn all of them, and that's fine.

Now, these people do still learn. They learn about all kinds of fields, and all kinds of areas. They learnt CVS, but they didn't enjoy it.

Also, I find it very productive, and fun, to work with people whose skill sets are almost entirely disjoint from mine. It does make working together a bit tricky, but some of my most productive times have risen from such situations.


In most cases you are probably correct, I'm not really commenting on those particular instructions. I'm just making an observation about the responses based on comments people give about problems they are having.

I've read through the instructions and they do seem straight-forward enough. In fact, they are actually quite nice. But that still does not mean that some people will not have problems along the way. Not that I have any evidence to back this up but I can think of a few possibilities of why people may have problems:

1: The installer keeps failing for some unexplainable reason. Maybe they don't have the user rights, maybe the IT department is blocking it, whatever other possible install problems. You can't assume that everyone will understand why the installer is having issues on their particular computer as compared to another. We're already seeing reports like this for the new installer just released, I guess those people can't follow the simplest instructions of double-clicking an exe installer correctly. Right?

2: When they get to the line ending conversions part; what if they don't understand the options and abandon the process? Remember, some of these people are new to Git and without some hand-holding they may feel lost. In the screenshot I see there's no recommended option. So it's up to the user to pick the one they need without knowing what they need. Unless there's someone to point it out. And considering some people's attitudes about noobs doing the "wrong" thing then options like that are rather important to consider properly. Do you want to bet whether someone has complained about someone else picking the Windows-style checkout?

3: Even though the instructions are nicely laid out, not everyone is accustomed to the command line. I bet there's a huge number of Windows users who have never used the command line. Even with simple instructions there's the possibility for mistakes. There's even an extra section just for SSH that clearly shows that some people have issues with that part, even Github is trying to address it right there. But they can't possibly cover every conceivable issue.

Notice that most of my examples have nothing to do with the instructions themselves, but unforeseen problems that we have to deal with simply because so many people have different computers with different configurations with different networks with different IT departments with their different mandates. The attitude that it's simple for me therefore it must be simple for you is a bad one. The new installer worked for me on the first try, I don't dismiss the ones that did have a problem for some reason.

But to further prove my point about my two responses from before, Github decided to go with response A. How do we know? The release of the even simpler all-in-one application that started this whole conversation. Even with the "simple" instructions that have been pointed out, Github decided to listen about problems with the process and have responded with an even easier method to accomplish the same task. Even go above and beyond.

That is the mark of a good software developer/company/project. These are people trying to be inclusive, not exclusive.

Sadly, too many people in this thread decided to go with response B. Thankfully, Github disagrees with that attitude.


> The installer keeps failing for some unexplainable reason.

Not a problem following the instructions -- such a failure is clearly outside their scope.

You also conveniently ignore the reality that if they don't have permissions to install it... They're not supposed to be installing it in the first place. Report them to their corporate IT department, you'll be doing everyone a favor.

> When they get to the line ending conversions part; what if they don't understand the options and abandon the process?

Purely hypothetical. But if they give up that easily, yes, I consider it PEBKAC. People must take responsibility for their own ignorance and laziness.

> Even though the instructions are nicely laid out, not everyone is accustomed to the command line.

It. Is. Text. Read it. We read every day, we type every day. This is not difficult. Fear of the command line is irrational, which is exactly why I excluded it.


Oh I agree, I'm just providing examples. As I stated, the instructions are quite nice and easy to follow. I'm just pointing out possible problems people may have during the install process when so many people seem to be saying surely no problems exist because it is so simple.

I tried to make it quite clear that it was all hypothetical and outside the scope of the instructions, maybe I failed. But they are indeed possible problems that people can have during the install process. Whether the people are correctly identifying their problems is a different discussion. You are making my point for me, it is simple for you therefore it should be simple for everyone else. I'm just saying that it is quite possibly not so simple for other people, for various reasons. Nothing more.


Here you ask for five minutes of learning, later in this thread you seem to (correct me) expect people to get a good grasp on ssh and key management to avoid being 'dangerous'.

Is both correct? Or would you agree that 5min to learn how ssh works, even for a broad overview, is not exactly helping / changing anything.


Two different issues got mixed together here, and I wasn't good at distinguishing them in my comments.

It should take five minutes for them to learn the basics of public key crypto so that their eyes don't glaze over when you say "public key", "private key", "fingerprint", or "RSA". I consider this basic knowledge absolutely essential for anyone using these concepts, even indirectly. Without it, you're dangerous.

Once those concepts are in place, it shouldn't even take five minutes for them to understand what SSH is doing, because SSH is a very simple and obvious application of the concepts. It should be self-evident from the brief discussions in github's instructions what is going on.

And once you've taken the five minutes to understand the concepts, not being dangerous is likewise simple and obvious:

* Put a good passphrase on your key.

* Don't share your key with others.

* Don't type in the passphrase for your key on any computer you don't trust at least as much as your own.

Notice how these aren't fundamentally different from protecting a password.

We are talking about inherently intelligent people with a good capacity for learning. It is mind-boggling to me that anyone would argue that these people should not have to spend five minutes to understand at even the most basic, limited level, how critical tools they want to use work.


Some people don't want to think about anything except their one thing.

They really resent having to learn about other things.

I don't get it. But that's probably why I am employed as a tools engineer... because I like learning.




Join us for AI Startup School this June 16-17 in San Francisco!

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: