I'm reminded of something a wise man once told me (HNified a bit):
In every pairwise conversation there are 6 people:
3. Who Alice thinks she is.
4. Who Bob thinks he is.
5. Who Bob thinks Alice is
6. Who Alice things Bob is.
Perception plays an absurdly large part in communication, as do nonverbal cues. Frequently we adjust our message based on feedback we get from the listener. Those lacking "social graces" or communicating in just text on the internet don't get these cues, so the message comes out "harsher".
Complicating this, there is a lot of baggage each person attaches to words, phrases and general styles of questioning/commenting. So one person's harsh may be another's "in to it".
One example of all this I have experienced:
One time at a vendor show, me and some colleagues were in a small demo, presented by a sales guy and a few engineers from the company. During the Q&A, I started questioning the engineer pretty intensely with questions like:
Does it do $X? Why not? Do you plan on adding it?
(These are actually pretty neutral questions)
Then about another aspect I was really into some possibilities of:
Can I use it for $Y? Can I make $Y happen by this? What happens if I do $Z? How about if I work around that limitation like this and get $Y + $Z effectively?
(these are not neutral questions, they are me geeking out)
So after the demo some people thought I broke the engineer and ripped him a new one with the second set of questions, because I was rapid fire asking questions towards a goal. One engineer thought it was a fun "play with an idea time". The other engineer thought I was severely criticizing his work.
The sales guy and several of the audience members thought I was being unduly harsh by asking about the feature $X. Apparently this was a contentious issue that I knew nothing about. The engineers and others thought nothing of those questions.
Similarly: I frequently get frustrated when people wrap up valid criticism in fake nice BS. I don't want to hear "great thing, what if instead you did this". I really would rather just hear "What about this other method? Why not use that?" or even "Dude, 10s of googling would have shown you the flaws in that". Because an honest self assessment includes the fact that I don't know everything, and that many (most) of the things I come up with have also been thought of by other people, who may have found flaws in that reasoning.
I guess my point is there is a lot more than just "nerds are mean to each other" going on.
I don't believe the number of perceptions can be enumerated that simply. "Who Alice thinks Bob thinks he is" and "Who Alice thinks Bob thinks she is" plays a role, and then the rabbit hole just gets deeper.
It's true. I don't know how many times I've watched eager hackers get lambasted for "reinventing the wheel," or "don't bother doing it yourself, you'll just screw it up -- someone has probably done it already and did it better than you could." This happens most often at the intersection of technology and entrepreneurship.
The business advice is that it's cheaper to buy it than build it.
The engineer's perspective is that a square peg isn't going to fit in every hole.
"Geeks," are harsh. I mean that in the very broad, general, and discriminatory sense. We have to work with bad code all day written by bad programmers. Some of us make a career out of saving businesses from bad technology decisions and poorly written programs (it is NOT good work, btw. Just pays well). So when yet another new-comer comes on board with bright, eager enthusiasm to revolutionize the Internet (yet again) we do tend to be rather cynical.
I agree w/ the poster that the cynicism is a bad thing. We could be more constructive. Don't stop them from writing their own web server... show them where to look up the RFCs, reference implementations, etc. Encourage them to learn. We could all benefit from having more knowledgeable people around.
A hacker writing a quickie web server for the experience of doing so is laudable. This applies to lots of types of projects: toy OSes, social networking protocols, web frameworks, what have you. Exploration is fun, and key to the hacker spirit.
The difficulty comes from knowing the limitations of your skills. I got my web programming chops by reading a bunch of PHP tutorials back in 1998 and throwing together some dummy pages that could read/write to a mysql database. Not long after I built a website for a good friend's business that was riddled with SQL injection and XSS holes. Luckily, we never got exploited, and years later on a rainy Sunday night I revisited the code and patched it up. Had we been hit, I don't know how badly that would have affected the company.
The same goes for home-grown crypto: sure, you might be able to apply a function you wrote and get something that looks like cyphertext, and maybe it's a fun project to learn about crypto. But when you don't know any better, you think you've done it right and you might unintentionally swindle some folks into paying for completely insecure crypto.
Learning someething, and selling (for money, or otherwise) the not-acceptable-for-use side effect of your learning something as a 'finished' product can be dangerous to the end customer.
Not being able to skateboard well means you're going to fall and bust your knees or elbows or face. It's dangerous to you, and potentially comedic to your compatriots.
Publishing a website full of XSS/SQLI problems and storing passwords and credit card numbers in plain text is dangerous to every person using your site, the business it's backing, and countless others in a 'could cost them real money and personal harm' fashion. It's also hilarious to some people (see HBGary / Valve / etc. hacks).
Compare software engineering to physical engineering - you don't let the kid out of highschool who's good with Lego Kinnects build a bridge or skyscraper. He goes through years of formal training, and then years more of on the job training, working his way up from Bus Stop Shelters to Sheds to Houses, etc. before he gets to that point.
THAT is the reason I'm highly critical of the efforts of people I know (or don't know in some instances). This shit ACTUALLY MATTERS beyond 'hey isn't that neat?'.
If you're doing some project on your laptop to learn a technology - Awesome, can I help you with questions/guidance?
If you've published something or sold something as a product and it's full of issues that could be serious problems to people down the line, What the fuck is your problem?
Unlike real engineers, who have a formal body of governance and redress for customers of shitty engineers, software engineering is the wild wild west. Many people just blame the computer, without realizing there was a person unqualified for the job sitting behind the computer making it work improperly. Until that changes (if ever), then I think it's the DUTY of geeks and nerds to challenge each other as harshly as possible, in an effort to prevent certain disaster.
This is exactly the kind of thing I'm talking about though.
I believe a lot of this bad advice stems from thie belief that "other people write bad software." When you run into bugs day in and out, it's easy to reinforce this belief. Afterall, how can someone who claims to have all this experience and knowledge make such an obvious mistake? They're paid a salary and millions of people trust their software! I could do it better. The reality I believe is that these sorts of people are really compensating for the flaws they themselves are prone to making. When they catch these sorts of errors, they're just reinforcing patterns they themselves recognize as bad; likely because they themselves have made such a mistake in the past that someone else had pointed out to them. So when they call someone an "idiot," they're really calling themselves an "idiot," and bringing the other person down with them to bolster their sense of self worth.
The truth is that we all are guilty of making mistakes. Operating systems that run the Internet, control nuclear reactors, and send really expensive robots into space all have bugs. They have security flaws. And they were written by individuals who've spent a significant amount of time paying their dues in the ivory tower and working their way up the career ladder. That a novice can also make the same mistake is not coincidence. It's human nature.
I empathize with what you are saying, but I don't agree.
I think it's crucial to recognize the difference between what I'm talking about, and what happens when people with experience make mistakes. Environment matters, tremendously. If you're an amateur hack, selling your 3rd rate skills to customers who don't know any better, and you're lack of capability is hurting people because your software is being exploited, the response SHOULD be swift, and harsh.
If you are working within a framework of extensive testing, analysis, and basic rigor, and a mistake makes it through, and you add that case to your testing and learn from it, the response should be moderated significantly.
Just because someone with 2 months of PHP experience CAN stand up a web service and take credit cards over the internet and become the next web success story, doesn't mean that they should. I believe this industry has gotten to the point where there needs to be minimum table stakes for entry - you can't just find somebody who'll design and sign off on a house for you for super cheap because they're new. There's a reason for that.
Until IT moves out of the wild wild west, though, it needs to be policed like the wild wild west - shoot the idiots that threaten the town.
Sorry that's kind of rambling, but I think it mostly gets my point across?
I think we're really talking about two different issues.
I'm not even talking about doing something as silly as charging a client money for something you barely know how to do. That's just deceptive business practice and people should be lambasted for it. Misrepresenting your capabilities is reprehensible.
What I'm talking about and what I think the OP was talking about is the negative attitude we have towards our fellow geeks. We discourage people from learning or trying their own ideas out. I think that's pretty sad. Even if they are re-inventing the wheel; let them try, man. Maybe they will end up with a better wheel. Or a special kind of wheel. You never know if you just tell them that it's already been done and they couldn't possibly build a better one anyway.
So while I agree that some sort of safeguard against malicious business practices would be useful to the industry as a whole, I don't think it has anything to do with supporting a negative attitude towards our fellow geeks. Everyone has started somewhere and it's better to foster and encourage learning and experimentation than to institutionalize the practice of programming.
My original point was that it's not necessarily "deceptive business practice."
For example: when I first built my buddy's business site, I wasn't knowingly half-assing his work, or attempting to extract maximum profit for minimum work. I was giving a good faith best-effort, which unfortunately (and unbeknownst to either of us) was well generally below accepted practices.
Now, should someone have yelled at me and told me I was an idiot and shouldn't have been developing production sites? Maybe. Certainly, if we'd been exploited. It's easy to look on everyone with rose-tinted glasses until you accidentally cause your best friend's business to fail.
Not to diminish the importance of doing good work, but the reality is that knowledge and expertise are part of a continuum and even well-respected experts can easily make mistakes. If you're trying to make a living, you have to attempt to sell yourself at whatever level you're at, then work to keep improving. It's the customer's responsibility to do due diligence and discover potentially critical gaps in expertise, not the provider's to trumpet his/her own weaknesses. This is just the nature of a marketplace.
The hacker who postures a bit in order to get a job he isn't truly suited for, but works hard to get up to speed and does his best, will be much better off in the long run than a hacker who declines the project, even if it leads to problems for the buyer later on. There's only so much you can learn without jumping in the deep end, but in order to get that chance, you often need to give the impression you've been swimming in the deep end for years. That's how the world works.
I fully agree with you - everybody has to start somewhere, and nobody gets ahead just doing things they're 100% comfortable with.
That said, if you're going to give the impression that you can swim in the deep end, you need to be fully prepared to suffer the blowback if it's discovered that you actually can't swim in the deep end.
In response to the due diligence - this sort of goes down a rathole, but the industry as a whole is lacking serious professionalism and credibility standards (certifications don't count, in general). There is no professional liability (aside from personal name besmirching - hence the harsh criticism and feedback). If you get hired in 2011 to do a site for someone, and your database stores passwords in plaintext - in my mind, that's a fundamental enough error that you SHOULD be able to be held professionally and legally liable.
I'll be the first to admit - the problem with this is the question of where do you draw the line? What SHOULD everybody know AT MINIMUM before they can commercially sell services like that? I hate the idea of licensing as much as anybody else, but our only recourse is 'self-policing' - hence the harsh criticism and attacks.
I agree that the issues you mention are important, but unless these requirements are spelled out in a contract, there is definitely no basis for legal liability, and any attempt to establish one is guaranteed to be a disaster. Caveat emptor! The alternatives are much worse.
You probably have one of the most poisonous perspectives one can have in this type of thing, this is exactly why the world sucks. There _NEVER_ is a reason to give "harsh" feedback, go read some kevin pollak or study psychology, humans are not "dogs" giving harsh or stupid feedback wont change the broken product.
Offer your help, "Holy shit dude you have a XSS/SQLI in there, lets fix that up before you get in trouble".
You are probably one of those people that wouldn't help someone on the edge of a roof trying to commit suicide. Just sayin.
I spend many, many hours helping people learn, and not by pushing them off the edges of buildings.
Even google has had XSS style problems - that shit is HARD. One form field having filtering issues is one thing, a whole site of problems with absolutely no effort put in to mitigate what are, effectively, known issues, is an entirely different thing.
If you're not worried about anything security related on a public website in 2011, you don't deserve to live on the public internet, and should jump.
I think you make a good point and I really don't mean to be critical but the pedant in me must point out that the correct phrase is "hear hear"
....or should I say:
WTF man! English is your native tounge. What the hell are you doing writing if its clear that you don't even read??? How could "here here" make any sense as a phrase? And if it doesn't make any sense why don't you take the fing finger out and google it!!! Have you been this moronic all your life or have you just started recently?
> I don't know how many times I've watched eager hackers get lambasted for "reinventing the wheel,"
Depends on context.. If it's someone learning, or hacking on some personal project, go ahead! It's a great way to learn.
However, if we're talking about a programmer in a commercial company, it's a different story. Your purpose is not to produce the most amount of your own code, your task is to produce a service of some sort. Unless the software/service you're working on a is a database, I expect you would use an existing database (assuming you need one). If the code you're creating needs to manipulate dates, I expect you use an existing library for such things. It will be available, it will be tested, it will handle all edge cases. Why would it be acceptable to spend a lot of time on reinventing that particular wheel, fixing bugs as they arise, etc?
Well, at work, we were using C-Ares (a C-based DNS resolving library) for two different projects and both were mired in problems involving said library; race conditions, having to add support for NAPTR records (I checked about half a dozen different DNS resolving libraries and none supported decoding that record).
Even though it wasn't part of my job description, I wrote my own DNS resolving library over a weekend that better matched what our needs were. It was just as fast, easier to integrate (since it made fewer assumptions about network usage), and the runtime memory footprint of at lease one project dropped from 15M to less than 400k, due to my "reinvented" wheel. Had I not done that (back in November) we still would probably be fighting with C-Ares today in both projects.
I don't think it's entirely unreasonable to expect someone to use an available library for parsing dates.
It's not a terribly good example.
There are cases where "reinventing the wheel," is simply an ignorant statement. Perhaps the system in question has developed semantics for working with date-based data that the grammar of the existing date-parsing library's API doesn't match well with. This extremely contrived example may force the developers to write a lot of code for working around those inconsistencies which themselves can lead to bugs and maintenence headaches in the future.
What if your lack-wit developer who wrote his own date-parsing library saw these problems and wrote a library whose API resolved them? Or perhaps in another scenario the existing libraries are simply inefficient for some metric of acceptable performance in your system. Maybe this ignorant developer simply writes a better library that allows you to do more.
Either way, there is reason to believe that either scenario is valid. It is likely that writing a date parsing library is not going to be terribly useful. That doesn't mean it's impossible and so one must be willing to evaluate evidence and draw conclusions rather than hide behind blanket statements.
What I'm really talking about is the attitude people have when they think someone is "reinventing the wheel." While some people are helpful and will politely point out that there are existing date-parsing libraries, there are a great many more it seems who will assume that the person who is "reinventing the wheel" is a clueless loser who wouldn't make such a "stupid mistake" if they were worth their salt. That kind of reaction isn't helpful at all.
There is reinventing the wheel and reinventing the wheel.
It's cute when a person, learning as she goes, comes up with something that's been already invented. Only goes to show she understands the field. 
It's unbelievably irritating when something that was widely implemented 10 or 20 or 30 years ago (and then even improved significantly) is now asserted as the next big thing. C'mon, be serious -_-' 
I would direct anyone who thinks geeks are harsh now to read chapter 10 of "Dealers of Lightning," about the early days of Xerox PARC.
They had a weekly meeting called DEALER, where the boffins would present their ideas to the group at large.
"But the argument had best be carefully thought out. Anyone trying to slip an unsound concept past this group was sure to be stopped short by an explosive "Bullshit!" from Thacker or "Nonsense!" from the beetle-browed ARPANET veteran Severo Ornstein. Then would follow a cascade of angry denunciations: "You don't know what you're talking about!" "That'll never work!" "That's the stupidest idea I've ever heard!" Lampson might add a warp-speed chapter-and-verse deconstruction of the speaker's sorry reasoning.
If the chastened dealer was lucky (and still standing), the discussion might finally turn to how he might improve on his poor first effort."
What would we think of an American who walked into an Egyptian coffeehouse or a Japanese board room and interpreted all the behavior he saw there as if he were seeing it in a church in Iowa? It's fine to demand that geeks develop some social sophistication, but it's also fine to expect that non-geeks will have enough social sophistication not to rush to judgment about behavior in an unfamiliar cultural context. Cultures vary from place to place, subgroup to subgroup, and there's no reason people shouldn't adapt to us if they want to join our subculture. That's the way it works.
As other people have pointed out, the argumentative, ruthless nature of computing culture has very adaptive aspects because it mirrors the persistent, ruthless, and logical nature of the computers we deal with. Once you're used to dealing with computers -- once you've learned that computers don't compromise, but it isn't personal -- you perceive computer geek behavior differently. The only reason to enter the subculture, except as a tourist, is to learn about computing, so it is reasonable to assume that anybody arguing about how to program a microcontroller either gets us or is in the process of getting us.
Obviously, different rules apply when geeks interact with non-geeks in other contexts. When in Rome, do as the Romans do. When in Xerox PARC, or less exalted forums for discussing computing, do as the computer geeks do.
There's a huge difference between "You're wrong and here's why", and "You did X??? What are you, stupid? You suck and you should just gtfo because you'll never amount to anything. You'd be so fired if you worked in my company. Bullet. Brain. Make the connection."
Unfortunately not even this works for many/most regular (read: non geek) folks:
"Why prove to a man he is wrong? Is that going to make him like you? Why not let him save face? He didn't ask for your opinion. He didn't want it. Why argue with him? You can't win an argument, because if you lose, you lose it; and if you win it, you lose it. Why? You will feel fine. But what about him? You have made him feel inferior, you hurt his pride, insult his intelligence, his judgement, and his self-respect, and he'll resent your triumph. That will make him strike back, but it will never make him want to change his mind. A man convinced against his will is of the same opinion still." - Dale Carnegie, 1936
Sigh.. sometime I feel I'm of a different species from people that take almost everything personally.
This sounds like a good argument until you realize that the people the geeks most love are all level-headed and good-natured, people who promote the good of all. Often these are men/women who inspired the geeks to be geeks to start with. Example: Carl Sagan.
So for all the geeks who were inspired to become geeks by Carl Sagan, Richard Feynman, Spock, etc., to fall so short of their ideal... clearly there is insecurity and childishness at work.
Refusal to learn how to treat others well is not cultural, it's immature. Perhaps most importantly, it's total sour grapes compared to one's original inspiration for geekhood.
I'm not sure you're actually being honest in your examples. Carl Sagan, sure, but Feynman was rumored to be extremely arrogant in his technical discussions. Linus is known for his giant flames on the mailing list. Dijkstra was impolite at best.
Maybe we just think our idols were always nice and helpful because we want them to be?
My policy: be nice to people. Don't be nice to ideas.
IMO, ideas need harsh critique, and it's not always easy or worth it to spend the extra time padding the conversation to soften your point - it can even be counterproductive.
So while I won't say that someone is stupid or dumb for suggesting the idea, I may say an idea was not well thought out if it really isn't. I expect my peers to do the same, because we're not going to see which ideas stick if we bicker over how we iterate on them.
The real problem seems to be people who can't separate themselves from the mistakes they make and take everything as an affront to their person. Receiving criticism means that your idea or work is at least worth considering.
When receiving criticism, I should do as you say, and assume my mistakes are the target, not my (oh so sensitive) self. But when handing out criticism, I should assume the other person will take it personally. It's like that principal for Internet robustness: be conservative in what you send, and liberal in what you accept.
While I agree with this to some extent, I'd just like to comment on the the skateboarding analogy; You were probably taking it one step at a time, learning to stand on the board, increase your speed, make turns. Once you got all that done, you might move on to try some tricks, perhaps trying to learn the rock to fakie trick. What you _didn't_ do was, on your 2nd day, to scream out "why am I not sticking my 720 kickflip?!?!".
The latter is fairly common in the world of programming, in my experience.
(There's obviously also a big difference between being physically together with the people in a skatepark and sitting on the other end of an IRC session.)
I suspect the reason why hackers are harsh compared to skateboarders probably has something to do with the fact that when skateboarders fuck up, it tends to hurt. Bad hacking rarely carries such a strong disincentive, so we have to create one.
There is a major difference between sports and programming: In sports, everyone is a critic, and it is really obvious if people cannot skateboard, or cannot throw a basketball.
Compare with programming, where overt effect and actual competence are not always related. Criticizing programming and programmers is nontrivial, and hence people have to do it all the time to build up a shared understanding of good and bad practices.
Looking at visual arts, you'll probably find a similar asymmetry between drawing (where it's difficult to get to even a barely mediocre level) and layout/typography (where it's easy to do something that looks "good" to the layman yet is totally horrible). Needless to say, there are more pages bashing bad layout and bad typography than there are sites dedicated to bashing bad drawings.
Except there is much more to a sport than, for example, shooting a basketball. There's offense, there's defense. There's fundamental skills, there's game strategy, there's different sorts of matchups. It goes on and on to subtler and more intricate detail. It's not simply whether one can skateboard or not, program or not, and it would seem that is what the author of the article was getting at.
In your visual arts examples, there is a much simpler explanation. The reason there are more pages devoted toward layout principles is because the medium of expression (i.e. the web) fundamentally uses layout principles. Drawing doesn't express using the web. It's a selection effect, just as it's more likely that you will find soccer players in Brazil, and hockey players in Canada, rather than the other way around.
OK, but there are degrees of subtlety though. A casual fan might see someone score 40 points in a basketball game and say "wow, he must be a great player" while a hardcore fan might chime in and say "actually he's way overrated. He's a poor defender, way too selfish and lazy in rebounding." but the fact remains, if you score 40 points a game in basketball, you are at least a 'good' player at your level. I can say that categorically. Can we say "If you X, you must be a good programmer."?
It has taken me half a lifetime to grow a "thick skin" against comments like this. It's lame to admit, but I've abandoned half a dozen really cool projects in the face of feedback like this. Being a parent has made me realize that there's a word for people who react this way: bully. In teaching my kids to cope with it, I'm teaching myself, too. They were pretty surprised to hear that bullies act out of insecurity.
There was a post here a little while ago from the 37signals blog "There's no room for just shitting on someone else's work" in response to the "read the fucking hig" website.
In that post, the author says "... they're creating something, and that's awesome".
I became a parent (nearly) 1 year ago and when I read this phrase it really put this whole "geek wars" thing into perspective. If my child grows up to be passionate enough to create anything I'll be so pleased. I wouldn't even care if it were good or bad. There are so many worse things that a person can do in the world than create things, we should all just be heaping praise on each other for even trying to do something great.
Being a parent does wonders for your perspective on life :)
Condescending feedback says more about the speaker than the listener.
I'd take this even further: feedback, period, says more about the person offering it than the person it's about. Hell, anything anyone does, whether about or in response to someone else or not, is about the person doing it.
If I say something and you lambaste me for it, that's about you; I'm just a convenient excuse for you to manifest your dick-nature. If I do something and you give me props for it, that's about you; I'm just an opportunity for you to share another aspect of yourself. Love someone or hate someone, what you say or do has nothing whatsoever to do with that person. It's all about you, all the time, every time. Full stop.
Life gets a lot easier when you remember that other people's behavior is about them acting out their individual dramas, in whatever form that happens to take. Sure, some kinds of responses feel better than others; everyone loves to be praised, and probably doesn't much like being excoriated. That's exactly the point, though: how you feel about what someone else does — and how you respond to it — are about you, not that person, and not what they said or did. That person, and what they say or do, are just excuses (or opportunities) for you to manifest your baser or higher nature.
We've all been pricks, and we've all been saints; we always have a choice in how we behave. So stand up and take responsibility for yourself. That doesn't mean you have to stop being a raging asshole, if that's what you want to be. But you made that choice, and re-make it every time you're rude to someone, denigrate them, or talk shit about them. Own it. And if someone's an asshole to you, instead of being an asshole back, think about how much it must suck to be a person who feels the need to go around being an asshole at other people.
Vociferous opposition is not the same as condescension, though.
There are some people who care deeply about a subject and just lack social tact. They'll jump on you for a variety of subjects, but they don't have ill intent.
Then there are the people who are dicks and want to crush people who they disagree with. It's the point at which one starts displaying schadenfreude and denigrating others that the line has been crossed.
They should learn it themselves. There are books & training courses on the subject. But people rarely seek these out because they are so defensive about their deficiencies that they turn even those into a contention -- they say "this is just the way I am, take it or leave it."
This is such BS and makes me sigh every time I hear it.
It's not being an ass that gets them laid, it's the other characteristics that an asshole typically has that gets them laid. Things like confidence, not coming off desperate and having experience not just approaching a girl but being able to hold a conversation... and the many more things that increase attraction but these are the basics.
These characteristics in a nice guy will get him laid more than the asshole and he'll have opportunities with girls that see right through the asshole (and some would say these are the more desirable women).
I wish this were true. Well, you're not completely wrong- An outright asshole is getting by on confidence alone. But a guy who is polite but disarmingly arrogant, condescending in subtle ways, is much more desirable than a confident nice guy.
> [...] disarmingly arrogant, condescending in subtle ways [...]
Nice guy equivalent: playful teasing and flirting. Someone eavesdropping might even take it out of context and interpret it as arrogant or condescending but it's just a little game -- not in some "pick up artist" sense; it's ideally very natural. Works for me.
While we can argue all day long about what makes for the most desirable man, I still contend that you can have more (desirable) women want you than you could possibly ever get around to and be a nice guy.
"Then there are the people who are dicks and want to crush people who they disagree with."
The problem is that when people start mouthing off about factual issues they don't know anything about they can cause a lot of damage, so crushing them is often a necessity.
When you're in a situation where there is a lot of potential for damage and the other person isn't willing to have an intellectually honest debate about the facts then there isn't really much choice but to make them look like a moron.
"The problem is that when people start mouthing off about factual issues they don't know anything about they can cause a lot of damage, so crushing them is often a necessity."
Is exactly the type of thing that comes from the hive mind, and is why it's impossible to be a dissenter. It's usually "you don't know what you are talking about," followed by bashing until the person takes their ball and goes home.
The entire article was riddled with sloppy thinking, and thoroughly plagiarized, so I got all of reddit to utterly destroy her until she deleted all of her comments and wrote a followup stating that the issue was no longer a top priority of hers. I tried to engage her respectfully first, but since she wasn't willing to engage in an intellectually honest debate then going out and fucking up her day seemed like the second best option. Overall I'd consider it a win. Sure it would have been better to get her to change her opinion, but once it becomes clear that no amount of facts or logic her will persuade her then embarrassing her until she shuts the fuck up becomes the best option left on the table.
"Since when does being wrong revoke someone's right to express said wrong opinion?"
No one's revoking her right to express an opinion, we're just revoking her right to make shit up. If she was familiar with the facts and she was still against marijuana reform then no one would begrudge her of that, but she doesn't get a free pass to lie to the public.
But unfortunately points of view aren't innocent things that everyone is entitled to. They can cause SERIOUS damage to the lives of other people.
If I have a point of view that binder clips should be made illegal because they're hideous, and manage to make that a law, then A: My point of view is making regular stationers criminals, and B: I might have put people who make binder clips out of work.
Everyone has a point of view, but not all of them are reasonable, and simply having them can screw other people up.
I agree with you in the sense of allowing people the space to disagree, but in this particular case, someone's bad opinion, if left unchallenged, could result in other people going to jail. It's the principle of reciprocity.
Think of it this way: he's not attacking the politician for her opinion. He's attacking her for attempting to make her stupid opinion into a matter of public policy.
Everyone is welcome to have their opinions. When one attempts to act on those opinions in a way that's harmful to other people, one cannot but expect others to oppose.
Let's say I believe that three-year-olds can fly if only they're forced into a situation where they must do so in order to save their lives. It's a stupid opinion, but it's harmless if it's just a thought sitting in my head.
Now let's say I decide that I need to teach a bunch of three-year-olds to tap their innate flying ability by throwing them off a bridge. Is stopping me from doing so disrespectful of my opinion? Would that actually give you pause in stopping me?
Respecting someone's opinion is fine and dandy, but your inalienable right to your opinion stops when it starts motivating action involving others; at that point, the general rules regarding your rights when interacting with other people apply.
The "hive mind" works both ways though. You can find examples of posts with a correct position being bullied and forced out by a mass of self-confirming, yet incorrect posts. "Geeks", who often can't let inaccurate statements stand unchallenged for fear of it self perpetuating in this manner, will fight back in kind. Public forums are often very democratic, in that the majority wins even when the majority is ill-informed. (I'm not justifying the behavior, just proposing a theory as to why this seems perfectly acceptable to many "geeks")
> It's usually "you don't know what you are talking about," followed by bashing until the person takes their ball and goes home.
I agree that if it's just that kind of content-free junk, it's pointless.
However, if the beatdown comes with a factual and logical refutation of the idiot's points, or at least a link to a site that has such a refutation, then it performs the inestimable service of educating the lurkers.
For example, let's say we had an anti-vaccinationist come here and start spreading lies about vaccines. We would, rightly, be dismayed at such utter lunacy at work in our forum, and we would (hopefully) post multiple refutations of that dangerous nonsense. Ideally, the lunatic would find that we are not amenable to that kind of idiocy and would leave, sadly uneducated (most likely) but at least doing less damage. The real benefit to such actions may come months later, when someone unsure of the facts about vaccines discovers a dead thread that has all of this wonderful information we used to refute the idiot.
(And, heck, we might even convince the anti-vaxxer. It could happen.)
> And, heck, we might even convince the anti-vaxxer. It could happen.
To do so, make sure you only crush the the mistake, without beating the person down. Not easy to do without de-emphasising your point though:
"You say that 2+2=5, but I think you might be misinformed…" The more direct "No, 2+2=4. II+II=IIII. 1,2,3,4." might be perceived as too blunt, especially if the context is emotional (children, programming languages…).
The problem is you can only do that if the categories "What you think you know/What you think you don't know" overlap exactly with the categories "What you actually know/What you actually don't know". And they often don't.
So, doubtless you're laying down the hammer of knowledge in some cases where you think you know something, but you don't. Which means it's not the hammer of knowledge you're dealing, it's just a hammer.
My problem with that attitude is that it's not humble. Not in a false, pretending-to-not-be-good way, but systematically not acknowledging that you may be wrong. Say what you think is correct, but always conduct yourself knowing you may be wrong.
There are degrees of certainties. If for instance one of your beliefs is based on crushing evidence, then changing your mind on that matter will require super-crushing evidence. If someone comes and assert the contrary of your belief without presenting evidence, you should believe the other person is wrong.
Wrong beliefs are often dangerous (an extreme case would be believing that prayers are better than western medicine at curing most illnesses). So your duty is to convince the other person, or at least control the damage.
Now of course, if you do see that super-crushing evidence against your previously strongly held belief, then your duty is to change your mind. The most difficult part here is correctly assessing the weight of each piece evidence, and how they interact.
Can someone please explain the logic behind "condescending feedback = insecurity"?
And I mean that sincerely. I have been thinking about this for a long time now, and I just cannot come up with any supporting evidence to explain the corelation. It might sound like a stupid request, but I think it is a hard argument to make totally water proof.
I see it this way: The only reason to give condescending feedback is to demonstrate your superiority over the person you're criticizing. If you truly wanted to be helpful, you'd be giving helpful feedback. If you were truly confident in your own abilities, you wouldn't feel the need to demonstrate your superiority.
I'd say that analysis is missing one important group-- the truly arrogant.
These are the people with an unshakable belief in their own superiority, at least in some field. It's not that they feel a need to demonstrate superiority over others through condescending feedback. It's that their superiority is implicit in their world-view. They don't necessarily even realize they're being condescending. It's just the natural order of things.
I can say this with full confidence because I've been that person. As a teenager, I was insufferable. Not only was I a freakishly good at bowling at 15 (making hundreds of dollars per weekend from "pot games" and with multiple 300 games in a single league), but two years earlier, I had also become the youngest person in my state to enroll in college classes. I tried to be nice to people and everything, but I just assumed I had more intelligence, dexterity, constitution and possibly other D&D stats than they did. If people didn't like my attitude, sometimes I actually felt sorry for them, assuming that jealousy was the reason.
Now in my 30's after not having done anything amazing since growing up, I've become less confident and also less condescending. Rapidly picking up coordination based sports isn't really that important in daily life as it was as a teenager. And I certainly don't assume or even believe that I'm any smarter than other people. On the contrary, I'd say I've become tangibly dumber. I might still be condescending from time to time in my weaker moments, but nothing even remotely like what I did unconsciously half a life time ago.
I think this is more a matter of tact than anything. People with good social skills know that constructive feedback demonstrates authority and skill better than condescending feedback. Those who are prone to condescending feedback especially know this, but lack the grace and tact to act on it. That makes them more anxious and more insecure, which in turn increases the lashing-out behaviour.
I think the sad fact of the matter is that many geeks just have poor social skills. While some are content to just be quiet, others feel the need to overcompensate. Luckily, I haven't met too many of the latter in real life, but you see it everywhere on the Internet. The dehumanizing nature of interacting with a computer screen seems to absolve people of their need to act socially, so they act like fuckwits. On 4chan it takes the form of blatant aggression, although anyone familiar with the place knows it's all part of the joke. On reddit people make snarky replies that make up for their lack of content with the sharpness of their barbs. Here on HN it's more muted. While no one is a blatant asshole, there's a lot more "downvote and ignore" that goes on. This contributes hugely to the hivemind effect, because there aren't arguments given as to why someone is wrong, you just have comments that don't jive with the rest of the community getting hidden. This, in turn, causes people to self-moderate, so that they only post opinions they think the rest of the community will agree with. Obviously these are oversimplifications, and the issues I mention aren't particularly common, they're just how the same issue manifests itself in the different communities.
I think condescending feedback = insecurity is a bit of a generalization.Maybe sometimes it is true but not all the time - for example Linus' "feedback" on CVS was pretty condescending but I doubt that was because he was insecure
It's definitely a generalization; it just seems to be a reasonably reliable one :).
I suppose the insecurity doesn't have to be about domain knowledge, either - it could be about communication skills. Perhaps some people giving condescending feedback don't feel like they are able to communicate in any other way. They experience the desire to contribute, but aren't confident in their tutoring skills and don't want to risk sounding stupid by bungling an explanation.
And let's not confuse real condescension with blunt truth that's interpreted as condescension but is not inherently malicious. I think a lot of people may seem condescending because they are more direct than most people are accustomed to.
I've heard stories that Steve Jobs can often be a condescending asshole. I'm certain the same is true for other highly accomplished folks as well; if condescension were linked to confidence, wouldn't highly accomlished individuals such as this be amazingly generous and helpful?
I think the bit about superiority may be true: it is a way to demonstrate superiority, but I don't believe that immediately indicates low confidence.
I think "drives them relentlessly forward" is a part of the conversation we're missing out on. Useful feedback can come from anywhere, even an asshole. Waiting for insight from only expert communicators seems like a way to slow down one's progress.
Since we're talking about giving feedback, I think a more apt analogy is what happens when people with Honda Civics want to race.
Australian billionaire Kerry Packer was a notorious gambler. A legend about him is that at a poker tournament, he was challenged to play a high-stakes game by a Texan who bragged, "I'm worth $60 million." His response was to nonchalantly pull out a coin and ask, "Heads or tails?"
This may explain only the one direction of the equivalences: "low status" => "insecurity" => "condescending feedback", not the inverse. We can all come up with examples of high status individuals demonstrating condescending behaviour.
It's because feeling that one is better than other people, and feeling worse than other people, are two sides of the same coin. Once you accept the ego's lie that anyone is better than anyone else, you are stuck with both sides of the coin.
Mind you, I don't think one should feel any pity for people who are condescending. I think one should challenge them on their tone and attitude. The fact that they are also insecure may help explain their behavior, but doesn't excuse it.
The evidence is this: Words can alter perception. This is the purpose of rhetoric. For condescension to be successful the speaker must appear above his subject. Someone insecure assumes he's the worst or near the worst. By using condescension he can with words alter the perception such that he's not as bad as the subject. Thus definitely not the worst.
This isn't a water proof argument, however. A waterproof argument for human emotion isn't yet possible.
There's two ways to be better than other people; to rise above them, or to drag them down. Bullies want to feel important just like everyone else, but they are not confident in their own abilities, so they are afraid to try growing themselves, because they fear they will prove to themselves they are as stupid as they fear they are. (the ol', too afraid of failure to succeed) They are naturally left with either accepting they are a failure, or throwing other people under the bus.
Each of the `Excellent xxx' response you give differs in two important hitches from the `Insecure xxx':
1) it requires much common context, understanding, experience.
Everybody will understand a ``this sucks'' response, regardless of the reasoning behind it being clear.
Understanding a, and building better solution on, an involved response requires common understanding, common experience, between the parties of communication. (What the heck is a 4/2 split? I dunno, honestly; this response only serves as a distraction to me at that very moment).
Lacking common experience is a communication barrier hard to climb, thus frustrating. It may be that very precise subjects (like computer science) provide for more such barriers, thus more frustration.
2) the ``This sucks'' response lets you vent anger. Now there are two conflicting theories about controlling strong emotions... ;-)
OT, but in case you're actually wondering, it refers to the number of cards of a given suit held by each of the defenders. In bridge, there are four players, conventionally called North, East, South, and West; after the auction, one player becomes declarer; let's say that's South. In this case, North, across the table, is dummy, and East and West, on either side, are defenders. Dummy's cards are turned face up so everyone can see them; declarer plays both her own hand and dummy's.
When declarer sees a total of seven clubs (let's say) in her own and dummy's hand, she knows that the defenders have six clubs between them, but she doesn't in general know how many each defender has; this is called the "split". A 3/3 split means each has three; a 4/2 split means one has four and the other has two. Usually, even splits favor declarer while uneven splits favor the defenders, but there are exceptions.
"DID YOU SAY HUMANS PLAY IT FOR FUN?"
"Some of them get to be very good at it, yes. I'm only an amateur, I'm afraid"
"BUT THEY ONLY LIVE EIGHTY OR NINETY YEARS!"
- Death discusses the difficulties of bridge
2) the ``This sucks'' response lets you vent anger. Now there are two conflicting theories about controlling strong emotions... ;-)
I realise that this is intended for humour, but more seriously, I have experienced much better anger reduction when actually chatting amiably with someone and making a friendly recommendation. ``This sucks'' just passes on the negativity to others.
It doesn't matter if it's effective or not (I agree that's it's not), people vent because they feel it helps them. Feelings are generally stronger than logic, even when they lead you down the wrong path. Most people are ruled by their emotions, not by their rational mind. Showing someone a study that says their feelings are wrong, will rarely, if ever, convince them to change how they feel.
BTW, I'm not a venter, and I wasn't talking about me when I said some people.
I am insecure in every area you mention above, and I do everything in my power to approach advice exactly as you phrase it. Perhaps this is because I am insecure (all I know is that no one really knows everything), I choose to phrase things that way, often also seeing if they know something I didn't.
I don't think there's as close a tie between condescension and insecurity-- but perhaps in some cases that happens. I'd rather people just never be condescending, regardless of what position they're coming from.
judging from media reports/biographies, a lot of our "tech heroes" would then have counted as "insecure"?! don't know about that.
i've gotten to know some people who i consider brilliant or at least very, very good at what they do and, judging from my own small sample, they've been all over the place in terms of manners/considerateness. i don't think this is a valid classification scheme...
This sounds almost like a tautology or a "no true Scotsman" argument. If "insecure" <=> "condescending" by definition or "well, if he's bad mannered he can't be really secure", there's not much to argue.
So true. And to develop the argument further, why are so many geeks insecure and nervous, as they then must be, assuming the OP is correct?
I think it's because they are smart. Smart minds make a lot of internal noise, commenting loudly on every experience, making it harder for geeks to 'hear' their own finer feelings, including conscience. This makes them nervous, insecure and guilty. The guilt is unbearable, and they unconsciously attempt to project it onto other geeks with things like condescending feedback.
However, the good news is that there is a minority of geeks who have broken through this barrier, e.g. by meditation. They are a formidable sect, possessing both Bene Gesserit and Mentat powers.
I would say that some fields use it as a tool to weed out those that cannot act under pressure. There are some activities in life where if you cannot deal with condescending feedback then you probably cannot work in the field at all.
You could probably make your excellent personas a little less cynical. In cases where you want to point out a flaw it's best to not act as if you think you know everything. Start your sentences with "you could probably".
It's a noun I've used to attach the adjective sanctimonious to which adds more emphasis than the word "person" would have, and also confirms to the reader that I disapprove of a holier than thou attitude.
To be honest, I thought you were being sarcastic. OP was all about how people ought to be less harsh, less judgmental, more open-minded, kinder and more welcoming. 'Fuckwit' might as well be the poster child for the culture of unquestioning, caustic certitude of which he disapproves.
Are you the type of person who never expresses derision of something? Only using emotionally neutral words to describe anything?
"fuckwit" is defined as someone hopelessly lost, so much so they deserve a heaping helping of scorn for being so. The use of "fuckwit" added something for me. The people are very lost with respect to the thing we have called society, playing nice, and determining the importance of the piece they're commenting on. They deserve scorn for being that way. To express this another way (and to not accidentally evoke pity for them), you have to say "So clueless as to require scorn" or something equally awkward. Or someone could call the fuckwits a fuckwit and be done with it, getting across a precise shade of meaning.
From the Urban Dictionary:
A person who is not only lacking in clue but is apparently unable or unwilling to acquire clue even when handed it on a plate in generous portions.
It's true, but it's also the case that that's the only non-subjective point in the list. You can zip it on things like Comic Sans and table layout, but you probably shouldn't hold your tongue on security flaws.
Coming from an Engineering background I'd like to echo what another commenter said - Ideas must be treated harshly. If it's a bad idea then it needs to be vetted and corrected, especially if it's likely to kill someone. You owe it to the honor of the profession to do so. But you have to attack the idea and not the person. When egos are involved that's not easy, because the person may view an attack on their idea as a personal attack. Just assume the person is as intelligent as you and had a good reason for their "bad" idea. Maybe you can build on it without completely discarding it.
As for language, I've never understood the online "geek" community's tendancy to be grammar and spelling "nazis." There have been times where I've been the only native English speaker on a team, both professionally and in college. If we spent all of our time discussing Strunk and White we would have never finished what we were doing. Yet on the internet, where "exposure" to non-native speakers is commonplace, these practices seem to be the norm. Boggling. (It's one thing to be helpful, it's another to be petty. Petty strikes me as professionally immature.)
In short: A crash-course in interpersonal communications would help everybody.
Granted, but unlike skateboarders, the developer community depends on online interaction as their _primary_ form of community / communication / learning. So the faceless nature of net communication may affect the overall tone of the community and experience if its members more.
One of the things to learn in life is who to listen to and who to ignore.
I can align with the author - being around people who do not accept mistakes or shortcomings as part of a positive learning process is frustrating - but saying that "Geeks" do this too often and more than other circles is untrue.
It's nice to see someone stand up and say whoa. I mean my first youtube post of an arduino project I did - someone had to explain my miss-pronucenation of a word and paid no attention to the project itself. User comment boxes are not always as helpful as it might seem.
This is exactly the problem, and this is exactly why a lot of nerds don't stand up and talk about what they're doing. They're under the impression that if they're not working at on of MIT's labs, then what they're doing is worthless.
As someone who occasionally finds myself nitpicking things (mispronunciation, you're/your, etc), I don't do it out of malice. In fact, I often like and agree with what the person was saying, I was just bothered by that minor issue.
Just pointing out a nitpick by itself sounds harsh, though. Instead of just posting "It's 'you're' for the contraction of 'you are'. It's easier to remember if you think of it as just replacing the 'a' with and apostrophe.", I always try to add my positive thoughts as well, even if I feel they add very little. For example, 'Great post, I know exactly what you mean when you say some people are just overly critical for no reason. One thing, though...".
Obviously, this will still make me sound like a nitpicking asshole at times, so I try to avoid the the truly small corrections (you're/your, its/it's, grammar/mispellings in general). The key is to point out that you aren't dismissing or ignoring the rest of the work, and that the nitpicks you had were really the only part you disagreed with.
Bullies, anonymous smartasses. The internet brings out the teenager out of people of all ages, that's what makes it addictive and fun isn't it? It's not the real world, you are not forced to be a grey, conventional and kind person.
There's this trend to kill anonymity on the internet, blogs switching to facebook comments etc. There's a value to anonymity, it facilitates criticism and that's what scientific journals have been doing for decades. It's also known that eponymous product reviews tend to be 20% more positive. The world is cruel, the world is pretentious. Take your pick (or don't)
It's a little more advantageous to firmly establish your current language/style/concept as the standard than it is in skateboarding. The job market is all about hype. If RoR is the latest trend, a RoR programmer is better off. Same with Node.js. Same with HTML5 over flash.
While I doubt people actually think "I'm going to tell you that your choice of language sucks because I want more work" I also doubt bullies on the playground think "I don't have a lot of self esteem, so I'm going to pick on kids smaller than me to make myself feel better".
Some communities are more harsh than others. Ask a stupid question in #perl and compare the response with #python. The perl community is well established and isn't trying to evangelize. Python is (or was) less commonly used. They don't want to scare away new users because more python programmers means more support for the language.
It's not an excuse, but it is a possible explanation.
I was just under the impression the python community has a long tradition of getting things done while being far from experts in the language, i.e., a far greater proportion of non-professional programmers who just use python to make one part of their real job go smoother.
This leads to a very high tolerance of people new to the language, and to misunderstandings.
Ruby and perl seem to have more typical professional programmer types is all.
Coming from the same situation as the OP, only reversed (grew up a skating every single day, got addicted to programming later on), I would like to contribute a little context to the OP's brush with skateboarding. Sure, I remember ollieing backpacks with my friends in the morning before school, when we had pretty much nothing but encouraging words for each other. But I also remember years later, being on tours/roadtrips with pro's and video deadlines and magazine articles. In those latter years, the cynicism and shit-talking that I'd witnessed (ok, and took part in) was unparalleled by any other sub-culture I've ever crossed paths with. Someone with a forced/contrived style of skating could be made to hate their own life after enduring little more than 2 min. of criticism from certain, fellow skateboarders.
My interpretation of all this is that anytime you're doing something around the upper echelon of people that do that same thing you're doing, expect tests of your will, whether technical or emotional. I just think of it as human nature's way of weeding out the weaklings of any group.
Personally, I'm quite fond of and entertained by the pretentiousness I receive on certain irc channels… brings me back to the days when and skate spots and chicks were literally my only cares in the world.
I don't like this generalization. I've met all sorts of geeks, nerds and hackers. Some are horrible to each other, some are very nice. I can't see that it's helpful to accuse all of us of being bastards.
On the other hand, I have seen code that I found horribly upsetting and I'm sure I've expressed my opinion of it. I know that I have the patience of something with a very small amount of patience when I come across someone who just doesn't instantly get concepts (for this reason I cannot do family tech support) and I did make my college girlfriend (also doing computer science) cry once because I just rattled off an entire programming assignment without touching the computer (she switched courses).
So, it really depends. If it was someone junior to me I'd cut them a lot of slack, if it was someone I considered my intellectual peer they'd need to roll with the punches.
I've had lots of moments where I let bitterness get the best of me, and started flaming. Upon reflection, I think I understand why.
As programmers, we are part of a giant ecosystem of software. What one programmer does affects another, even for two people who don't directly work together. This is unlike (say) sports. If there are other skateboarders who have terrible form, it doesn't affect me.
On the other hand, if a large number of people make what I perceive to be a bad engineering decision, like using SOAP (SOAP's safe to hate on these days, right?), that affects me because I'll have to write software that interfaces with their systems that use a terrible protocol.
And if I see a person arguing in favor of a terrible idea like SOAP, I perceive that they are not only using SOAP themselves, but encouraging others to do so also -- if they succeed my life gets even harder. If other people seem to be agreeing that it's a good idea, instead of recognizing it for the insanity that it is, the frustration grows. And if the person is arguing in a self-righteous way, that makes it seem justified to be snippy back.
I think that the issue of open hostility in online communities stems from Anonymity more than anything else. Most people are very conciliatory face to face. Honestly, I'd prefer something between open hostility and straight up pacification. I definitely want constructive criticism, which is why I tend to like Hacker News. The comments that I have seen here tend to be more constructive than other places on the intertubes.
There is something about hiding behind machines that makes people treat each other much worse. I've noticed this in traffic jam situations, when everybody is hiding behind a couple tons of steel people are much more rude than, for example waiting in a human line, with everybody cutting each other off, flipping the finger, honking horns, etc. There's been a couple times where someone who has been rude on the road pulls up next to me at a stop and I wave, smile, say hello, and they act completely awkward and apparently ashamed.
I agree with the author's observation. Geek culture is incredibly unforgiving, and proudly so. To some extent this might be just a part of hacker tradition, but I think there's a deeper problem - it isn't always easy to tell who the authority on a subject is in a random group discussing a highly technical issue.
Let's take the sports analogy the author used. It is immediately clear who is more apt at skateboarding and thus should be doling out advice. The power relation is clear and accepted on both sides, which allows for constructive instruction to take place.
Discussing things on HN, however is different. In general, technical discussions amongst people who don't generally know each other are a process of discovering the appropriate power relation. We are exchanging comments and trying to gauge who is more knowledgeable. If I were to try to teach someone before they've acknowledged I have something to teach them, I'll come across as arrogant and an unpleasant argument will likely begin.
I'm not sure what the answer is. Sometimes I'd like to see more humility in the communities we're referring to here, but I also don't want to read insecure, watered-down opinion. It would be the best of all worlds if people stated their case as strongly as possible, confident that everyone knows they're aware of the possibility or even overwhelming probability they're wrong. I think that would eliminate a lot of the pain and noise in discussions on forums such as this.
In most cases, there's a social normative function that teaches people that this kind of behavior doesn't work. Are you an asshole in real life? People won't deal with you and you'll find yourself shut out of many social opportunities. People tend to learn to stop being assholes real quick when everybody else gets an office birthday party and they don't.
The problem with life on the Internet is that this social normative function doesn't work. Are you an asshole that nobody will talk to? No problem! Just invite yourself to the office parties and start running your mouth!
Admin lock out your account from your favorite forum because of flame wars? No problem! There's a million other forums you can head to and be a complete jerk in!
There are exceptions, HN for example is fairly unique in terms of the social environment it provides, and flaming out here can have consequences, hence people tend to behave a bit better here in order to maintain their social status in the group.
However, in addition to behavior and tone, down arrows represent a kind of social normative function that includes semantics that might push people towards a kind of consensus in group think (flags usually deal with purely bad behavior). The problem is that it's very hard on HN to have a dissenting opinion without getting knocked down a few points. If want to keep socializing here, you either conform or get out.
Honestly, I'm on the other side of the fence. I've found that good programming shops are a bit offensive and a bit agro when discussing code, and it leaks playfully out into regular relations. It needs to be offensive, but not about the person themselves (like all good criticism)
"What? This sorting code is slower the a walrus walking uphill"
"Dude, your lunch STINKS, are you cooking a month-dead skunk?"
"That's retarded. It won't work. At all. Ever."
Sure, they sound a bit harsh, but they're not actually offensive because you KNOW they're not about you, or are only peripherally about your judgment, and it's an unavoidable fact that some people have terrible judgment.
The shops I've worked in with quiet, softly given feedback have been those that aren't doing anything interesting, are moving slowly and don't really have any great developers, or even better then average ones. In my mind there's a definite correlation between boisterous shops and great ones.
The old stereotype of the socially awkward nerd is just as true now as it ever was. The points the author brings up are classic signs of lack of ability to articulate in a social context.
It's not a popular thing to say but programming and hacking is, at the end of the day, a mostly solitary endeavour. Why would someone who spends most of their time stuck in their own head know how to converse about technical matters, especially when it's online and behind a wall of anonymity?
I'm not saying all geeks are antisocial. I'm saying that the kind of person who would call another an idiot over a minor disagreement isn't demonstrating a lack of confidence but rather an inability to communicate in a friendly way.
The worst part is the practice of deliberately trying to make someone feel bad about themselves over a discussion about iPods or something. What sort of person does that? Thankfully I hardly ever see it on HN, but elsewhere it's rife.
You see it a lot between iOS and Android camps. I get flak from Android fanboys constantly and I don't even use an iPhone. If each system was so perfect, there wouldn't be a need for anyone to prove anything. We're pitted into camps of imperfect systems in which each side is perfectly aware of their side's flaws but avoid the geek-sin of admitting they use something less than perfect by only pointing out everything wrong with the "other side" rather than admitting that everything is broken and telling Google and Apple about it instead.
I know one guy who used to actually reply saying, 'read what you just wrote, and feel bad about yourself.' One of the main problems though is that half the people on these forums are 10-18 year olds. I mean even Hacker News has a median age of only 25 (according to a recent poll), and it seems super-grown-up.
I think there's two main problems here at play: excessive criticism and discouragement.
I actually like the first one, and most hackers I know do too. I've seen geeks take (possibly harsh) critics very well, way better than "normal" people. Personally, I find it useful as a route to self-development, but it's certainly more frequent than in other places.
About discouragement, I think the author is just visiting the wrong communities. Or maybe I've been really lucky all this time. Either way, I don't see evidences of this behavior being more common in our circles.
Ehn. There's a reason he rhetorically asks whether we're back in high school - this isn't just geek behavior. I've experienced this attitude from plenty of people who aren't at all geeky, and I've encountered some very nice geeks.
Under certain sets of circumstances, people just tend to be dicks - and the internet contains many cases of those circumstances.
That happens everywhere; however, the author is comparing two different places: The Internet and a skate-park.
He just find a good place and also people don't tell strangers and guests "you are an idiots" in your face. On the Internet, it's different. That applies to a skateboard forum, just search and you'll find out!
End of the story: Work on improving yourself and forget about what sh*t the others say.
I'm glad that HN is a place where people are normally really helpful to each other, but I see it even occasionally here.
On the other hand, let's not take it too far. It's nice for people to have a little bit of backbone. They don't need to endure jackasses unnecessarily, but there are times when criticism is rightly required and backbone is rightly needed to respond well.
No, it's the best time. Everyone, I have an announcement to make! I...am kind of like a hipster.
reveals fedora hat and threadless shirt
<<My word! They do exist!>>
No longer will I be prosecuted for enjoying a cultural product that is making it's first appearance in the cultural scene.
I also speak for every newbie who dislikes dealing with the console and I speak for every newbie who doesn't posses the skills of a sysadmin, but wants to understand their way around unix. I also speak for every CS major who thinks caustic arguments, over which programming language sucks, are a waste of time.
And yes, I am currently learning Haskell, not because it is underground but because I enjoy recursively declaring functions. Now who here will help me understand side effects?
"...give people constructive criticisms. If their design is bad, tell them what they can do to improve it. If there code is bad, offer to help them patch it and make it better. If there spelling or grammar is off, just let it go."
This seems like someone just discovered that once you consider a large enough group of people, a bunch of them happen to be narrow-minded people thinking they know The Truth and feel they have a Mission to teach Gospel. The best thing to do is to actually ignore them lest one risks engaging into void arguments. Once you learn to get over the empty side of the Internet you discover that you can also find a bunch of open-minded, constructive people (of which hackers are - by the idealistic definition - a subset).
Trains can be late and one can be quite vocal about that, but few talk about those that are actually on time.
Partially responsible for the situation is the fact that many (if not most) of us (nerdy geeks) are to some extend autistic, or rather "aspergerish". Go read about Asperger Syndrome (http://en.wikipedia.org/wiki/Asperger_syndrome) and tell me that you don't recognize your own traits. Not only we enjoy being abrupt and critical, but we are also better fit for being around people who are like us and so we don't mind it as much as other people do. That said, it wouldn't hurt to learn some human interaction skills.
Aged skateboarder here. Been a few years since I have even rode one. The nature of skateboarders is something that I am glad the blog author got a taste of. I seem to compare every "culture" that I get involved in to skateboarders. I don't think you will find the same camaraderie in many other places.
It's very hard to explain. For something that is rather competitive, it is also very much a competition with yourself. Just the act of truly wanting to be a part of it will make you part of a family so to speak.
I see a lot of threads go by on HN along the lines of "why aren't there more women in technology?" and then lots of replies along the lines of "I guess they are just allergic to keyboards. Too bad!"
This article, particularly the section about attitude towards noobs, is all tied up in why some women never go deep into programming. There are lots of other reasons too, but this one is especially well articulated by the OP.
If you are in the keyboard-allergist camp, ponder this one long and hard.
What the poster misses is that many people don't come to online forums for just polite intelligent discussion. You might as well tell football fans to be quiet so everyone can concentrate on the game better.
Is he comparing online forums with in-person experiences?
I'm happy to point out one thing: this is less true on Hacker News. More broadly, this is less true in the "Startup Scene".
Even though a lot of us come from an engineering background, I've always seen people get great feedback, helpful and not condescending at all. This is even more true for people's "Review my startup" posts, which usually present a pretty early beta, but tend to get great responses.
I really enjoyed this post, and skateboarding has been one of my greatest teachers in life (which probably isn't saying much). I do believe in Machiavellian criticism, but progressive Machiavellian criticism with the intend of doing whatever you're focused on better.Not for the sake of the critic feeding their own ego, although the two can mutually interact. :)
I don't think it's true in general that hackers (or geeks) "are jackasses to one another". Rather, it seems to depend a lot on the community. For example, I tend to work with Rails software, and the communities that I've encountered have (without exception!) been very friendly.
Though pessimism aside, I think the post is spot-on with its argument!
As a related matter, harsh criticism sometimes makes it easier to distinguish good products/people from those that are not worth your time. I tend to appreciate the opinion of people who do not hold back criticism, certainly their praise is a lot more meaningful. Reading between the lines is not the most efficient way to discern quality.
>I don't think you can fight human nature, only work around it. Ignore the haters that don't get $x. Ignore the haters that think what you've made sucks, or doesn't do $x and is therefore useless. Build shit. Write about how to do shit. Let them know you by the trail of OC you leave behind.
i started learning to code in December/January. I've been pleasantly surprised by how helpful I've found people to be in places like #rubyonrails, #jquery, ...
I come across a random jerk here or there, or just some snarky, passive-aggressive commentary from time to time from otherwise OK people. I find if I am nice, humble, and honest about my abilities/intentions, people are generally nice in response.
Sarcasm has proven to be pretty successful on the web, which doesn't help your cause. How many successful blogs were built on a glib and critical tone? Being a jackass is an easy way to differentiate...I think this influences the general discourse on the web, especially among the savvy. That said, from what I remember, "web people" were far more ruthless 15 years ago.
I have to say, as a former sk8er (too old now), this is typical. Skateboarders have been social Switzerland for decades. Often un-critical of ones appearance and always deep into their sport, I'm not surprised by Steve's attitude.
Everyone (in the world) should just be less critical and stop thinking their shit doesn't smell. But as far as hipsters are concerned, I won't ever respect someone who trades their individuality for conformity.
To further my attempt at inserting George Orwell's Politics and the English Language into every conversation, I think this quote applies. :-)
The words democracy, socialism, freedom, patriotic, realistic, justice have each of them several different meanings which cannot be reconciled with one another. In the case of a word like democracy, not only is there no agreed definition, but the attempt to make one is resisted from all sides. - George Orwell, Politics and the English Language (http://www.mtholyoke.edu/acad/intrel/orwell46.htm)
I think "hipster" is generally one of those meaningless words in a lot of cases. Often times it's not pointing at what should truly be denouncing IMO (doing things for "irony", hating on popular things for no reason, being elitist, etc), but simply as a way of just generally denouncing people.
"Oh you listen to bands I haven't heard of? You fucking hipster." as if there's no way the person in question truly likes that band regardless of their popularity.
That's just an example from the cases where there's a specific objection other than "hipster". It's just become a popular nebulous term to hate on, and I've gotten tired of seeing it everywhere. I luckily rarely come across "hipsters" so I'm not too annoyed by them, but "hipster-haters" are constantly bitching about whatever "hipsters" do.
It is impossible for me to read this without pointing out that after a very well-reasoned and largely accurate argument against the completely irrational spite, you close with a (admittedly small) taste of the very disgust you just denounced. "I luckily rarely come across 'hipsters'."
It's pervasive, even in the group itself. Hipster doesn't actually mean anything specific to anyone, it simply means, "a member of the counterculture which I find offensive at the moment." And, shocker, the people who you would consider, "hipsters," are just as guilty of this.
The problem with this, from my perspective, is that it's also a catch-all for people who are difficult to categorize. Even before the word was co-opted to be a generally negative term, it was nebulous at best, referring generally to young people who are interested in culture or art or food or music or, really, anything.
As a result of this, people get lumped into this group based on these very general terms, and then assumptions are made about their character by regurgitating every complaint anyone has slapped the word "hipster" after, as though it's representative of everyone who wears sweaters. No, not everyone who has a moustache is an elitist. Not everyone who smoked pot in college loves Bob Marley, do they?
I encourage people to stop using this word at all. It's just stupid, meaningless, and devoid of positive connotations for most of the world.
Well, by that logic, we should abandon all labels altogether. Down with identification of groups of people! Cast off the oppressive shackles of classification!
Down here in Australia, "Hipsters" are an easily recognizable and quite specific cultural subgroup:
Thick-rim glasses, no actual vision impediment to justify them, Impractically skinny jeans, Borderline offensively cliched facial hair (ie. Hercule Poirot-esque moustaches) and - most importantly - Irrational dislike of anything "mainstream" or "commercial" (with little/no other justification)
It's no longer meaningful counter-culture, it's become a very specific subculture in and of itself (at least down here) - a culture I would describe not as counter-culture, but anti-culture. It's ceased to be productive and meaningful, and simply become (like Monty Python's Argument Clinic) the automatic gainsay of anything "mainstream".
I've no tolerance for it, because (in my opinion, at least) it's highly pretentious and offers very little in the way of positive change. I find that subculture to be, in general, very negative (often for very little reason).
When I talk about Hipsters, I'm generally referring not to the dress, but to the attitude. Maybe you're right, and I should be referring to those specific attitudes as what I take issue with - but sometimes convenient (if inaccurate) labels make communication faster.
Frankly, we have made efforts for quite a while to eliminate classifications which are used solely to put people down. While it is true that hipster is not as offensive as some other classifying words and carries none of the historical baggage, it has become a slur, nothing more.
What you've described sounds like a caricature. While it is possible that the more nuanced culture formed elsewhere and was made extreme on it's way to your shores (and, indeed, there is evidence of this having happened in many other cases), I am not sure that is what is going on here. The specific attitude you describe is one I see commonly attributed to hipsters, and only in very rare cases a fair characterization. I think that The Yeah Yeah Yeahs and Radiohead (to throw something out there) are examples of incredibly commercial, mainstream bands which most of the people you are describing would be into.
Saying that you don't like the new Shins album because it is very mainstream doesn't actually mean that you don't like it because people are buying it (they aren't), it means that it doesn't seem challenging or interesting to you. It seems designed for mainstream appeal.
In the US, the word is not applied solely to the group that you describe, either. It's used to describe people who live in particular areas, people who ride bicycles, people who shop at thrift stores, people who listen to public radio, people who see lots of live music, and people who listen to records on vinyl, and this is by no means an exhaustive list. The most important thing is that people seem to have flipped your description of the attitude on it's head; It's not about whether or not you dislike "mainstream" or "commercial" things, it's about whether or not you like something which doesn't fall into one of these categories.
I agree that your description of this group doesn't make me want to hang out with anyone in it, but it certainly doesn't make me feel like I shouldn't tollerate it. If there is a group of people who want to be very bad at conversation at parties, more power to them.
If I believed that most people made these judgements on a case by case basis, that would be one thing, but that's not the case in my experience. The assumption seems to be that if you match one of these very superficial and general categories, I can mantle your personality and judge you (with little/no other justification, see what I did there?)
Mmm. Thinking about it, I can't think of a positive connotation of the word "hipster", or even a neutral one, so given that; you're right - it's become a slur, and probably worth abandoning as a term.
I realise what I'm describing sounds like a caricature. I wish I was simply being snarky, but spend 10 minutes at a bar on Brunswick Street in Fitzroy, Melbourne and you'd definitely witness what I describe. There are quite a significant proportion of people in that area who do indeed dress as described (for whatever reason) and who will hold conversations - at length - about the invalidity of any artistic endeavour that gives itself over to financial motivation.
I neither agree nor disagree with them on that point, but I feel I certainly have more productive things to talk about!
I think the usage of the word has probably varied within Australia from its usage in the US. Certainly when I read articles in Wired about 'hipster' culture, I'm left scratching my head (behaviours or purchasing patterns they describe therein tend to amount to the local use of the word 'trendy', which is rarely construed as an insult).
There's probably a PhD in sociological studies to be gained from the comparative usage of that word in Australia vs. the US. :P