There's something missing from this: SoSerious made ad hominem attacks on DCurtis because that was the point - he was pointing out DCurtis' lack of tact and how his presumptuous tone in the end helped nobody (and got someone fired). The point to be made was to question DCurtis' character, ad hominem attacks are entirely expected.
What most people have against ad hominem attacks is where the character of the speaker is called into question in order to discredit a point that has no relation to it. I don't think I'm the only one who opposes this.
Some people need to have their character and human flaws called out - but not when it has no relations to the argument being made.
Attacking someone's character are NOT ad hominem. Ad hominem is when you attack an argument BY attacking the person who made it, eg His argument is wrong because he is a conservative (which I see on HN fairly often).
There is a world of difference between the ad hominem fallacy and an insult. The ad hominem fallacy is bad reasoning. But insults are the spice of life and cathartic for the soul.
Lady Nancy Astor: If I were your wife I would put poison in your coffee!
Winston Churchill: And if I were your husband I would drink it!
HN has civility standards in part to limit the attention advantage that can come from inflammatory rhetoric. Scientific Journals operate the same way, and for the same reason. If you even out the language, the arguments have to speak for themselves.
Ad hominem argumentation can draw attention, sure. If that, or entertaining your readers with drama, is the goal, it works -- and that's why it's so often used.
But if your goal is discovering the truth through iterative discussion, or achieving mutual respect, ad hominem is poison.
And this is the crux of it right here. The author is confusing the two goals of making a point, and having that point heard. Surely there are better ways to market yourself than by spewing ad hominems, which just go to diminish your supposedly more important goal of actually making a solid point.
I think he was misled by the fact that the essay was reposted to HN a day or two ago. Or, maybe he simply takes a longer view than the average internet poo slinger :-).
Not only does he get this wrong, but in general he seemed to not understand what Ad Hominem is.
He mentions several examples of mean people getting hits and nice people (presumably the author is nice? I will be charitable) being overlooked. He mentions Zero Punctuation, which is a deliberately aggressive but generally insightful video game reviewer.
In other words, he lauds forceful language and linkbaiting but doesn't actually give any examples of people engaging in Ad Hominem. The article is, at the very least, poorly researched.
> Not only does he get this wrong, but in general he seemed to not understand what Ad Hominem is.
For instance:
> He mentions Zero Punctuation, which is a deliberately aggressive but generally insightful video game reviewer.
The ZP reviewer fellow, very entertaining, mentions the flaws of something - bad pace, unoriginal story, repetitive gameplay - but that's NOT ad hominem.
Saying, "The New Mario Brothers isn't very innovative" isn't ad hominem. Saying, "The New Mario Brothers is a boring suckfest" also isn't ad hominem. Ad hominem is, "Mario Brothers? Why even bother playing it? Nintendo couldn't make a good game to save their life."
I think the author is saying that you can disagree, but he doesn't exactly know what ad hominem is. Ad hominem would be saying, "Look, he's a Christian. No way his chemistry research could be any good." --> Attacks the person, not their argument/viewpoint/science/work. Sometimes it's valid, but very rarely, and most of the time you'd be better off just refuting their points instead of slinging mud at them as a person.
Exactly, there's another form of it also that I find equally off putting, .eg. "well every boolean algebra must be isomorphic to a field of sets because Marshall Stone thinks so.....". In this case it's true but the argument is hardly convincing.
I am telling you this not because I want you to feel sorry for me, but because I want you to understand the danger of writing a well reasoned, logical argument. If you aren't willing to insult and cheat, nobody will ever read what you have to say.
Okay, let's not confuse a bunch of topics.
Topic 1: Rants sell -- just take a look at cable news. People like to watch other people get angry. It's easier than having actual feelings yourself, and there's always the angry-mob "hell yeah!" post you can make at the end.
Topic 2: Insults are spicy. I've found when dealing with the HN news crowd over the years to say "bullshit" instead of "crap" and "hell" instead of "heck". As a former marine, I can curse the chrome off a trailer hitch but learned in my 30s to tone down my language. But, base words sell more than safer words. People love to hear me call you an asshole, even if they like you! But if I respect who you are and ask for clarification of your point? Not so amusing. Better to watch fireworks than not.
Topic 3: If I insult you enough, I don't have to listen to your argument. This is where we cross the line from "how to write for the mob" to "how to shut down reasonable debate". The problem here is that you have entertained us so much we are starting to miss valuable content. For examples of this also see cable news, and some talk radio. This is the Ad Hominem, not the insult. The Ad Hominem is when I am using insult as a tool to prevent you from being heard.
Topic 4: Sometimes it's the people you hate the most that have the most to add to a discussion. This is where you really start screwing over the rest of us. You've done a great job of writing a spicy, insult-laden rant. We're all smiling and nodding with vacant stares as we drool over the keyboard awaiting our Pavlovian response queue. Have we learned anything? Hell no! Have we considered any new points of view? Hell no! Have we done much of all except waste our time? Hell no!
Good writers present both sides of the discussion as fairly as they can and then proceed to make a case. They have a thesis and work towards proving it. And guess what? That's not easy to do in a way that people like. It takes thought, a good vocabulary, a perspicacious terseness.
I read your whole article and it sounded to me like this "I can't write very well, I'm not patient enough to build up a following, I'm frustrated at the capricious nature of HN, and I can't help but notice how much people like to read other people writing smack"
Sure! We can all just fling poo.
But count me out on the poo flinging, at least until I join the rest of the primates at the zoo.
The article was suggesting ranting was very pleasant to read- and it is very helpful when correct. The point he made about the game review was that he rants, and he is 100% correct.
"No better way to get your point across than to say it and call the person a dumb shit at the same time!" (Although you look ridiculous if you are incorrect, +irony of being the dumb shit)
The problem is not that you look ridiculous - but that nobody would notice that you are incorrect. If someone is always 100% correct that this is a moot point - but I don't think this is a reasonable assumption.
Is anyone else depressed that this article is currently #3 on the front page, and yet his "good idea" (which I think is misguided, but at least is thought-provoking) got zero views? It's like the HN community has collectively proved his point.
Anyway, I'm going to respond to the technical article and not the meta-discussion (I guess these paragraphs would be meta-meta discussion then ;-)):
Lots of programming languages have run up against the problem of combining interfaces, with various solutions. In type theory, this is called "structural subtyping": inferring the type of an object from the methods it must support. Ocaml's object system supports it directly. C++ supports it through "concepts" and "models", which are the foundation of the STL. Python, Ruby, and JavaScript call it "duck typing". Go has it built into its interfaces. Dylan added explicit union and intersection types to the language.
I don't really like the proposed syntax, because it requires that you name all of your concepts. Also, the verbose intersection type-name needs to be carried down to all callers of foo() - so if you had a method bar() that called foo(), it would also need its parameter declared as ReversibleIterator & RemovableIterator. And if you had a method baz() that might call foo() or might do something with a RandomAccessIterator, its type signature would have to be RandomAccessIterator | ReversibleIterator & RemovableIterator. You can see where this is going.
I'd much rather stick to simple structural subtyping, where you can specify (ideally, it'd be compiler-inferred) that iterator must support the previous() and remove() methods, and any type that provides those may be passed in.
As someone who is still relatively new here and doesn't recognize all the handles, the article sounds like insider gossip that only other insiders might care about, or can even follow. Kind of like the HN version of a rag that gives you the run down on who wore what, said what, and whom they showed up with at the latest gala Hollywood event.
- Dustin Curtis, a freelance (?) designer, posted a spec redesign of the American Airlines main page, along with a scathing blog post about how bad the existing site is, accusing AA's online team of gross incompetence, and calling for their mass firing. HN reacts overall negatively to what is perceived as a presumptuous attitude, along with several potentially major shortcomings in his own redesign.
- A member of AA's online team contacted Dustin directly to defend himself and his team - and offer insight as to why things are the way they are. This individual permitted Dustin to post his response, which he did. This resulted in the individual's firing from AA.
- A few equally scathing blog posts were written about Mr. Curtis' professionalism in this matter - IIRC mostly concentrating on the combative, aggressive tone of the original post, the lack of understanding of enterprise-level web design, and his cavalier attitude when it came to the responses to his original post. These, in turn, generate more controversy.
Stuff like that has a tendency to become a persistent fly in the ointment of a forum. Attacks and criticisms beget more attacks and criticisms. Often, later attacks are done with some intention of stopping the cycle. But fighting against the fighting is still fighting.
It was used to undermine a person's character so the audience was less likely to take what they say seriously (the same technique is used in courts when dodgy witnesses are presented, it's also used everywhere in political/religious arguments, even by the supposed "rationalist" crowd).
Something I hate about the internet is how amateurs "rediscover the wheel" in article after article. This is the difference between professional writers and amateurs. Pros at least sometimes do their research.
I don't think the author uses ad hominem in the traditional sense: http://en.wikipedia.org/wiki/Ad_hominem . Most probably the author really meant 'insulting' but used 'ad hominem' because it sounds more sophisticated, but there is no equality between those two.
To be accurate, one of the articles was yet another boring article about java types and stuff like that (personally I've never used or understood why I should use java)
and the other article is about a topic that is cross-server-side platform (java, ruby, python, php, etc...) and a much more interesting article.
38 comments
[ 2.5 ms ] story [ 93.2 ms ] threadWhat most people have against ad hominem attacks is where the character of the speaker is called into question in order to discredit a point that has no relation to it. I don't think I'm the only one who opposes this.
Some people need to have their character and human flaws called out - but not when it has no relations to the argument being made.
Lady Nancy Astor: If I were your wife I would put poison in your coffee!
Winston Churchill: And if I were your husband I would drink it!
Mr. Attlee is a very modest man. Indeed he has a lot to be modest about.
But if your goal is discovering the truth through iterative discussion, or achieving mutual respect, ad hominem is poison.
it's like saying: i tried to get a job, but the best i could do was mcdonald's. forget that, from now on i'm going to steal.
Shouldn't it be: "In 2008 Paul Graham wrote an article about the merits of logical argument."
He mentions several examples of mean people getting hits and nice people (presumably the author is nice? I will be charitable) being overlooked. He mentions Zero Punctuation, which is a deliberately aggressive but generally insightful video game reviewer.
In other words, he lauds forceful language and linkbaiting but doesn't actually give any examples of people engaging in Ad Hominem. The article is, at the very least, poorly researched.
> Not only does he get this wrong, but in general he seemed to not understand what Ad Hominem is.
For instance:
> He mentions Zero Punctuation, which is a deliberately aggressive but generally insightful video game reviewer.
The ZP reviewer fellow, very entertaining, mentions the flaws of something - bad pace, unoriginal story, repetitive gameplay - but that's NOT ad hominem.
Saying, "The New Mario Brothers isn't very innovative" isn't ad hominem. Saying, "The New Mario Brothers is a boring suckfest" also isn't ad hominem. Ad hominem is, "Mario Brothers? Why even bother playing it? Nintendo couldn't make a good game to save their life."
I think the author is saying that you can disagree, but he doesn't exactly know what ad hominem is. Ad hominem would be saying, "Look, he's a Christian. No way his chemistry research could be any good." --> Attacks the person, not their argument/viewpoint/science/work. Sometimes it's valid, but very rarely, and most of the time you'd be better off just refuting their points instead of slinging mud at them as a person.
I am telling you this not because I want you to feel sorry for me, but because I want you to understand the danger of writing a well reasoned, logical argument. If you aren't willing to insult and cheat, nobody will ever read what you have to say.
Okay, let's not confuse a bunch of topics.
Topic 1: Rants sell -- just take a look at cable news. People like to watch other people get angry. It's easier than having actual feelings yourself, and there's always the angry-mob "hell yeah!" post you can make at the end.
Topic 2: Insults are spicy. I've found when dealing with the HN news crowd over the years to say "bullshit" instead of "crap" and "hell" instead of "heck". As a former marine, I can curse the chrome off a trailer hitch but learned in my 30s to tone down my language. But, base words sell more than safer words. People love to hear me call you an asshole, even if they like you! But if I respect who you are and ask for clarification of your point? Not so amusing. Better to watch fireworks than not.
Topic 3: If I insult you enough, I don't have to listen to your argument. This is where we cross the line from "how to write for the mob" to "how to shut down reasonable debate". The problem here is that you have entertained us so much we are starting to miss valuable content. For examples of this also see cable news, and some talk radio. This is the Ad Hominem, not the insult. The Ad Hominem is when I am using insult as a tool to prevent you from being heard.
Topic 4: Sometimes it's the people you hate the most that have the most to add to a discussion. This is where you really start screwing over the rest of us. You've done a great job of writing a spicy, insult-laden rant. We're all smiling and nodding with vacant stares as we drool over the keyboard awaiting our Pavlovian response queue. Have we learned anything? Hell no! Have we considered any new points of view? Hell no! Have we done much of all except waste our time? Hell no!
Good writers present both sides of the discussion as fairly as they can and then proceed to make a case. They have a thesis and work towards proving it. And guess what? That's not easy to do in a way that people like. It takes thought, a good vocabulary, a perspicacious terseness.
I read your whole article and it sounded to me like this "I can't write very well, I'm not patient enough to build up a following, I'm frustrated at the capricious nature of HN, and I can't help but notice how much people like to read other people writing smack"
Sure! We can all just fling poo.
But count me out on the poo flinging, at least until I join the rest of the primates at the zoo.
"No better way to get your point across than to say it and call the person a dumb shit at the same time!" (Although you look ridiculous if you are incorrect, +irony of being the dumb shit)
Anyway, I'm going to respond to the technical article and not the meta-discussion (I guess these paragraphs would be meta-meta discussion then ;-)):
Lots of programming languages have run up against the problem of combining interfaces, with various solutions. In type theory, this is called "structural subtyping": inferring the type of an object from the methods it must support. Ocaml's object system supports it directly. C++ supports it through "concepts" and "models", which are the foundation of the STL. Python, Ruby, and JavaScript call it "duck typing". Go has it built into its interfaces. Dylan added explicit union and intersection types to the language.
I don't really like the proposed syntax, because it requires that you name all of your concepts. Also, the verbose intersection type-name needs to be carried down to all callers of foo() - so if you had a method bar() that called foo(), it would also need its parameter declared as ReversibleIterator & RemovableIterator. And if you had a method baz() that might call foo() or might do something with a RandomAccessIterator, its type signature would have to be RandomAccessIterator | ReversibleIterator & RemovableIterator. You can see where this is going.
I'd much rather stick to simple structural subtyping, where you can specify (ideally, it'd be compiler-inferred) that iterator must support the previous() and remove() methods, and any type that provides those may be passed in.
- Dustin Curtis, a freelance (?) designer, posted a spec redesign of the American Airlines main page, along with a scathing blog post about how bad the existing site is, accusing AA's online team of gross incompetence, and calling for their mass firing. HN reacts overall negatively to what is perceived as a presumptuous attitude, along with several potentially major shortcomings in his own redesign.
- A member of AA's online team contacted Dustin directly to defend himself and his team - and offer insight as to why things are the way they are. This individual permitted Dustin to post his response, which he did. This resulted in the individual's firing from AA.
- A few equally scathing blog posts were written about Mr. Curtis' professionalism in this matter - IIRC mostly concentrating on the combative, aggressive tone of the original post, the lack of understanding of enterprise-level web design, and his cavalier attitude when it came to the responses to his original post. These, in turn, generate more controversy.
Thanks for the run down.
The members whose contributions I most enjoy have been voting with their feet.
http://en.wikipedia.org/wiki/Ethos#Rhetoric
It was used to undermine a person's character so the audience was less likely to take what they say seriously (the same technique is used in courts when dodgy witnesses are presented, it's also used everywhere in political/religious arguments, even by the supposed "rationalist" crowd).
Something I hate about the internet is how amateurs "rediscover the wheel" in article after article. This is the difference between professional writers and amateurs. Pros at least sometimes do their research.
and the other article is about a topic that is cross-server-side platform (java, ruby, python, php, etc...) and a much more interesting article.
From his link: Joshua Blankenship is a designer living in Anderson, SC.