It’s happened to all of us at some point. You’re typing away at your keyboard, working on your latest and greatest project that will surely garner the attention of big names like Google, Facebook, and Mandiant or trying to get your name out in a big, open community such as Defcon or even Blackhat. You know it’s going to be your biggest project you’ve ever worked on, and you want to ensure that you’ve got everything coded out just the way you want it. Except, you’re not exactly sure on what to do or write. Should you use a map rather than a stack for this function? What about a while-loop rather than a for-loop? Thankfully for us fledgeling coders and programmers, the internet is at our disposal, filled with all the answers you need. But there’s a rather slight problem: the internet is big. Very big. Enourmous, even. You could find the answers you’re looking for if you just search away with Google or Bing, but that could take hours upon hours of searching the web for the right answers, and you may need to open up multiple tabs and sites just to keep it all organized for you to parse through and piece together the answers you need. Enter Stack Overflow, a community of programmers, coders, testers, and many other computer professionals who are all willing to answer whatever questions you need answered. But to get the most out of such a community, learning the proper way to ask a question is key. In this essay, we’re going over why it’s important to ask smart questions and avoid asking not-so-smart questions while going over examples of both ends of the spectrum, starting off with the smart way.
Asking smart questions not only reduces the amount of potential questions from whoever stumbles across your question and takes a look at it to see what’s in need, it also greatly increases the willingness of those people to answer your questions in a clear and concise way while leaving offers to help even further if needed. Smart questions prompts potential answerers to truly think about the question and come up with an answer that’ll best solve it for you rather than telling you to go read a book or watch a video about it instead. A good question that exemplifies such a thing is this question about when to use a LinkedList over an ArrayList. The questioner led with how he’s always used ArrayLists for his projects and wants to know when he should LinkedLists instead. Since the question was framed in a clear manner, the answers were just as prompt and clear, with the highest rated answer stating that ArrayLists are always preferable and discussing why it is. This demonstrates how effective a smart question is in gather the desired or needed information. But just as there’s a smart way, there’s always a not-so-smart way, which is the topic of the next segment
Not-so-smart questions are quite frustrating for whoever reads them on account of the lack of clarity on the topic being discussed or some other factor that causes a headache for the answerer. While it is easier to just say ‘help me please’ or some other vaguely worded question when you need help on Stack Overflow, it does not inspire confidence in the reader to be able to answer effectively, to the point where they’ll just say ‘read the book’ or even outright ignore the question. A poignant example of a not-so-smart question is this question about wrapping text without Javascript. The person in question only provided an example text and asked if it can be done in CSS, which left it considerably vague. Consequently, the question has a score of -1 and only two answers were written, both not giving a clear answer to tbe question, which further reinforces how this is a not-so-smart way to ask questions. No doubt, if the person provided clearer examples and a much more fleshed out question, they would’ve received more answers that provided greater clarity.
Many people will tell you that “there is no such thing as a dumb question”. However, there are questions that are vague and hard to parse, and thus, needlessly difficult to answer. Only by asking smart questions can computer engineers, programmers, and other computer professionals get the help they need in a timely and clear fashion without having to crack open the old textbook or scour the web for answers on multiple other sites. Smart questions help seperate the truly interested and the lazy ones.