If you’re a developer and you’re about to ask another developer a technical question (on a forum, via email, on a chat channel, or in person), you’d better be ready to answer the question “What have you tried?”Yes. PLEASE note the second step. If you can't or won't do that, it's not worth talking to you.
[...]
This isn’t some trick of software engineering; this is the entire process of learning how to do anything at all.
It’s not a secret handed out at institutions of higher education, it’s just how things work: you begin with a lack of understanding about a topic, and a need to solve a problem in that topic area. The honest, sustainable means to doing so is to improve your understanding. This is achieved by:
1. Formulating a question which, when correctly answered, will improve your understanding in some way; then:
2. Attempting to answer it.
Note the second step above.
This is a great essay, and like http://justfuckinggoogleit.com it has a self-explantory URL shortcut: http://whathaveyoutried.com/