Why I Say Dumb Shit
gist.io
gist.io
Being naive and saying things rashly without solid, scientific backing is a normal thing. It means you are learning the hard way, and learning things in an un-scientific way, or informal way.
In college / school / work / The Internet, we are trained to be as scientific about things as possible, because it looks like we worked hard at getting an answer. i.e - We put thought and effort into our question.
Sadly, people ask questions indirectly, or subconsciously. So casually saying:
"C is an uninteresting language and no longer relevant."
Is really you trying to understand programming more, even though it seems like a statement.
I am basking in the brilliance of this post.
To build on top of what you're saying, @tyre ...
Even if you reach the brilliance of your peers, and you attain their level ---
There will always be somebody else better than you. I know this from personal experience.
I am going to speak about this topic in regard to the coding scene on Github:
Take for example hacking/coding/dev. When I first started, I had my role models. Expert coders / dev rockstars / whatever.
Then when you reach their skill level, some new guy arrives on the scene and blows everyone away.
This happens a lot on The Internet, aswell as in real life. But this competition can also be a good thing. It fosters innovation, because who can tell when you supersede your contemporaries and blow their minds too.
I've seen it happen. Little johnny unpopular can skyrocket on Github very quickly, and be respected by his role models, overnight. This is the beauty of the social web.
http://37signals.com/svn/posts/3124-give-it-five-minutes
My favorite line from it: "There’s also a difference between asking questions and pushing back. Pushing back means you already think you know. Asking questions means you want to know. Ask more questions."
I might be oversimplifying it, but it sounds like the call to action in this gist is "Make trolling statements to smart people to evoke a passionate response. Maybe you'll learn something as they tell you off."
- Find a standard reference. If the subject is controversial or unsettled, the reference should note these facts but not take sides (if it's taking sides, it's by definition not a standard reference). In many cases, Wikipedia is a good first source.
- Track down a few additional references. These can be short survey articles, if necessary. Get a sense for the field.
- Find a discussion or discussions on the topic. Follow these. Unless your need is very pressing sit on your hands for the first week or so and see both what is being discussed and what cultural norms are. In particular, how are newbies and fools treated?
- If there's a FAQ, read it.
- At this point, start asking clarifying questions as to understanding, or for learning methods (depending on the topic).
Often starting with small clarification questions or references to what understanding you have may is a good way to enter discussions.
Dropping elementary questions on most groups is highly frowned on. It gets very old, very fast, and shows a lack of preparation.
I'm also self-taught in many areas, and my methods have afforded me well. Though there was that time I retorted back at Alan Cox that he was wrong regarding some aspect or other of kernel processing, according to a programmer I'd had a brief prior conversation with. Before I was fully aware of who Cox was (#2 linux developer for many years).
I did immediately apologize, and he took it well.
If you're the 3 ball juggler, it might actually help you to go up to the 7 ball juggler and claim their pattern is easier - as they'll probably take offence and try and teach you it.
Occasionally this can present a teachable moment. More frequently, the effort's wasted (or very annoyingly repetitive).
I do something similar to this, but it's a fairly different strategy. When I'm learning something, I assume that I have a valid working understanding - usually of CS concepts or code or what not. I repeat (to a friend/colleague/manager) that understanding and make extrapolations and relationships and confirm it. And I'm stubborn. If I say something slightly incorrect, I will reiterate "Well, I thought it was that way because of X, Y, and Z, or do I not understand". When I then have my understanding corrected, it's not just knowing that I was wrong and that A, B, C is actually right, but it also corrects my underlying mis-assumptions that caused my gaffe in the first place. So it's not just me saying "OK" now that my question was answered... I actually leave with a better fundamental understanding.
It's like the real life equivalent of "Can you repeat the word, Can you use the word in a sentence please?"
1) You should almost always learn from someone face to face. Whether it is in person or over Google Hangout, personal interaction lays down a baseline of respect. Yes I am implying internet forums are not the place to learn (and the irony of saying that here.)
2) Don't waste their time. Defend what you believe until you've learned why you're wrong (if you are), but don't be a dick.
It is really about starting a conversation and learning efficiently. Lob 100 softball questions at an expert and they can give you dictionary answers. Or really challenge them and you can get a framework for their entire understanding of a broader volume of knowledge.